From ca55e59e6b1185aa83ecf26915e6670957b534dd Mon Sep 17 00:00:00 2001 From: madhuracj Date: Wed, 19 Jan 2011 17:55:41 +0530 Subject: [PATCH] TCPDF upgraded to version 5.9 --- libraries/export/pdf.php | 76 +- libraries/tcpdf/2dbarcodes.php | 172 + libraries/tcpdf/CHANGELOG.TXT | 1891 + libraries/tcpdf/LICENSE.TXT | 1196 +- libraries/tcpdf/README.TXT | 90 + libraries/tcpdf/barcodes.php | 1965 + libraries/tcpdf/cache/chapter_demo_1.txt | 19 + libraries/tcpdf/cache/chapter_demo_2.txt | 23 + libraries/tcpdf/cache/table_data_demo.txt | 15 + libraries/tcpdf/cache/utf8test.txt | 122 + libraries/tcpdf/config/lang/afr.php | 47 + libraries/tcpdf/config/lang/ara.php | 47 + libraries/tcpdf/config/lang/aze.php | 47 + libraries/tcpdf/config/lang/bel.php | 47 + libraries/tcpdf/config/lang/bra.php | 47 + libraries/tcpdf/config/lang/cat.php | 47 + libraries/tcpdf/config/lang/ces.php | 47 + libraries/tcpdf/config/lang/chi.php | 47 + libraries/tcpdf/config/lang/cym.php | 47 + libraries/tcpdf/config/lang/dan.php | 47 + libraries/tcpdf/config/lang/eng.php | 47 + libraries/tcpdf/config/lang/est.php | 47 + libraries/tcpdf/config/lang/eus.php | 47 + libraries/tcpdf/config/lang/fra.php | 47 + libraries/tcpdf/config/lang/ger.php | 47 + libraries/tcpdf/config/lang/gle.php | 47 + libraries/tcpdf/config/lang/glg.php | 47 + libraries/tcpdf/config/lang/hat.php | 47 + libraries/tcpdf/config/lang/heb.php | 47 + libraries/tcpdf/config/lang/hrv.php | 47 + libraries/tcpdf/config/lang/hun.php | 47 + libraries/tcpdf/config/lang/hye.php | 47 + libraries/tcpdf/config/lang/ind.php | 47 + libraries/tcpdf/config/lang/ita.php | 47 + libraries/tcpdf/config/lang/kat.php | 47 + libraries/tcpdf/config/lang/kor.php | 47 + libraries/tcpdf/config/lang/mkd.php | 47 + libraries/tcpdf/config/lang/mlt.php | 47 + libraries/tcpdf/config/lang/msa.php | 47 + libraries/tcpdf/config/lang/nld.php | 47 + libraries/tcpdf/config/lang/nob.php | 47 + libraries/tcpdf/config/lang/pol.php | 47 + libraries/tcpdf/config/lang/por.php | 47 + libraries/tcpdf/config/lang/ron.php | 47 + libraries/tcpdf/config/lang/rus.php | 47 + libraries/tcpdf/config/lang/slv.php | 47 + libraries/tcpdf/config/lang/spa.php | 47 + libraries/tcpdf/config/lang/sqi.php | 47 + libraries/tcpdf/config/lang/srp.php | 47 + libraries/tcpdf/config/lang/swa.php | 47 + libraries/tcpdf/config/lang/swe.php | 47 + libraries/tcpdf/config/lang/urd.php | 47 + libraries/tcpdf/config/lang/yid.php | 47 + libraries/tcpdf/config/lang/zho.php | 47 + libraries/tcpdf/config/tcpdf_config.php | 240 + libraries/tcpdf/config/tcpdf_config_alt.php | 234 + libraries/tcpdf/font/dejavusans-bold.ctg.z | Bin 8509 -> 0 bytes libraries/tcpdf/font/dejavusans-bold.z | Bin 263826 -> 0 bytes libraries/tcpdf/font/dejavusans.ctg.z | Bin 8517 -> 0 bytes libraries/tcpdf/font/dejavusans.php | 291 - libraries/tcpdf/font/dejavusans.z | Bin 279448 -> 0 bytes libraries/tcpdf/font/dejavusansb.php | 291 - libraries/tcpdf/font/dejavuserif-bold.ctg.z | Bin 3756 -> 0 bytes libraries/tcpdf/font/dejavuserif-bold.z | Bin 109155 -> 0 bytes libraries/tcpdf/font/dejavuserif.ctg.z | Bin 3756 -> 0 bytes libraries/tcpdf/font/dejavuserif.php | 134 - libraries/tcpdf/font/dejavuserif.z | Bin 116258 -> 0 bytes libraries/tcpdf/font/dejavuserifb.php | 134 - libraries/tcpdf/fonts/README.TXT | 3 + libraries/tcpdf/fonts/courier.php | 33 + .../tcpdf/fonts/dejavu-fonts-ttf-2.32/AUTHORS | 48 + .../tcpdf/fonts/dejavu-fonts-ttf-2.32/BUGS | 3 + .../dejavu-fonts-ttf-2.32}/LICENSE | 5 +- .../tcpdf/fonts/dejavu-fonts-ttf-2.32/NEWS | 1250 + .../tcpdf/fonts/dejavu-fonts-ttf-2.32/README | 59 + .../fonts/dejavu-fonts-ttf-2.32/langcover.txt | 244 + .../fonts/dejavu-fonts-ttf-2.32/status.txt | 6469 +++ .../fonts/dejavu-fonts-ttf-2.32/unicover.txt | 203 + libraries/tcpdf/fonts/dejavusans.ctg.z | Bin 0 -> 10030 bytes libraries/tcpdf/fonts/dejavusans.php | 531 + libraries/tcpdf/fonts/dejavusans.z | Bin 0 -> 347072 bytes libraries/tcpdf/fonts/dejavusansb.ctg.z | Bin 0 -> 9784 bytes libraries/tcpdf/fonts/dejavusansb.php | 518 + libraries/tcpdf/fonts/dejavusansb.z | Bin 0 -> 318072 bytes libraries/tcpdf/fonts/dejavuserif.ctg.z | Bin 0 -> 5973 bytes libraries/tcpdf/fonts/dejavuserif.php | 323 + libraries/tcpdf/fonts/dejavuserif.z | Bin 0 -> 185864 bytes libraries/tcpdf/fonts/dejavuserifb.ctg.z | Bin 0 -> 5717 bytes libraries/tcpdf/fonts/dejavuserifb.php | 309 + libraries/tcpdf/fonts/dejavuserifb.z | Bin 0 -> 171017 bytes libraries/tcpdf/fonts/helvetica.php | 33 + libraries/tcpdf/fonts/helveticab.php | 33 + libraries/tcpdf/fonts/helveticabi.php | 33 + libraries/tcpdf/fonts/helveticai.php | 33 + libraries/tcpdf/fonts/symbol.php | 32 + libraries/tcpdf/fonts/times.php | 33 + libraries/tcpdf/fonts/timesb.php | 33 + libraries/tcpdf/fonts/timesbi.php | 33 + libraries/tcpdf/fonts/timesi.php | 33 + libraries/tcpdf/fonts/zapfdingbats.php | 32 + libraries/tcpdf/htmlcolors.php | 199 + libraries/tcpdf/images/_blank.png | Bin 0 -> 137 bytes libraries/tcpdf/images/tcpdf_logo.jpg | Bin 0 -> 17633 bytes libraries/tcpdf/pdf417.php | 991 + libraries/tcpdf/qrcode.php | 2866 ++ libraries/tcpdf/spotcolors.php | 57 + libraries/tcpdf/tcpdf.crt | 40 + libraries/tcpdf/tcpdf.fdf | Bin 0 -> 1286 bytes libraries/tcpdf/tcpdf.p12 | Bin 0 -> 1749 bytes libraries/tcpdf/tcpdf.php | 32928 +++++++++++--- libraries/tcpdf/unicode_data.php | 36581 ++++++++-------- 111 files changed, 66563 insertions(+), 26386 deletions(-) create mode 100644 libraries/tcpdf/2dbarcodes.php create mode 100644 libraries/tcpdf/CHANGELOG.TXT create mode 100644 libraries/tcpdf/README.TXT create mode 100644 libraries/tcpdf/barcodes.php create mode 100644 libraries/tcpdf/cache/chapter_demo_1.txt create mode 100644 libraries/tcpdf/cache/chapter_demo_2.txt create mode 100644 libraries/tcpdf/cache/table_data_demo.txt create mode 100644 libraries/tcpdf/cache/utf8test.txt create mode 100644 libraries/tcpdf/config/lang/afr.php create mode 100644 libraries/tcpdf/config/lang/ara.php create mode 100644 libraries/tcpdf/config/lang/aze.php create mode 100644 libraries/tcpdf/config/lang/bel.php create mode 100644 libraries/tcpdf/config/lang/bra.php create mode 100644 libraries/tcpdf/config/lang/cat.php create mode 100644 libraries/tcpdf/config/lang/ces.php create mode 100644 libraries/tcpdf/config/lang/chi.php create mode 100644 libraries/tcpdf/config/lang/cym.php create mode 100644 libraries/tcpdf/config/lang/dan.php create mode 100644 libraries/tcpdf/config/lang/eng.php create mode 100644 libraries/tcpdf/config/lang/est.php create mode 100644 libraries/tcpdf/config/lang/eus.php create mode 100644 libraries/tcpdf/config/lang/fra.php create mode 100644 libraries/tcpdf/config/lang/ger.php create mode 100644 libraries/tcpdf/config/lang/gle.php create mode 100644 libraries/tcpdf/config/lang/glg.php create mode 100644 libraries/tcpdf/config/lang/hat.php create mode 100644 libraries/tcpdf/config/lang/heb.php create mode 100644 libraries/tcpdf/config/lang/hrv.php create mode 100644 libraries/tcpdf/config/lang/hun.php create mode 100644 libraries/tcpdf/config/lang/hye.php create mode 100644 libraries/tcpdf/config/lang/ind.php create mode 100644 libraries/tcpdf/config/lang/ita.php create mode 100644 libraries/tcpdf/config/lang/kat.php create mode 100644 libraries/tcpdf/config/lang/kor.php create mode 100644 libraries/tcpdf/config/lang/mkd.php create mode 100644 libraries/tcpdf/config/lang/mlt.php create mode 100644 libraries/tcpdf/config/lang/msa.php create mode 100644 libraries/tcpdf/config/lang/nld.php create mode 100644 libraries/tcpdf/config/lang/nob.php create mode 100644 libraries/tcpdf/config/lang/pol.php create mode 100644 libraries/tcpdf/config/lang/por.php create mode 100644 libraries/tcpdf/config/lang/ron.php create mode 100644 libraries/tcpdf/config/lang/rus.php create mode 100644 libraries/tcpdf/config/lang/slv.php create mode 100644 libraries/tcpdf/config/lang/spa.php create mode 100644 libraries/tcpdf/config/lang/sqi.php create mode 100644 libraries/tcpdf/config/lang/srp.php create mode 100644 libraries/tcpdf/config/lang/swa.php create mode 100644 libraries/tcpdf/config/lang/swe.php create mode 100644 libraries/tcpdf/config/lang/urd.php create mode 100644 libraries/tcpdf/config/lang/yid.php create mode 100644 libraries/tcpdf/config/lang/zho.php create mode 100644 libraries/tcpdf/config/tcpdf_config.php create mode 100644 libraries/tcpdf/config/tcpdf_config_alt.php delete mode 100644 libraries/tcpdf/font/dejavusans-bold.ctg.z delete mode 100644 libraries/tcpdf/font/dejavusans-bold.z delete mode 100644 libraries/tcpdf/font/dejavusans.ctg.z delete mode 100644 libraries/tcpdf/font/dejavusans.php delete mode 100644 libraries/tcpdf/font/dejavusans.z delete mode 100644 libraries/tcpdf/font/dejavusansb.php delete mode 100644 libraries/tcpdf/font/dejavuserif-bold.ctg.z delete mode 100644 libraries/tcpdf/font/dejavuserif-bold.z delete mode 100644 libraries/tcpdf/font/dejavuserif.ctg.z delete mode 100644 libraries/tcpdf/font/dejavuserif.php delete mode 100644 libraries/tcpdf/font/dejavuserif.z delete mode 100644 libraries/tcpdf/font/dejavuserifb.php create mode 100644 libraries/tcpdf/fonts/README.TXT create mode 100644 libraries/tcpdf/fonts/courier.php create mode 100644 libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/AUTHORS create mode 100644 libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/BUGS rename libraries/tcpdf/{font => fonts/dejavu-fonts-ttf-2.32}/LICENSE (97%) create mode 100644 libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/NEWS create mode 100644 libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/README create mode 100644 libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/langcover.txt create mode 100644 libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/status.txt create mode 100644 libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/unicover.txt create mode 100644 libraries/tcpdf/fonts/dejavusans.ctg.z create mode 100644 libraries/tcpdf/fonts/dejavusans.php create mode 100644 libraries/tcpdf/fonts/dejavusans.z create mode 100644 libraries/tcpdf/fonts/dejavusansb.ctg.z create mode 100644 libraries/tcpdf/fonts/dejavusansb.php create mode 100644 libraries/tcpdf/fonts/dejavusansb.z create mode 100644 libraries/tcpdf/fonts/dejavuserif.ctg.z create mode 100644 libraries/tcpdf/fonts/dejavuserif.php create mode 100644 libraries/tcpdf/fonts/dejavuserif.z create mode 100644 libraries/tcpdf/fonts/dejavuserifb.ctg.z create mode 100644 libraries/tcpdf/fonts/dejavuserifb.php create mode 100644 libraries/tcpdf/fonts/dejavuserifb.z create mode 100644 libraries/tcpdf/fonts/helvetica.php create mode 100644 libraries/tcpdf/fonts/helveticab.php create mode 100644 libraries/tcpdf/fonts/helveticabi.php create mode 100644 libraries/tcpdf/fonts/helveticai.php create mode 100644 libraries/tcpdf/fonts/symbol.php create mode 100644 libraries/tcpdf/fonts/times.php create mode 100644 libraries/tcpdf/fonts/timesb.php create mode 100644 libraries/tcpdf/fonts/timesbi.php create mode 100644 libraries/tcpdf/fonts/timesi.php create mode 100644 libraries/tcpdf/fonts/zapfdingbats.php create mode 100644 libraries/tcpdf/htmlcolors.php create mode 100644 libraries/tcpdf/images/_blank.png create mode 100644 libraries/tcpdf/images/tcpdf_logo.jpg create mode 100644 libraries/tcpdf/pdf417.php create mode 100644 libraries/tcpdf/qrcode.php create mode 100644 libraries/tcpdf/spotcolors.php create mode 100644 libraries/tcpdf/tcpdf.crt create mode 100644 libraries/tcpdf/tcpdf.fdf create mode 100644 libraries/tcpdf/tcpdf.p12 diff --git a/libraries/export/pdf.php b/libraries/export/pdf.php index 10b4ea479..59fd8f43e 100644 --- a/libraries/export/pdf.php +++ b/libraries/export/pdf.php @@ -47,45 +47,39 @@ class PMA_PDF extends TCPDF var $headerset; var $footerset; - // overloading of a tcpdf function: - function _beginpage($orientation) - { - $this->page++; - // solved the problem of overwriting a page, if it already exists - if (!isset($this->pages[$this->page])) { - $this->pages[$this->page] = ''; + function checkPageBreak($h=0, $y='', $addpage=true) { + if ($this->empty_string($y)) { + $y = $this->y; } - $this->state = 2; - $this->x = $this->lMargin; - $this->y = $this->tMargin; - $this->lasth = 0; - $this->FontFamily = ''; - - //Page orientation - if (!$orientation) { - $orientation = $this->DefOrientation; - } else { - $orientation = strtoupper($orientation{0}); - if ($orientation != $this->DefOrientation) { - $this->OrientationChanges[$this->page] = true; + $current_page = $this->page; + if ((($y + $h) > $this->PageBreakTrigger) AND (!$this->InFooter) AND ($this->AcceptPageBreak())) { + if ($addpage) { + //Automatic page break + $x = $this->x; + $this->AddPage($this->CurOrientation); + $this->y = $this->dataY; + $oldpage = $this->page - 1; + if ($this->rtl) { + if ($this->pagedim[$this->page]['orm'] != $this->pagedim[$oldpage]['orm']) { + $this->x = $x - ($this->pagedim[$this->page]['orm'] - $this->pagedim[$oldpage]['orm']); + } else { + $this->x = $x; + } + } else { + if ($this->pagedim[$this->page]['olm'] != $this->pagedim[$oldpage]['olm']) { + $this->x = $x + ($this->pagedim[$this->page]['olm'] - $this->pagedim[$oldpage]['olm']); + } else { + $this->x = $x; + } + } } + return true; } - if ($orientation != $this->CurOrientation) { - //Change orientation - if ($orientation == 'P') { - $this->wPt = $this->fwPt; - $this->hPt = $this->fhPt; - $this->w = $this->fw; - $this->h = $this->fh; - } else { - $this->wPt = $this->fhPt; - $this->hPt = $this->fwPt; - $this->w = $this->fh; - $this->h = $this->fw; - } - $this->PageBreakTrigger = $this->h - $this->bMargin; - $this->CurOrientation = $orientation; + if ($current_page != $this->page) { + // account for columns mode + return true; } + return false; } function Header() @@ -125,18 +119,18 @@ class PMA_PDF extends TCPDF $this->headerset[$this->page] = 1; } - $this->SetY($maxY); + $this->dataY = $maxY; } function Footer() { - // Check if footer for this page already exists + // Check if footer for this page already exists if (!isset($this->footerset[$this->page])) { $this->SetY(-15); //Page number $this->Cell(0, 10, __('Page number:') .' '.$this->PageNo() .'/{nb}', 'T', 0, 'C'); - // set footerset + // set footerset $this->footerset[$this->page] = 1; } } @@ -145,7 +139,7 @@ class PMA_PDF extends TCPDF { // some things to set and 'remember' $l = $this->lMargin; - $startheight = $h = $this->GetY(); + $startheight = $h = $this->dataY; $startpage = $currpage = $this->page; // calculate the whole width @@ -448,9 +442,9 @@ function PMA_exportData($db, $table, $crlf, $error_url, $sql_query) $pdf = new PMA_PDF('L', 'pt', 'A3'); $pdf->AddFont('DejaVuSans', '', 'dejavusans.php'); - $pdf->AddFont('DejaVuSans', 'B', 'dejavusans-bold.php'); + $pdf->AddFont('DejaVuSans', 'B', 'dejavusansb.php'); $pdf->AddFont('DejaVuSerif', '', 'dejavuserif.php'); - $pdf->AddFont('DejaVuSerif', 'B', 'dejavuserif-bold.php'); + $pdf->AddFont('DejaVuSerif', 'B', 'dejavuserifb.php'); $pdf->SetFont(PMA_PDF_FONT, '', 11.5); $pdf->AliasNbPages(); $attr=array('titleFontSize' => 18, 'titleText' => $pdf_report_title); diff --git a/libraries/tcpdf/2dbarcodes.php b/libraries/tcpdf/2dbarcodes.php new file mode 100644 index 000000000..270f2a8ba --- /dev/null +++ b/libraries/tcpdf/2dbarcodes.php @@ -0,0 +1,172 @@ +. +// +// See LICENSE.TXT file for more information. +// ------------------------------------------------------------------- +// +// Description : PHP class to creates array representations for +// 2D barcodes to be used with TCPDF. +// +//============================================================+ + +/** + * @file + * PHP class to creates array representations for 2D barcodes to be used with TCPDF. + * @package com.tecnick.tcpdf + * @author Nicola Asuni + * @version 1.0.007 + */ + +/** + * @class TCPDF2DBarcode + * PHP class to creates array representations for 2D barcodes to be used with TCPDF (http://www.tcpdf.org). + * @package com.tecnick.tcpdf + * @version 1.0.007 + * @author Nicola Asuni + */ +class TCPDF2DBarcode { + + /** + * Array representation of barcode. + * @protected + */ + protected $barcode_array = false; + + /** + * This is the class constructor. + * Return an array representations for 2D barcodes: + * @param $code (string) code to print + * @param $type (string) type of barcode: + */ + public function __construct($code, $type) { + $this->setBarcode($code, $type); + } + + /** + * Return an array representations of barcode. + * @return array + */ + public function getBarcodeArray() { + return $this->barcode_array; + } + + /** + * Set the barcode. + * @param $code (string) code to print + * @param $type (string) type of barcode: + * @return array + */ + public function setBarcode($code, $type) { + $mode = explode(',', $type); + $qrtype = strtoupper($mode[0]); + switch ($qrtype) { + case 'QRCODE': { // QR-CODE + require_once(dirname(__FILE__).'/qrcode.php'); + if (!isset($mode[1]) OR (!in_array($mode[1],array('L','M','Q','H')))) { + $mode[1] = 'L'; // Ddefault: Low error correction + } + $qrcode = new QRcode($code, strtoupper($mode[1])); + $this->barcode_array = $qrcode->getBarcodeArray(); + break; + } + case 'PDF417': { // PDF417 (ISO/IEC 15438:2006) + require_once(dirname(__FILE__).'/pdf417.php'); + if (!isset($mode[1]) OR ($mode[1] === '')) { + $aspectratio = 2; // default aspect ratio (width / height) + } else { + $aspectratio = floatval($mode[1]); + } + if (!isset($mode[2]) OR ($mode[2] === '')) { + $ecl = -1; // default error correction level (auto) + } else { + $ecl = intval($mode[2]); + } + // set macro block + $macro = array(); + if (isset($mode[3]) AND ($mode[3] !== '') AND isset($mode[4]) AND ($mode[4] !== '') AND isset($mode[5]) AND ($mode[5] !== '')) { + $macro['segment_total'] = intval($mode[3]); + $macro['segment_index'] = intval($mode[4]); + $macro['file_id'] = strtr($mode[5], "\xff", ','); + for ($i = 0; $i < 7; ++$i) { + $o = $i + 6; + if (isset($mode[$o]) AND ($mode[$o] !== '')) { + // add option + $macro['option_'.$i] = strtr($mode[$o], "\xff", ','); + } + } + } + $qrcode = new PDF417($code, $ecl, $aspectratio, $macro); + $this->barcode_array = $qrcode->getBarcodeArray(); + break; + } + case 'RAW': + case 'RAW2': { // RAW MODE + // remove spaces + $code = preg_replace('/[\s]*/si', '', $code); + if (strlen($code) < 3) { + break; + } + if ($qrtype == 'RAW') { + // comma-separated rows + $rows = explode(',', $code); + } else { // RAW2 + // rows enclosed in square parentheses + $code = substr($code, 1, -1); + $rows = explode('][', $code); + } + $this->barcode_array['num_rows'] = count($rows); + $this->barcode_array['num_cols'] = strlen($rows[0]); + $this->barcode_array['bcode'] = array(); + foreach ($rows as $r) { + $this->barcode_array['bcode'][] = str_split($r, 1); + } + break; + } + case 'TEST': { // TEST MODE + $this->barcode_array['num_rows'] = 5; + $this->barcode_array['num_cols'] = 15; + $this->barcode_array['bcode'] = array( + array(1,1,1,0,1,1,1,0,1,1,1,0,1,1,1), + array(0,1,0,0,1,0,0,0,1,0,0,0,0,1,0), + array(0,1,0,0,1,1,0,0,1,1,1,0,0,1,0), + array(0,1,0,0,1,0,0,0,0,0,1,0,0,1,0), + array(0,1,0,0,1,1,1,0,1,1,1,0,0,1,0)); + break; + } + default: { + $this->barcode_array = false; + } + } + } +} // end of class + +//============================================================+ +// END OF FILE +//============================================================+ diff --git a/libraries/tcpdf/CHANGELOG.TXT b/libraries/tcpdf/CHANGELOG.TXT new file mode 100644 index 000000000..eea7285ff --- /dev/null +++ b/libraries/tcpdf/CHANGELOG.TXT @@ -0,0 +1,1891 @@ +5.9.039 (2011-01-12) + - Bug item #3155759 "openssl_random_pseudo_bytes() slow under Windows" was fixed. + +5.9.038 (2011-01-11) + - Minor bugs were fixed. + +5.9.037 (2011-01-09) + - An alignment problem for HTML texts was fixed. + +5.9.036 (2011-01-07) + - A bug related to HTML tables on header was fixed. + +5.9.035 (2011-01-03) + - A problem related to HTML table border alignment was fixed. + - Bug #2996366 "FastCGI and Header Problems" was fixed. + +5.9.034 (2010-12-19) + - DejaVu and GNU Free fonts were updated. + +5.9.033 (2010-12-18) + - Source code documetnation was improved. + +5.9.032 (2010-12-18) + - Default font stretching and spacing values are now inherited by HTML methods. + +5.9.031 (2010-12-16) + - Source code documentation errors were fixed. + +5.9.030 (2010-12-16) + - Several source code documentation errors were fixed. + - Source code style was changed for Doxygen. + - Source code documentation was moved online to http://www.tcpdf.org + +5.9.029 (2010-12-04) + - The $fitbox parameter on Image() method was extended to specify image alignment inside the box (check the example n. 9). + +5.9.028 (2010-12-03) + - Font utils makefont.php and makeallttffonts.php were updated. + +5.9.027 (2010-12-01) + - Spot Colors are now better integrated with HTML mode. + - Method SetDocInfoUnicode() was added to turn on/off Unicode mode for document information dictionary (meta tags) - check the example n. 19. + +5.9.026 (2010-12-01) + - A problem with mixed text directions on HTML was fixed. + +5.9.025 (2010-12-01) + - The AddSpotColor() now automatically fills the spotcolor array (defined on spotcolors.php file). + +5.9.024 (2010-11-30) + - Bug item #3123612 "SVG not use gradientTransform in percentage mode" was fixed. + +5.9.023 (2010-11-25) + - A potential bug on SVG transcoder was fixed. + +5.9.022 (2010-11-21) + - Method ImageEPS includes support for EPS/AI Spot colors. + - Method ImageEPS includes a new parameter $fixoutvals to remove values outside the bounding box. + +5.9.021 (2010-11-20) + - Support for custom bullet points images was added (check the example n.6) + - Examples n. 6 and 61 were update (check the comments inside). + +5.9.020 (2010-11-19) + - A problem related to additional page when using multicolumn mode was fixed. + +5.9.019 (2010-11-19) + - An SVG bug was fixed. + - ImageSVG() and ImageEPS() methods now accepts image data streams (put the string on the $file parameter preceded by '@' character). + - Option 'E' was added to the $dest parameter of Output() method to return the document as base64 mime multi-part email attachment (RFC 2045). + +5.9.018 (2010-11-19) + - An SVG bug was fixed. + +5.9.017 (2010-11-16) + - Tagline color was set to transparent. + - The method fixHTMLCode() was added to automatically clean up HTML code (requires HTML Tidy). + +5.9.016 (2010-11-16) + - Bug item #3109705 "list item page break hanging bullet" was fixed. + +5.9.015 (2010-11-16) + - Bug item affecting QRCode was fixed. + - Some bugs affecting HTML lists were fixed. + - ImageSVG() and fitBlock() methods were improved to handle some SVG problems. + - Some problems with PHP4 compatibility were fixed. + +5.9.014 (2010-11-15) + - Bug item #3109464 "QRCode error" was fixed. + +5.9.013 (2010-11-15) + - Bug item #3109257 "Problem with interlaced GIFs and PNGs" was fixed. + - Image function now accepts image data streams (check example n. 9). + +5.9.012 (2010-11-12) + - Method getTCPDFVersion() was added. + - PDF_PRODUCER constant was removed. + - Method convertHTMLColorToDec() was improved. + - HTML colors now support spot color names defined on the new spotcolors.php file. + - The default method Header() was improved to support SVG and EPS/AI images. + - A bug on SVG importer was fixed. + +5.9.011 (2010-11-02) + - Bug item #3101486 "Bug Fix for image loading" was fixed. + +5.9.010 (2010-10-27) + - Support for CSS properties 'border-spacing' and 'padding' for tables were added. + - Several language files were added. + +5.9.009 (2010-10-21) + - HTML text alignment was improved to include the case of RTL text on LTR direction and LTR text on RTL direction. + +5.9.008 (2010-10-21) + - Bug item #3091502 "Bookmark oddity" was fixed. + - HTML internal links now accepts page number and Y position. + - The method write1DBarcode() was improved to accept separate horizontal and vertical padding (see example n. 27). + +5.9.007 (2010-10-20) + - Method adjustCellPadding() was fixed to handle bad input. + +5.9.006 (2010-10-19) + - Support for AES 256 bit encryption was added (see example n. 16). + - Method getNumLines() was fixed for the empty string case. + +5.9.005 (2010-10-18) + - Method addPageRegion() was changed to accept regions starting exactly from the top of the page. + +5.9.004 (2010-10-18) + - A bug related to annotations was fixed. + - The file unicode_data.php was canged to encapsulate all data in a class. + - The file htmlcolors.php was changed to remove the global variable. + +5.9.003 (2010-10-15) + - Support for no-write page regions was added. Check the example n. 64 and new methods setPageRegions(), addPageRegion(), getPageRegions(), removePageRegion(). + - A bug on Right-To-Left alignment was fixed. + +5.9.002 (2010-10-08) + - Cell method was improved to preserve the font stretching and spacing values when using the $stretch parameter (see example n. 4). + +5.9.001 (2010-10-07) + - The problem of blank page for nobr table higher than a single page was fixed. + +5.9.000 (2010-10-06) + - Support for text stretching and spacing (kerning) was added, see example n. 63 and methods setFontStretching(), getFontStretching(), setFontSpacing(), getFontSpacing(). + - Support for CSS properties 'font-stretch' and 'letter-spacing' was added (see example n. 63). + - The cMargin state was replaced by cell_padding array that can be set/get using setCellPadding() and getCellPadding() methods. + - Methods getCellPaddings() and setCellPaddings() were added to fine tune cell paddings (see example n. 5). + - Methods getCellMargins() and setCellMargins() were added to fine tune cell margins (see example n. 5). + - Method write1DBarcode() was improved to permit custom labels (see example n. 27). + - Method ImagePngAlpha() now includes support for ImageMagick to improve performances. + - XObject Template support was extended to support Multicell(), writeHTML() and writeHTMLCell() methods. + - The signature of getNumLines() and getStringHeight() methods is changed. + - Example n. 57 was updated. + +// ------------------------------------------------------------------- + +5.8.034 (2010-09-27) + - A bug related to SetFont on XObject templates was fixed. + +5.8.033 (2010-09-25) + - A problem with Footer() and multiple columns was fixed. + +5.8.032 (2010-09-22) + - Bug #3073165 "Issues with changes to addHTMLVertSpace()" was fixed. + +5.8.031 (2010-09-20) + - Bug #3071961 "Spaces in HTML" was fixed. + +5.8.030 (2010-09-17) + - SVG support was improved and some bugs were fixed. + +5.8.029 (2010-09-16) + - A problem with HTML borders was fixed. + +5.8.028 (2010-09-13) + - Bug #3065224 "mcrypt_create_iv error on TCPDF 5.8.027 on PHP 5.3.2" was fixed. + +5.8.027 (2010-09-13) + - Bug #3065118 "mcrypt_decrypt error on TCPDF 5.8.026 on PHP 5.3.2" was fixed. + +5.8.026 (2010-09-13) + - A bug on addHTMLTOC() method was fixed. Note: be sure that the #TOC_PAGE_NUMBER# template has enough width to be printed correctly. + +5.8.025 (2010-09-09) + - Bug #3062692 "Textarea inside a table" was fixed. + +5.8.024 (2010-09-08) + - Bug #3062005 "Undefined variable: ann_obj_id" was fixed. + +5.8.023 (2010-08-31) + - Forms bug added on version 5.8.019 was fixed. + +5.8.022 (2010-08-31) + - Bug #3056632 "SVG rendered vertically flipped" was fixed. + +5.8.021 (2010-08-30) + - A new CID-0 'chinese' font was added for traditional Chinese. + - Bug #3054287 'Inner tags are ignored due to "align" attribute' was fixed. + +5.8.020 (2010-08-26) + - CSS "catch-all" class selector is now supported. + +5.8.019 (2010-08-26) + - XObject Templates now includes support for links and annotations. + - A problem related to link alignment on cell was fixed. + - A problem related to SVG styles was fixed. + +5.8.018 (2010-08-25) + - Method getNumberOfColumns() was added. + - A problem related to table header was fixed. + - Method getSVGTransformMatrix() was fixed to apply SVG transformations in the correct order. + - SVG support was improved and several bugs were fixed. + +5.8.017 (2010-08-25) + - This version includes support for XObject Templates (see the new example n. 62). + - Methods starttemplate(), endTemplate() and printTemplate() were added (see the new example n. 62). + +5.8.016 (2010-08-24) + - Alignment problem on write2DBarcode was fixed. + +5.8.015 (2010-08-24) + - A problem arised with the latest bugfix was fixed. + +5.8.014 (2010-08-23) + - Method _getxobjectdict() was added for better compatibility with external extensions. + - A bug related to radiobuttons was fixed. + - Bug #3051509 "new line after punctuation marks" was fixed (partially). + +5.8.013 (2010-08-23) + - SVG support for 'direction' property was added. + - A problem on default width calculation for linear barcodes was fixed. + - New option was added to write1DBarcode() method to improve alignments (see example n. 27). + - Bug #3050896 "Nested HTML tables: styles are not applied" was fixed. + - Method _putresourcedict() was improved to include external XObject templates. + +5.8.012 (2010-08-22) + - Support for SVG 'text-anchor' property was added. + +5.8.011 (2010-08-21) + - Method write1DBarcode() was improved to be backward compatible (check the new example n. 27). + - Support for CSS width and height properties on images were added. + +5.8.010 (2010-08-20) + - Documentation of unhtmlentities() was fixed. + - The 'fitwidth' option was added and border color problem was fixed on write1DBarcode() method (check the example n. 27). + +5.8.009 (2010-08-20) + - Internal object numbering was improved. + - Some errors in object encryption were fixed. + +5.8.008 (2010-08-19) + - Method write1DBarcode() was changed, check the example n. 27. + - Method Footer() was changed to account for barcode changes. + - Automatic calculation of K_PATH_URL constant was fixed on configuration file. + - Method setEqualColumns() was fixed for $width=0 case. + - Method AddTOC() was fixed for multipage and multicolumn modes. + - Better support for SVG "font-family" property. + - A problem on default Page Zoom mode was fixed. + - Several Annotation bugs were fixed. + +5.8.007 (2010-08-18) + - A bug affecting HTML tables was fixed. + - Bug #3047500 "SVG not rendering paths properly" was fixed. + +5.8.006 (2010-08-17) + - A bug affecting HTML table nesting was fixed. + +5.8.005 (2010-08-17) + - A bug affecting the HTML 'select' tag in certain conditions was fixed. + +5.8.004 (2010-08-17) + - Better support for HTML "font-family" property. + - A bug related to HTML multicolumn was fixed. + +5.8.003 (2010-08-16) + - Better support for HTML "font-family" property. + +5.8.002 (2010-08-14) + - HTML alignments were improved + - IMPORTANT: Default regular expression to find spaces has been changed to exclude the non-breaking-space (160 DEC- A0 HEX). If you are using setSpacesRE() method, please read the new documentation. + - Example n. 1 was updated. + +5.8.001 (2010-08-12) + - Bug #3043650 "subsetchars incorrectly cached" was fixed. + +5.8.000 (2010-08-11) + - A control to avoid bookmarking page 0 was added. + - addTOC() method now includes support for multicolumn mode. + - Support for tables in multicolumn mode was improved. + - Example n.10 was updated. + - All trimming functions were replaced with stringLeftTrim(), stringRightTrim() and stringTrim(). + - HTML alignments were improved. + +------------------------------------------------------------ + +5.7.003 (2010-08-08) + - Bug #3041263 "php source ending is bad" was fixed (all PHP files were updated, including fonts). + +5.7.002 (2010-08-06) + - Methods copyPage(), movePage() and deletePage() were changed to account for internal markings. + +5.7.001 (2010-08-05) + - Bug #3040105 "Broken PDF when using TOC (example 45)" was fixed. + +5.7.000 (2010-08-03) + - CSS borders are now supported for HTML tables and other block tags (see example n. 61); + - Cell borders were improved (see example n. 57); + - Minor bugs were fixed. + +------------------------------------------------------------ + +5.6.000 (2010-07-31) + - A bug with object IDs was fixes. + - Performances were improved. + +------------------------------------------------------------ + +5.5.015 (2010-07-29) + - Automatic fix for unclosed self-closing tag. + - Support for deprecated 's' and 'strike' tags was added. + - Empty list items problem was fixed. + +5.5.014 (2010-07-15) + - Support for external images was improved. + +5.5.013 (2010-07-14) + - Bug #3029338 "FI and FO output destination filename bug" was fixed (previous fix was wrong). + +5.5.012 (2010-07-14) + - Bug #3029310 "Font baseline inconsistencies with line-height and font-size" was fixed. + - Bug #3029338 "FI and FO output destination filename bug" was fixed. + +5.5.011 (2010-07-09) + - Support for multiple CSS classes was added. + - The method getColumn() was added to return the current column number. + - Some regular Expressions were fixed to be more compatible with UTF-8. + +5.5.010 (2010-07-06) + - Bug item #3025772 "Borders in all image functions are still flawed" was fixed. + +5.5.009 (2010-07-05) + - A problem related to last page footer was fixed. + - Image alignments and fit-on-page features were improved. + +5.5.008 (2010-07-02) + - A problem on table header alignment in booklet mode was fixed. + - Default graphic vars are now applied for setHeader(); + +5.5.007 (2010-07-02) + - Attribute "readonly" was added to input and textarea form fields. + - Vertical alignment feature was added on MultiCell() method only for simple text mode (see example n. 5). + - Text-Fit feature was added on MultiCell() method only for simple text mode (see example n. 5). + +5.5.006 (2010-06-29) + - getStringHeight() and getNumLines() methods were fixed. + +5.5.005 (2010-06-28) + - Bug #3022170 "getFontDescent() does not return correct descent value" was fixed. + - Some problems with multicolumn mode were fixed. + +5.5.004 (2010-06-27) + - Bug #3021803 "SVG Border" was fixed. + +5.5.003 (2010-06-26) + - On Write() method, blank lines at the beginning of a page or column are now automatically removed. + +5.5.002 (2010-06-24) + - ToUnicode Identity-H name was replaced with a full CMap (to avoid preflight syntax error). + - Bug #3020638 "str_split() not available in php4" was fixed. + - Bug #3020665 "file_get_contents() too many parameters for php4" was fixed. + +5.5.001 (2010-06-23) + - A problem on image streams was fixed. + +5.5.000 (2010-06-22) + - Several PDF syntax errors (and related bugs) were fixed. + - Bug #3019090 "/Length values are wrong if AES encryption is used" was fixed. + +------------------------------------------------------------ + +5.4.003 (2010-06-19) + - A problem related to page boxes was fixed. + - Bug #3016920 "Font subsetting issues when editing pdf" was partially fixed (Note that flattening transparency layers is currently incompatible with TrueTypeUnicode fonts). + +5.4.002 (2010-06-18) + - A problem related with setProtection() method was fixed. + +5.4.001 (2010-06-18) + - A problem related with setProtection() method was fixed. + +5.4.000 (2010-06-18) + - The method setSignatureAppearance() was added, check the example n. 52. + - Several problems related to font subsetting were fixed. + +------------------------------------------------------------ + +5.3.010 (2010-06-15) + - Previous release was corrupted. + +5.3.009 (2010-06-15) + - Bug #3015934 "Bullets don't display correctly" was fixed. + +5.3.008 (2010-06-13) + - This version fixes some problems of SVG rasterization. + +5.3.007 (2010-06-13) + - This version improves SVG support. + +5.3.006 (2010-06-10) + - This version includes a change in uniqid calls for backward compatibility with PHP4. + +5.3.005 (2010-06-09) + - The method getPageSizeFromFormat() was changed to include all standard page formats (includes 281 page formats + variation). + +5.3.004 (2010-06-08) + - Bug #3013291 "HTML table cell width" was fixed. + - Bug #3013294 "HTML table cell alignment" was fixed. + - The columns widths of HTML tables are now inherited from the first row. + +5.3.003 (2010-06-08) + - Bug #3013102 "HTML table header misaligned after page break" was fixed. + +5.3.002 (2010-06-07) + - The methods setFontSubsetting() and setFontSubsetting() were added to control the default font subsetting mode (see example n. 1). + - Bug #3012596 "Whitespace should not appeared after use Thai top characters" was fixed. + - Examples n. 1, 14, and 54 were updated. + +5.3.001 (2010-06-06) + - Barcode PDF417 was improved to support Macro Code Blocks (see example n. 50). + +5.3.000 (2010-06-05) + - License was changed to GNU-LGPLv3 (see the updated LICENSE.TXT file). + - PDF417 barcode support was added (check the example n. 50). + - The method write2DBarcode() was improved (some parameters were added and other changed - check example n. 50). + +------------------------------------------------------------ + +5.2.000 (2010-06-02) + - IMPORTANT: Support for font subsetting was added by default to reduce the size of documents using large unicode font files. + If you embed the whole font in the PDF, the person on the other end can make changes to it even if he didn't have your font. + If you subset the font, file size of the PDF will be smaller but the person who receives your PDF would need to have your same font in order to make changes to your PDF. + - The signature of the SetFont() and AddFont() methods were changed to include the font subsetting option (subsetting is applied by default). + - Examples 14 and 54 were updated. + +------------------------------------------------------------ + +5.1.002 (2010-05-27) + - Bug #3007818 "SetAutoPageBreak fails with MultiCell" was fixed. + - A bug related to MultiCell() minimun height was fixed. + +5.1.001 (2010-05-26) + - The problem of blank page after table was fixed. + +5.1.000 (2010-05-25) + - This version includes support for CSS (Cascading Style Sheets) (see example n. 61). + - The convertHTMLColorToDec() method was improved. + +------------------------------------------------------------ + +5.0.014 (2010-05-21) + - A problem on color and style of HTML links was fixed. + - A bug relative to gradients was fixed. + - The getStringHeight() method was added and getNumLines() method was improved. + - All examples were updated. + +5.0.013 (2010-05-19) + - A bug related to page-breaks and table cells was fixed. + +5.0.012 (2010-05-19) + - Page orientation bug was fixed. + - The access to method setPageFormat() was changed to 'protected' because it is not intended to be directly called. + +5.0.011 (2010-05-19) + - Page orientation bug was fixed. + - Bug #3003966 "Multiple columns and nested lists" was fixed. + +5.0.010 (2010-05-17) + - The methods setPageFormat(), setPageOrientation() and related methods were extended to include page boxes, page rotations and page transitions. + - The method setPageBoxes() was added to set page boundaries (MediaBox, CropBox, BleedBox, TrimBox, ArtBox); + - A bug relative to underline, overline and linethrough was fixed. + +5.0.009 (2010-05-16) + - Bug #3002381 "Multiple columns and nested lists" was fixed. + +5.0.008 (2010-05-15) + - Bug "Columns WriteHTML and Justification" was fixed. + +5.0.007 (2010-05-14) + - Bug #3001347 "Bug when using WriteHTML with setEqualColumns()" was fixed. + - Bug #3001505 "problem with sup and sub tags at the beginning of a line" was fixed. + +5.0.006 (2010-05-13) + - Length of hr tag was fixed. + - An error on 2d barcode method was fixed. + +5.0.005 (2010-05-12) + - WARNING: The logic of permissions on the SetProtection() method has been inverted and extended (see example 16). Now you have to specify the features you want to block. + - SetProtection() method was extended to support RSA and AES 128 encryption and public-keys (see example 16). + - Bug #2999489 "setEqualColumns() and TOC uses wrong columns" was fixed (see the example 10). + +5.0.004 (2010-05-10) + - HTML line alignment when using sub and sup tags was fixed. + +5.0.003 (2010-05-07) + - Horizontal alignment was fixed for images and barcodes. Now the X coordinate is always relative to the left margin. Use GetAbsX() instead of GetX() to get the X relative to left margin. + - Header() method was changed to account for new image alignment rules. + +5.0.002 (2010-05-06) + - Bookmark() and related methods were fixed to accept HTML code. + - A problem on HTML links was fixed. + +5.0.001 (2010-05-06) + - Protected method _putstream was re-added for backward compatibility. + - The following method were added to display HTML Table Of Content (see example n. 59): + addTOCPage(), endTOCPage(), addHTMLTOC(). + +5.0.000 (2010-05-05) + - Method ImageSVG() was added to embedd SVG images (see example n. 58). Note that not all SVG images are supported. + - Method setRasterizeVectorImages() was added to enable/disable rasterization for vector images via ImageMagick library. + - Method RoundedRectXY() was added. + - Method PieSectorXY() was added. + - Gradient() method is now public and support new features. + - Shading to transparency is now supported. + - Image alignments were fixed. + - Support for dynamic images were improved. + - PDF_IMAGE_SCALE_RATIO has been changed to 1.25 for better compatibility with SVG. + - RAW and RAW2 modes were added to 2D Barcodes (see example n. 50). + - Automatic padding feature was added on barcodes (see examples n. 27 and 50). + - Bug #2995003 "Reproduced thead bug" was fixed. + - The Output() method now accepts FI and FD destinations to save the document on server before sending it to the client. + - Ellipse() method was improved and fixed (see page 2 of example n. 12). + +------------------------------------------------------------ + +4.9.018 (2010-04-21) + - Bug item #2990356 "Current font size not respected with more than two HTML

" was fixed. + +4.9.017 (2010-04-21) + - Bug item #2990224 "Different behaviour for equivalent HTML strings" was fixed. + - Bug item #2990314 "Dash is not appearing with SHY character" was fixed. + +4.9.016 (2010-04-20) + - An error on htmlcolors.php was fixed. + - getImageFileType() method was improved. + - GIF images with transparency are now better supported. + - Automatic page orientation was improved. + +4.9.015 (2010-04-20) + - A new method copyPage() was added to clone pages (see example n. 44). + - Support for text overline was added. + - Underline and linethrough methods were fixed. + - Bug #2989058 "SHY character causes unnecessary word-wrapping" was fixed. + +4.9.014 (2010-04-18) + - Bug item #2988845 was fixed. + +4.9.013 (2010-04-15) + - Image() and ImageEPS() methods were fixed and improved; $fitonpage parameter was added. + +4.9.012 (2010-04-12) + - The hyphenateText() method was added to automatically hyphenate text (see example n. 46). + +4.9.011 (2010-04-07) + - Vertical alignments for Cell() method were improved (see example n. 57). + +4.9.010 (2010-04-06) + - Signature of Cell() method now includes new parameters for vertical alignment (see example n. 57). + - Text() method was extended to include all Cell() parameters. + - HTML line alignment procedure was changed to fix some bugs. + +4.9.009 (2010-04-05) + - Text() method was fixed for backward compatibility. + +4.9.008 (2010-04-03) + - Additional line space after table header was removed. + - Support for HTML lists in multicolumn mode was added. + - The method setTextRenderingMode() was added to set text rendering modes (see the example n. 26). + - The following HTML attributes were added to set text rendering modes (see the example n. 26): stroke, strokecolor, fill. + +4.9.007 (2010-04-03) + - Font Descent computation was fixed (patch #2981441). + +4.9.006 (2010-04-02) + - The constant K_TCPDF_CALLS_IN_HTML was added on configuration file to enable/disable the ability to call TCPDF methods in HTML. + - The usage of tcpdf tag in HTML mode was changed to remove the possible security flaw offered by the eval() function (thanks to Matthias Hecker for spotting this security problem). See the new example n. 49 for further information. + +4.9.005 (2010-04-01) + - Bug# 2980354 "Wrong File attachment description with security" was fixed. + - Several problems with HTML line alignment were fixed. + - The constant K_THAI_TOPCHAR was added on configuration file to enable/disable the special procedure used to avoid the overlappind of symbols on Thai language. + - A problem with font name directory was fixed. + - A bug on _destroy() method was fixed. + +4.9.004 (2010-03-31) + - Patch #979681 "GetCharWidth - default character width" was applied (bugfix). + +4.9.003 (2010-03-30) + - Problem of first
on multiple columns was fixed. + - HTML line alignment was fixed. + - A QR-code bug was fixed. + +4.9.002 (2010-03-29) + - Patch #2978349 "$ignore_min_height is ignored in function Cell()" was applied. + - Bug #2978607 "2D Barcodes are wrong" was fixed. + - A problem with HTML block tags was fixed. + - Artificial italic for CID-0 fonts was added. + - Several multicolumn bugs were fixed. + - Support for HTML tables on multicolumn was added. + +4.9.001 (2010-03-28) + - QR Code minor bug was fixed. + - Multicolumn mode was added (see the new example n. 10). + - The following methods were added: setEqualColumns(), setColumnsArray(), selectColumn(). + - Thai diacritics support were changed (note that this is incompatible with html justification). + +4.9.000 (2010-03-27) + - QR Code (2D barcode) support was added (see example n. 50). + - The following methods were added to print crop and registration marks (see example n. 56): colorRegistrationBar(), cropMark(), registrationMark(). + - Limited support for CSS line-height property was added. + - Gradient method now supports Gray, RGB and CMYK space color. + - Example n. 51 was updated. + - Vertical alignment of font inside cell was fixed. + - Support for multiple Thai diacritics was added. + - Bug item #2974929 "Duplicate case values" was fixed. + - Bug item #2976729 "File attachment not working with security" was fixed. + +------------------------------------------------------------ + +4.8.039 (2010-03-20) + - Problems related to custom locale settings were fixed. + - Problems related to HTML on Header and Footer were fixed. + +4.8.038 (2010-03-13) + - Various bugs related to page-break in HTML mode were fixed. + - Bug item #2968974 "Another pagebreak problem" was fixed. + - Bug item #2969276 "justification problem" was fixed. + - Bug item #2969289 "bug when using justified text and custom headers" was fixed. + - Images are now automatically resized to be contained on the page. + - Some HTML line alignments were fixed. + - Signature of AddPage() and SetMargins() methods were changed to include an option to set default page margins. + +4.8.037 (2010-03-03) + - Bug item #2962068 was fixed. + - Bug item #2967017 "Problems with and pagebreaks" was fixed. + - Bug item #2967023 "table header lost with pagebreak" was fixed. + - Bug item #2967032 "Header lost with nested tables" was fixed. + +4.8.036 (2010-02-24) + - Automatic page break for HTML images was improved. + - Example 10 was updated. + - Japanese was removed from example 8 because the freeserif font doesn't contain japanese (you can display it using arialunicid0 font). + +4.8.035 (2010-02-23) + - Automatic page break for HTML images was added. + - Support for multicolumn HTML was added (example 10 was updated). + +4.8.034 (2010-02-17) + - Language files were updated. + +4.8.033 (2010-02-12) + - A bug related to protection mode with links was fixed. + +4.8.032 (2010-02-04) + - A bug related to $maxh parameter on Write() and MultiCell() was fixed. + - Support for body tag was added. + +4.8.031 (2010-01-30) + - Bug item #2941589 "paragraph justify not working on some non-C locales" was fixed. + +4.8.030 (2010-01-27) + - Some text alignment cases were fixed. + +4.8.029 (2010-01-27) + - Bug item #2941057 "TOC Error in PDF File Output" was fixed. + - Some text alignment cases were fixed. + +4.8.028 (2010-01-26) + - Text alignment for RTL mode was fixed. + +4.8.027 (2010-01-25) + - Bug item #2938412 "Table related problems - thead, nobr, table width" was fixed. + +4.8.026 (2010-01-19) + - The misspelled word "lenght" was replaced with "length" in some variables and comments. + +4.8.025 (2010-01-18) + - addExtGState() method was improved to reuse existing ExtGState objects. + +4.8.024 (2010-01-15) + - Justification mode for HTML was fixed (Bug item #2932470). + +4.8.023 (2010-01-15) + - Bug item #2932470 "Some HTML entities breaks justification" was fixed. + +4.8.022 (2010-01-14) + - Source code documentation was fixed. + +4.8.021 (2010-01-03) + - A Bug relative to Table Of Content index was fixed. + +4.8.020 (2009-12-21) + - Bug item #2918545 "Display problem of the first row of a table with larger font" was fixed. + - A Bug relative to table rowspan mode was fixed. + +4.8.019 (2009-12-16) + - Bug item #2915684 "Image size" was fixed. + - Bug item #2914995 "Image jpeg quality" was fixed. + - The signature of the Image() method was changed (check the documentation for the $resize parameter). + +4.8.018 (2009-12-15) + - Bug item #2914352 "write error" was fixed. + +4.8.017 (2009-11-27) + - THEAD problem when table is used on header/footer was fixed. + - A first line alignment on HTML justification was fixed. + - Method getImageFileType() was added. + - Images with unknown extension and type are now supported via ImageMagick PHP extension. + +4.8.016 (2009-11-21) + - Document Information Dictionary was fixed. + - CSS attributes 'page-break-before', 'page-break-after' and 'page-break-inside' are now supported. + - Problem of unclosed last page was fixed. + - Problem of 'thead' unnecessarily repeated on the next page was fixed. + +4.8.015 (2009-11-20) + - A problem with some PNG transparency images was fixed. + - Bug #2900762 "Sort issues in Bookmarks" was fixed. + - Text justification was fixed for various modes: underline, strikeout and background. + +4.8.014 (2009-11-04) + - Bug item #2891316 "writeHTML, underlining replacing spaces" was fixed. + - The handling of temporary RTL text direction mode was fixed. + +4.8.013 (2009-10-26) + - Bug item #2884729 "Problem with word-wrap and hyphen" was fixed. + +4.8.012 (2009-10-23) + - Table cell alignments for RTL booklet mode were fixed. + - Images and barcode alignments for booklet mode were fixed. + +4.8.011 (2009-10-22) + - DejaVu fonts were updated to latest version. + +4.8.010 (2009-10-21) + - Bookmark for TOC page was added. + - Signature of addTOC() method is changed. + - Bookmarks are now automatically sorted by page and Y position. + - Example n. 45 was updated. + - Example n. 55 was added to display all charactes available on core fonts. + +4.8.009 (2009-09-30) + - Compatibility with PHP 5.3 was improved. + - All examples were updated. + - Index file for examples was added. + +4.8.008 (2009-09-29) + - Example 49 was updated. + - Underline and linethrough now works with cell stretching mode. + +4.8.007 (2009-09-23) + - Infinite loop problem caused by nobr attribute was fixed. + +4.8.006 (2009-09-23) + - Bug item #2864522 "No images if DOCUMENT_ROOT=='/'" was fixed. + - Support for text-indent CSS attribute was added. + - Method rollbackTransaction() was changed to support self-reassigment of previous object (check source code documentation). + - Support for the HTML "nobr" attribute was added to avoid splitting a table or a table row on two pages (i.e.: ...). + +4.8.005 (2009-09-17) + - A bug relative to multiple transformations and annotations was fixed. + +4.8.004 (2009-09-16) + - A bug on _putannotsrefs() method was fixed. + +4.8.003 (2009-09-15) + - Bug item #2858754 "Division by zero" was fixed. + - A bug relative to HTML list items was fixed. + - A bug relative to form fields on multiple pages was fixed. + - PolyLine() method was added (see example n. 12). + - Signature of Polygon() method was changed. + +4.8.002 (2009-09-12) + - A problem related to CID-0 fonts offset was fixed: if the $cw[1] entry on the CID-0 font file is not defined, then a CID keys offset is introduced. + +4.8.001 (2009-09-09) + - The appearance streams (AP) for anotations form fields was fixed (see examples n. 14 and 54). + - Radiobuttons were fixed. + +4.8.000 (2009-09-07) + - This version includes some support for Forms fields (see example n. 14) and XHTML forms (see example n. 54). + - The following methods were changed to work without JavaScript: TextField(), RadioButton(), ListBox(), ComboBox(), CheckBox(), Button(). + - Support for Widget annotations was improved. + - Alignment of annotation objects was fixed (examples 36 and 41 were updated). + - addJavascriptObject() method was added. + - Signature of Image() method was changed. + - htmlcolors.php file was updated. + +------------------------------------------------------------ + +4.7.003 (2009-09-03) + - Support for TCPDF methods on HTML was improved (see example n. 49). + +4.7.002 (2009-09-02) + - Bug item #2848892 "writeHTML + table: Gaps between rows" was fixed. + - JavaScript support was fixed (see example n. 53). + +4.7.001 (2009-08-30) + - The Polygon() and Arrow() methods were fixed and improved (see example n. 12). + +4.7.000 (2009-08-29) + - This is a major release. + - Some procedures were internally optimized. + - The problem of mixed signature and annotations was fixed (example n. 52). + +4.6.030 (2009-08-29) + - IMPORTANT: percentages on table cell widths are now relative to the full table width (as in standard HTML). + - Various minor bugs were fixed. + - Example n. 52 (digital signature) was updated. + +4.6.029 (2009-08-26) + - PHP4 version was fixed. + +4.6.028 (2009-08-25) + - Signature algorithm was finally fixed (see example n. 52). + +4.6.027 (2009-08-24) + - TCPDF now supports unembedded TrueTypeUnicode Fonts (just comment the $file entry on the fonts' php file. + +4.6.026 (2009-08-21) + - Bug #2841693 "Problem with MultiCell and ishtml and justification" was fixed. + - Signature functions were improved but not yet fixed (tcpdf.crt and example n. 52 were updated). + +4.6.025 (2009-08-17) + - Carriage returns (\r) were removed from source code. + - Problem related to set_magic_quotes_runtime() depracated was fixed. + +4.6.024 (2009-08-07) + - Bug item #2833556 "justification using other units than mm" was fixed. + - Documentation was fixed/updated. + +4.6.023 (2009-08-02) + - Bug item #2830537 "MirrorH can show mask for transparent PNGs" was fixed. + +4.6.022 (2009-07-24) + - A bug relative to single line printing when using WriteHTMLCell() was fixed. + - Signature support were improved but is still experimental. + - Fonts Free and Dejavu were updated to latest versions. + +4.6.021 (2009-07-20) + - Bug item #2824015 "XHTML Ampersand & in hyperlink bug" was fixed. + - Bug item #2824036 "Image as hyperlink in table, text displaced at page break" was fixed. + - Links alignment on justified text was fixed. + - Unicode "\u" modifier was added to re_spaces variable by default. + +4.6.020 (2009-07-16) + - Bug item #2821921 "issue in example 18" was fixed. + - Signature of SetRTL() method was changed. + +4.6.019 (2009-07-13) + - Bug item #2820703 "xref table broken" was fixed. + +4.6.018 (2009-07-10) + - Bug item #2819319 "Text over text" was fixed. + - Method Arrow() was added to print graphic arrows (example 12 was updated). + +4.6.017 (2009-07-05) + - Bug item #2816079 "Example 48 not working" was fixed. + - The signature of the checkPageBreak() was changed. The parameter $addpage was added to turn off the automatic page creation. + +4.6.016 (2009-06-16) + - Method setSpacesRE() was added to set the regular expression used for detecting withespaces or word separators. If you are using chinese, try: setSpacesRE('/[\s\p{Z}\p{Lo}]/');, otherwise you can use setSpacesRE('/[\s\p{Z}]/'); + - The method _putinfo() now automatically fills the metadata with '?' in case of empty string. + +4.6.015 (2009-06-11) + - Bug #2804667 "word wrap bug" was fixed. + +4.6.014 (2009-06-04) + - Bug #2800931 "Table thead tag bug" was fixed. + - A bug related to

 tag was fixed.
+
+4.6.013 (2009-05-28)
+	- List bullets position was fixed for RTL languages.
+
+4.6.012 (2009-05-23)
+	- setUserRights() method doesn't work anymore unless you call the setSignature() method with the Adobe private key!
+
+4.6.011 (2009-05-18)
+	- Signature of the Image() method was changed to include the new $fitbox parameter (see source code documentation).
+
+4.6.010 (2009-05-17)
+	- Image() method was improved: now is possible to specify the maximum dimensions for a constraint box defined by $w and $h parameters, and setting the $resize parameter to null.
+	-  tag indent problem was fixed.
+	- $y parameter was added to checkPageBreak() method.
+	- Bug n. 2791773 "writeHTML" was fixed.
+
+4.6.009 (2009-05-13)
+	- xref table for embedded files was fixed.
+
+4.6.008 (2009-05-07)
+	- setSignature() method was improved (but is still experimental).
+	- Example n. 52 was added.
+
+4.6.007 (2009-05-05)
+	- Bug #2786685 "writeHtmlCell and 
in custom footer" was fixed. + - Table header repeating bug was fixed. + - Some newlines and tabs are now automatically removed from HTML strings. + +4.6.006 (2009-04-28) + - Support for "..." was added. + - By default TCPDF requires PCRE Unicode support turned on but now works also without it (with limited ability to detect some Unicode blank spaces). + +4.6.005 (2009-04-25) + - Points (pt) conversion in getHTMLUnitToUnits() was fixed. + - Default tcpdf.pem certificate file was added. + - Experimental support for signing document was added but it is not yet completed (some help is needed - I think that the calculation of the ByteRange is OK and the problem is on the signature calculation). + +4.6.004 (2009-04-23) + - Method deletePage() was added to delete pages (see example n. 44). + +4.6.003 (2009-04-21) + - The caching mechanism of the UTF8StringToArray() method was fixed. + +4.6.002 (2009-04-20) + - Documentation of rollbackTransaction() method was fixed. + - The setImageScale() and getImageScale() methods now set and get the adjusting parameter used by pixelsToUnits() method. + - HTML images now support other units of measure than pixels (getHTMLUnitToUnits() is now used instead of pixelsToUnits()). + - WARNING: PDF_IMAGE_SCALE_RATIO has been changed by default to 1. + +4.6.001 (2009-04-17) + - Spaces between HTML block tags are now automatically removed. + - The bug related to cMargin changes between tables was fixed. + +4.6.000 (2009-04-16) + - WARNING: THIS VERSION CHANGES THE BEHAVIOUR OF $x and $y parameters for several TCPDF methods: + zero coordinates for $x and $y are now valid coordinates; + set $x and $y as empty strings to get the current value. + - Some error caused by 'empty' funtion were fixed. + - Default color for convertHTMLColorToDec() method was changed to white and the return value for invalid color is false. + - HTML on footer bug was fixed. + - The following examples were fixed: 5,7,10,17,19,20,21,33,42,43. + +4.5.043 (2009-04-15) + - Barcode class (barcode.php) was extended to include new linear barcode types (see example n. 27): + C39 : CODE 39 - ANSI MH10.8M-1983 - USD-3 - 3 of 9 + C39+ : CODE 39 with checksum + C39E : CODE 39 EXTENDED + C39E+ : CODE 39 EXTENDED + CHECKSUM + C93 : CODE 93 - USS-93 + S25 : Standard 2 of 5 + S25+ : Standard 2 of 5 + CHECKSUM + I25 : Interleaved 2 of 5 + I25+ : Interleaved 2 of 5 + CHECKSUM + C128A : CODE 128 A + C128B : CODE 128 B + C128C : CODE 128 C + EAN2 : 2-Digits UPC-Based Extention + EAN5 : 5-Digits UPC-Based Extention + EAN8 : EAN 8 + EAN13 : EAN 13 + UPCA : UPC-A + UPCE : UPC-E + MSI : MSI (Variation of Plessey code) + MSI+ : MSI + CHECKSUM (modulo 11) + POSTNET : POSTNET + PLANET : PLANET + RMS4CC : RMS4CC (Royal Mail 4-state Customer Code) - CBC (Customer Bar Code) + KIX : KIX (Klant index - Customer index) + IMB: Intelligent Mail Barcode - Onecode - USPS-B-3200 (NOTE: requires BCMath PHP extension) + CODABAR : CODABAR + CODE11 : CODE 11 + PHARMA : PHARMACODE + PHARMA2T : PHARMACODE TWO-TRACKS + +4.5.042 (2009-04-15) + - Method Write() was fixed for the strings containing only zero value. + +4.5.041 (2009-04-14) + - Barcode methods were fixed. + +4.5.040 (2009-04-14) + - Method Write() was fixed to handle empty strings. + +4.5.039 (2009-04-11) + - Support for linear barcodes was extended (see example n. 27 and barcodes.php documentation). + +4.5.038 (2009-04-10) + - Write() method was improved to support separators for Japanese, Korean, Chinese Traditional and Chinese Simplified. + +4.5.037 (2009-04-09) + - General performances were improved. + - The signature of the method utf8Bidi() was changed. + - The method UniArrSubString() was added. + - Experimental support for 2D barcodes were added (see example n. 50 and 2dbarcodes.php class). + +4.5.036 (2009-04-03) + - TCPDF methods can be called inside the HTML code (see example n. 49). + - All tag attributes, such as

must be enclosed within double quotes. + +4.5.035 (2009-03-28) + - Bug #2717436 "writeHTML rowspan problem (continued)" was fixed. + - Bug #2719090 "writeHTML fix follow up" was fixed. + - The method _putuserrights() was changed to avoid Adobe Reader 9.1 crash. This broken the 'trick' that was used to display forms in Acrobat Reader. + +4.5.034 (2009-03-27) + - Bug #2716914 "Bug writeHTML of a table in body and footer related with pb" was fixed. + - Bug #2717056 ] "writeHTML problem when setting tr style" was fixed. + - The signature of the Cell() method was changed. + +4.5.033 (2009-03-27) + - The support for rowspan/colspan on HTML tables was improved (see example n. 48). + +4.5.032 (2009-03-23) + - setPrintFooter(false) bug was fixed. + +4.5.031 (2009-03-20) + - Table header support was extended to multiple pages. + +4.5.030 (2009-03-20) + - thead tag is now supported on HTML tables (header rows are repeated after page breaks). + - The startTransaction() was improved to autocommit. + - List bullets now uses the foreground color (putHtmlListBullet()). + +4.5.029 (2009-03-19) + - The following methods were added to UNDO commands (see example 47): startTransaction(), commitTransaction(), rollbackTransaction(). + - All examples were updated. + +4.5.028 (2009-03-18) + - Bug #2690945 "List Bugs" was fixed. + - HTML text alignment on lists was fixed. + - The constant PDF_FONT_MONOSPACED was added to the configuration file to define the default monospaced font. + - The following methods were fixed: getPageWidth(), getPageHeight(), getBreakMargin(). + - All examples were updated. + +4.5.027 (2009-03-16) + - Method getPageDimensions() was added to get page dimensions. + - The signature of the following methos were changed: getPageWidth(), getPageHeight(), getBreakMargin(). + - _parsepng() method was fixed for PNG URL images (fread bug). + +4.5.026 (2009-03-11) + - Bug #2681793 affecting URL images with spaces was fixed. + +4.5.025 (2009-03-10) + - A small bug affecting hyphenation support was fixed. + - The method SetDefaultMonospacedFont() was added to define the default monospaced font. + +4.5.024 (2009-03-07) + - The bug #2666493 was fixed "Footer corrupts document". + +4.5.023 (2009-03-06) + - The bug #2666688 was fixed "Rowspan in tables". + +4.5.022 (2009-03-05) + - The bug #2659676 was fixed "refer to #2157099 test 4 < BR > problem still not fixed". + - addTOC() function bug was fixed. + +4.5.020 (2009-03-03) + - The following bug was fixed: "function removeSHY corrupts unicode". + +4.5.019 (2009-02-28) + - The problem of decimal separator using different locale was fixed. + - The text hyphenation is now supported (see example n. 46). + +4.5.018 (2009-02-26) + - The _destroy() method was added to unset all class variables and frees memory. + - Now it's possible to call Output() method multiple times. + +4.5.017 (2009-02-24) + - A minor bug that raises a PHP warning was fixed. + +4.5.016 (2009-02-24) + - Bug item #2631200 "getNumLines() counts wrong" was fixed. + - Multiple attachments bug was fixed. + - All class variables are now cleared on Output() for memory otpimization. + +4.5.015 (2009-02-18) + - Bug item #2612553 "function Write() must not break a line on   character" was fixed. + +4.5.014 (2009-02-13) + - Bug item #2595015 "POSTNET Barcode Checksum Error" was fixed (on barcode.php). + - Pagebreak bug for barcode was fixed. + +4.5.013 (2009-02-12) + - border attribute is now supported on HTML images (only accepts the same values accepted by Cell()). + +4.5.012 (2009-02-12) + - An error on image border feature was fixed. + +4.5.011 (2009-02-12) + - HTML links for images are now supported. + - height attribute is now supported on HTML cells. + - $border parameter was added to Image() and ImageEps() methods. + - The method getNumLines() was added to estimate the number of lines required for the specified text. + +4.5.010 (2009-01-29) + - Bug n. 2546108 "BarCode Y position" was fixed. + +4.5.009 (2009-01-26) + - Bug n. 2538094 "Empty pdf file created" was fixed. + +4.5.008 (2009-01-26) + - setPage() method was fixed to correctly restore graphic states. + - Source code was cleaned up for performances. + +4.5.007 (2009-01-24) + - checkPageBreak() and write1DBarcode() methods were fixed. + - Source code was cleaned up for performances. + - barcodes.php was updated. + +4.5.006 (2009-01-23) + - getHTMLUnitToPoints() method was replaced by getHTMLUnitToUnits() to fix HTML units bugs. + +4.5.005 (2009-01-23) + - Page closing bug was fixed. + +4.5.004 (2009-01-21) + - The access of convertHTMLColorToDec() method was changed to public + - Fixed bug on UL tag. + +4.5.003 (2009-01-19) + - Fonts on different folders are now supported. + +4.5.002 (2009-01-07) + - addTOC() function was improved (see example n. 45). + +4.5.001 (2009-01-04) + - The signature of startPageGroup() function was changed. + - Method Footer() was improved to automatically print page or page-group number (see example n. 23). + - Protected method formatTOCPageNumber() was added to customize the format of page numbers on the Table Of Content. + - The signature of addTOC() was changed to include the font used for page numbers. + +4.5.000 (2009-01-03) + - A new $diskcache parameter was added to class constructor to enable disk caching and reduce RAM memory usage (see example n. 43). + - The method movePageTo() was added to move pages to previous positions (see example n. 44). + - The methods getAliasNumPage() and getPageNumGroupAlias() were added to get the alias for page number (needed when using movepageTo()). + - The methods addTOC() was added to print a Table Of Content (see example n. 45). + - Imagick class constant was removed for better compatibility with PHP4. + - All existing examples were updated and new examples were added. + +4.4.009 (2008-12-29) + - Examples 1 and 35 were fixed. + +4.4.008 (2008-12-28) + - Bug #2472169 "Unordered bullet size not adjusted for unit type" was fixed. + +4.4.007 (2008-12-23) + - Bug #2459935 "no unit conversion for header line" was fixed. + - Example n. 42 for image alpha channel was added. + - All examples were updated. + +4.4.006 (2008-12-11) + - Method setLIsymbol() was changed to reflect latest changes in HTML list handling. + +4.4.005 (2008-12-10) + - Bug item #2413870 "ordered list override value" was fixed. + +4.4.004 (2008-12-10) + - The protected method getHTMLUnitToPoints() was added to accept various HTML units of measure (em, ex, px, in, cm, mm, pt, pc, %). + - The method intToRoman() was added to convert integer number to Roman representation. + - Support fot HTML lists was improved: the CSS property list-style-type is now supported. + +4.4.003 (2008-12-09) + - Bug item #2412147 "Warning on line 3367" was fixed. + - Method setHtmlLinksStyle() was added to set default HTML link colors and font style. + - Method addHtmlLink() was changed to use color and style defined on the inline CSS. + +4.4.002 (2008-12-09) + - Borders on Multicell() were fixed. + - Problem of Multicell() on Header function (Bug item #2407579) was fixed. + - Problem on graphics tranformations applied to Multicell() was fixed. + - Support for ImageMagick was added. + - Width calculation for nested tables was fixed. + +4.4.001 (2008-12-08) + - Some missing core fonts were added on fonts directory. + - CID0 fonts rendering was fixed. + - HTML support was improved (

 and  tags are now supported).
+	- Bug item #2406022 "Left padding bug in MultiCell with maxh" was fixed.
+
+4.4.000 (2008-12-07)
+	- File attachments are now supported (see example n. 41).
+	- Font functions were optimized to reduce document size.
+	- makefont.php was updated.
+	- Linux binaries were added on /fonts/utils
+	- All fonts were updated.
+	- $autopadding parameter was added to Multicell() to disable automatic padding features.
+	- $maxh parameter was added to Multicell() and Write() to set a maximum height.
+
+4.3.009 (2008-12-05)
+	- Bug item #2392989 (Custom header + setlinewidth + cell border bug) was fixed.
+
+4.3.008 (2008-12-05)
+	- Bug item #2390566 "rect bug" was fixed.
+	- File path was fixed for font embedded files.
+	- SetFont() method signature was changed to include the font filename.
+	- Some font-related methods were improved.
+	- Methods getFontFamily() and getFontStyle() were added.
+
+4.3.007 (2008-12-03)
+	- PNG alpha channel is now supported (GD library is required).
+	- AddFont() function now support custom font file path on $file parameter.
+	- The default width variable ($dw) is now always defined for any font.
+	- The 'Style' attribute on CID-0 fonts was removed because of protection bug.
+
+4.3.006 (2008-12-01)
+	- A regular expression on getHtmlDomArray() to find HTML tags was fixed.
+
+4.3.005 (2008-11-25)
+	- makefont.php was fixed.
+	- Bug item #2339877 was fixed (false loop condition detected on WriteHTML()).
+	- Bug item #2336733 was fixed (lasth value update on Multicell() when border and fill are disabled).
+	- Bug item #2342303 was fixed (automatic page-break on Image() and ImageEPS()).
+
+4.3.004 (2008-11-19)
+	- Function _textstring() was fixed (bug 2309051).
+	- All examples were updated.
+
+4.3.003 (2008-11-18)
+	- CID-0 font bug was fixed.
+	- Some functions were optimized.
+	- Function getGroupPageNoFormatted() was added.
+	- Example n. 23 was updated.
+
+4.3.002 (2008-11-17)
+	- Bug item #2305518 "CID-0 font don't work with encryption" was fixed.
+
+4.3.001 (2008-11-17)
+	- Bug item #2300007 "download mimetype pdf" was fixed.
+	- Double quotes were replaced by single quotes to improve PHP performances.
+	- A bug relative to HTML cell borders was fixed.
+
+4.3.000 (2008-11-14)
+	- The function setOpenCell() was added to set the top/bottom cell sides to be open or closed when the cell cross the page.
+	- A bug relative to list items indentation was fixed.
+	- A bug relative to borders on HTML tables and Multicell was fixed.
+	- A bug relative to rowspanned cells was fixed.
+	- A bug relative to html images across pages was fixed.
+
+4.2.009 (2008-11-13)
+	- Spaces between li tags are now automatically removed.
+
+4.2.008 (2008-11-12)
+	- A bug relative to fill color on next page was fixed.
+
+4.2.007 (2008-11-12)
+	- The function setListIndentWidth() was added to set custom indentation widht for HTML lists.
+
+4.2.006 (2008-11-06)
+	- A bug relative to HTML justification was fixed.
+
+4.2.005 (2008-11-06)
+	- A bug relative to HTML justification was fixed.
+	- The methods formatPageNumber() and PageNoFormatted() were added to format page numbers.
+	- Default Footer() method was changed to use PageNoFormatted() instead of PageNo().
+	- Example 6 was updated.
+
+4.2.004 (2008-11-04)
+	- Bug item n. 2217039 "filename handling improvement" was fixed.
+
+4.2.003 (2008-10-31)
+	- Font style bug was fixed.
+
+4.2.002 (2008-10-31)
+	- Bug item #2210922 (htm element br not work) was fixed.
+	- Write() function was improved to support margin changes.
+
+4.2.001 (2008-10-30)
+	- setHtmlVSpace($tagvs) function was added to set custom vertical spaces for HTML tags.
+	- writeHTML() function now support margin changes during execution.
+	- Signature of addHTMLVertSpace() function is changed.
+
+4.2.000 (2008-10-29)
+	- htmlcolors.php was changed to support class-loaders.
+	- ImageEps() function was improved in performances.
+	- Signature of Link() And Annotation() functions were changed.
+	- (Bug item #2198926) Links and Annotations alignment were fixed (support for geometric tranformations was added).
+	- rowspan mode for HTML table cells was improved and fixed.
+	- Booklet mode for double-sided pages was added; see SetBooklet() function and example n. 40.
+	- lastPage() signature is changed.
+	- Signature of Write() function is changed.
+	- Some HTML justification problems were fixed.
+	- Some functions were fixed to better support RTL mode.
+	- Example n. 10 was changed to support RTL mode.
+	- All examples were updated.
+
+4.1.004 (2008-10-23)
+	- unicode_data.php was changed to support class-loaders.
+	- Bug item #2186040/2 (writeHTML margin problem) was fixed.
+
+4.1.003 (2008-10-22)
+	- Bug item #2185399 was fixed (rowspan and page break).
+	- Bugs item #2186040 was fixed (writeHTML margin problem).
+	- Newline after table was removed.
+
+4.1.002 (2008-10-21)
+	- Bug item #2184525 was fixed (rowspan on HTML cell).
+
+4.1.001 (2008-10-21)
+	- Support for "start" attribute was added to HTML ordered list.
+	- unicode_data.php file was changed to include UTF-8 to ASCII table.
+	- Some functions were modified to better support UTF-8 extensions to core fonts.
+	- Support for images on HTML lists was improved.
+	- Examples n. 1 and 6 were updated.
+
+4.1.000 (2008-10-18)
+	- Page-break bug using HTML content was fixed.
+	- The "false" parameter was reintroduced to class_exists function on PHP5 version to avoid autoload.
+	- addHtmlLink() function was improved to support internal links (i.e.: link to page 23).
+	- Justification alignment is now supported on HTML (see example n. 39).
+	- example_006.php was updated.
+
+4.0.033 (2008-10-13)
+	- Bug n. 2157099 was fixed.
+	- SetX() and SetY() functions were improved.
+	- SetY() includes a new parameter to avoid the X reset.
+
+4.0.032 (2008-10-10)
+	- Bug n. 2156926 was fixed (bold, italic, underlined, linethrough).
+	- setStyle() method was removed.
+	- Configuration file was changed to use helvetica (non-unicode) font by default.
+	- The use of mixed font types was improved.
+	- All examples were updated.
+
+4.0.031 (2008-10-09)
+	- _putannots() and _putbookmarks() links alignments were fixed.
+
+4.0.030 (2008-10-07)
+	- _putbookmarks() function was fixed.
+	- _putannots() was fixed to include internal links.
+
+4.0.029 (2008-09-27)
+	- Infinite loop bug was fixed [Bug item #130309].
+	- Multicell() problem on Header() was fixed.
+
+4.0.028 (2008-09-26)
+	- setLIsymbol() was added to set the LI symbol used on UL lists.
+	- Missing $padding and $encryption_key variables declarations were added [Bug item #2129058].
+
+4.0.027 (2008-09-19)
+	- Bug #2118588 "Undefined offset in tcpdf.php on line 9581" was fixed.
+	- arailunicid0.php font was updated.
+	- The problem of javascript form fields duplication after saving was fixed.
+
+4.0.026 (2008-09-17)
+	- convertHTMLColorToDec() function was improved to support rgb(RR,GG,BB) notation.
+	- The following inline CSS attributes are now supported: text-decoration, color, background-color and font-size names: xx-small, x-small, small, medium, large, x-large, xx-large
+	- Example n. 6 was updated.
+
+4.0.025 (2008-09-15)
+	- _putcidfont0 function was improved to include CJK fonts (Chinese, Japanese, Korean, CJK, Asian fonts) without embedding.
+	- arialunicid0 font was added (see the new example n. 38).
+	- The following Unicode to CID-0 tables were added on fonts folder: uni2cid_ak12.php, uni2cid_aj16.php, uni2cid_ag15.php, uni2cid_ac15.php.
+
+4.0.024 (2008-09-12)
+	- "stripos" function was replaced with "strpos + strtolower" for backward compatibility with PHP4.
+	- support for Spot Colors were added. Check the new example n. 37 and the following new functions:
+		AddSpotColor()
+		SetDrawSpotColor()
+		SetFillSpotColor()
+		SetTextSpotColor()
+		_putspotcolors()
+	- Bookmark() function was improved to fix wrong levels.
+	- $lasth changes after header/footer calls were fixed.
+
+4.0.023 (2008-09-05)
+	- Some HTML related problems were fixed.
+	- Image alignment on HTML was changed, now it always defaults to the normal mode (see example_006.php).
+
+4.0.022 (2008-08-28)
+	- Line height on HTML was fixed.
+	- Image inside an HTML cell problem was fixed.
+	- A new "zarbold" persian font was added.
+
+4.0.021 (2008-08-24)
+	- HTTP headers were fixed on Output function().
+	- getAliasNbPages() and getPageGroupAlias() functions were changed to support non-unicode fonts on unicode documents.
+	- Function Write() was fixed.
+	- The problem of additional vertical spaces on HTML was fixed.
+	- The problem of frame around HTML links was fixed.
+
+4.0.020 (2008-08-15)
+	- "[2052259] WriteHTML  & " bug was fixed.
+
+4.0.019 (2008-08-13)
+	- "Rowspan on first cell" bug was fixed.
+
+4.0.018 (2008-08-08)
+	- Default cellpadding for HTML tables was fixed.
+	- Annotation() function was added to support some PDF annotations (see example_036.php and section 8.4 of PDF reference 1.7).
+	- HTML links are now correclty shifted during line alignments.
+	- function getAliasNbPages() was added and Footer() was updated.
+	- RowSpan mode for HTML tables was fixed.
+	- Bugs item #2043610 "Multiple sizes vertical align wrong" was fixed.
+	- ImageEPS() function was improved and RTL alignment was fixed (see example_032.php).
+
+4.0.017 (2008-08-05)
+	- Missing CNZ and CEO style modes were added to Rect() function.
+	- Fonts utils were updated to include support for OpenType fonts.
+	- getLastH() function was added.
+
+4.0.016 (2008-07-30)
+	- setPageMark() function was added. This function must be called after calling Image() function for a background image.
+
+4.0.015 (2008-07-29)
+	- Some functions were changed to support different page formats (see example_028.php).
+	- The signature of setPage() function is changed.
+
+4.0.014 (2008-07-29)
+	- K_PATH_MAIN calculation on tcpdf_config.php was fixed.
+	- HTML support for EPS/AI images was added (see example_006.php).
+	- Bugs item #2030807 "Truncated text on multipage html fields" was fixed.
+	- PDF header bug was fixed.
+	- helvetica was added as default font family.
+	- Stroke mode was fixed on Text function.
+	- several minor bugs were fixed.
+
+4.0.013 (2008-07-27)
+	- Bugs item #2027799 " Big spaces between lines after page break" was fixed.
+	- K_PATH_MAIN calculation on tcpdf_config.php was changed.
+	- Function setVisibility() was fixed to avoid the "Incorrect PDEObject type" error message.
+
+4.0.012 (2008-07-24)
+	- Addpage(), Header() and Footer() functions were changed to simplify the implementation of external header/footer functions.
+	- The following functions were added:
+			setHeader()
+			setFooter()
+			getImageRBX()
+			getImageRBY()
+			getCellHeightRatio()
+			getHeaderFont()
+			getFooterFont()
+			getRTL()
+			getBarcode()
+			getHeaderData()
+			getHeaderMargin()
+			getFooterMargin()
+
+4.0.011 (2008-07-23)
+	- Font support was improved.
+	- The folder /fonts/utils contains new utilities and instructions for embedd font files.
+	- Documentation was updated.
+
+4.0.010 (2008-07-22)
+	- HTML tables were fixed to work across pages.
+	- Header() and Footer() functions were updated to preserve previous settings.
+	- example_035.php was added.
+
+4.0.009 (2008-07-21)
+	- UTF8StringToArray() function was fixed for non-unicode mode.
+
+4.0.008 (2008-07-21)
+	- Barcodes alignment was fixed (see example_027.php).
+	- unicode_data.php was updated.
+	- Arabic shaping for "Zero-Width Non-Joiner" character (U+200C) was fixed.
+
+4.0.007 (2008-07-18)
+	- str_split was replaced by preg_split for compatibility with PHP4 version.
+	- Clipping mode was added to all graphic functions by using parameter $style = "CNZ" or "CEO" (see example_034.php).
+
+4.0.006 (2008-07-16)
+	- HTML rowspan bug was fixed.
+	- Line style for MultiCell() was fixed.
+	- WriteHTML() function was improved.
+	- CODE128C barcode was fixed (barcodes.php).
+
+4.0.005 (2008-07-11)
+	- Bug [2015715] "PHP Error/Warning" was fixed.
+
+4.0.004 (2008-07-09)
+	- HTML cell internal padding was fixed.
+
+4.0.003 (2008-07-08)
+	- Removed URL encoding when F option is selected on Output() function.
+	- fixed some minor bugs in html tables.
+
+4.0.002 (2008-07-07)
+	- Bug [2000861] was still unfixed and has been fixed.
+
+4.0.001 (2008-07-05)
+	- Bug [2000861] was fixed.
+
+4.0.000 (2008-07-03)
+	- THIS IS A MAIN RELEASE THAT INCLUDES SEVERAL NEW FEATURES AND BUGFIXES
+	- Signature fo SetTextColor() and SetFillColor() functions was changed (parameter $storeprev was removed).
+	- HTML support was completely rewritten and improved (see example 6).
+	- Alignments parameters were fixed.
+	- Functions GetArrStringWidth() and GetStringWidth() now include font parameters.
+	- Fonts support was improved.
+	- All core fonts were replaced and moved to fonts/ directory.
+	- The following functions were added: getMargins(), getFontSize(), getFontSizePt().
+	- File config/tcpdf_config_old.php was renamed tcpdf_config_alt.php and updated.
+	- Multicell and WriteHTMLCell fill function was fixed.
+	- Several minor bugs were fixed.
+	- barcodes.php was updated.
+	- All examples were updated.
+
+------------------------------------------------------------
+
+3.1.001 (2008-06-13)
+	- Bug [1992515] "K_PATH_FONTS default value wrong" was fixed.
+	- Vera font was removed, DejaVu font and Free fonts were updated.
+	- Image handling was improved.
+	- All examples were updated.
+
+3.1.000 (2008-06-11)
+	- setPDFVersion() was added to change the default PDF version (currently 1.7).
+	- setViewerPreferences() was added to control the way the document is to be presented on the screen or printed (see example 29).
+	- SetDisplayMode() signature was changed (new options were added).
+	- LinearGradient(), RadialGradient(), CoonsPatchMesh() functions were added to print various color gradients (see example 30).
+	- PieSector() function was added to render render pie charts (see example 31).
+	- ImageEps() was added to display EPS and AI images with limited support (see example 32).
+	- writeBarcode() function is now depracated, a new write1DBarcode() function was added. The barcode directory was removed and a new barcodes.php file was added.
+	- The new write1DBarcode() function support more barcodes and do not need the GD library (see example 027). All barcodes are directly written to PDF using graphic functions.
+	- HTML lists were improved and could be nested (you may now represent trees).
+	- AddFont() bug was fixed.
+	- _putfonts() bug was fixed.
+	- graphics functions were fixed.
+	- unicode_data.php file was updated (fixed).
+	- almohanad font was updated.
+	- example 18 was updated (Farsi and Arabic languages).
+	- source code cleanup.
+	- All examples were updated and new examples were added.
+
+3.0.015 (2008-06-06)
+	- AddPage() function signature is changed to include page format.
+	- example 28 was added to show page format changes.
+	- setPageUnit() function was added to change the page units of measure.
+	- setPageFormat() function was added to change the page format and orientation between pages.
+	- setPageOrientation() function was added to change the page orientation.
+	- Arabic font shaping was fixed for laa letter and square boxes (see the example 18).
+
+3.0.014 (2008-06-04)
+	- Arabic font shaping was fixed.
+	- setDefaultTableColumns() function was added.
+	- $cell_height_ratio variable was added.
+	- setCellHeightRatio() function was added to define the default height of cell repect font height.
+
+3.0.013 (2008-06-03)
+	- Multicell height parameter was fixed.
+	- Arabic font shaping was improved.
+	- unicode_data.php was updated.
+
+3.0.012 (2008-05-30)
+	- K_PATH_MAIN and K_PATH_URL constants are now automatically set on config file.
+	- DOCUMENT_ROOT constant was fixed for IIS Webserver (config file was updated).
+	- Arabic font shaping was improved.
+	- TranslateY() function was fixed (bug [1977962]).
+	- setVisibility() function was fixed.
+	- writeBarcode() function was fixed to scale using $xref parameter.
+	- All examples were updated.
+
+3.0.011 (2008-05-23)
+	- CMYK color support was added to all graphic functions.
+	- HTML table support was improved:
+	  -- now it's possible to include additional html tags inside a cell;
+	  -- colspan attribute was added.
+	- example 006 was updated.
+
+3.0.010 (2008-05-21)
+	- fixed $laa_array inclusion on utf8Bidi() function.
+
+3.0.009 (2008-05-20)
+	- unicode_data.php was updated.
+	- Arabic laa letter problem was fixed.
+
+3.0.008 (2008-05-12)
+	- Arabic support was fixed and improved (unicode_data.php was updated).
+	- Polycurve() function was added to draw a poly-Bezier curve.
+	- list items alignment was fixed.
+	- example 6 was updated.
+
+3.0.007 (2008-05-06)
+	- Arabic support was fixed and improved.
+	- AlMohanad (arabic) font was added.
+	- C128 barcode bugs were fixed.
+
+3.0.006 (2008-04-21)
+	- Condition to check negative width values was added.
+
+3.0.005 (2008-04-18)
+	- back-Slash character escape was fixed on writeHTML() function.
+	- Exampe 6 was updated.
+
+3.0.004 (2008-04-11)
+	- Bug [1939304] (Right to Left Issue) was fixed.
+
+3.0.003 (2008-04-07)
+	- Bug [1934523](Words between HTML tags in cell not kept on one line) was fixed.
+	- "face" attribute of "font" tag is now fully supported.
+
+3.0.002 (2008-04-01)
+	- Write() functions now return the number of cells and not the number of lines.
+	- TCPDF is released under LGPL 2.1, or any later version.
+
+3.0.001 (2008-05-28)
+	- _legacyparsejpeg() and _legacyparsepng() were renamed _parsejpeg() and _parsepng().
+	- function writeBarcode() was fixed.
+	- all examples were updated.
+	- example 27 was added to show various barcodes.
+
+3.0.000 (2008-03-27)
+	- private function pixelsToMillimeters() was changed to public function pixelsToUnits() to fix html image size bug.
+	- Image-related functions were rewritten.
+	- resize parameter was added to Image() signature to reduce the image size and fit width and height (see example 9).
+	- TCPDF now supports all images supported by GD library: GD, GD2, GD2PART, GIF, JPEG, PNG, BMP, XBM, XPM.
+	- CMYK support was added to SetDrawColor(), SetFillColor(), SetTextColor() (see example 22).
+	- Page Groups were added (see example 23).
+	- setVisibility() function was added to restrict the rendering of some elements to screen or printout (see example 24).
+	- All private variables and functions were changed to protected.
+	- setAlpha() function was added to give transparency support for all objects (see example 25).
+	- Clipping and stroke modes were added to Text() function (see example 26).
+	- All examples were moved to "examples" directory.
+	- function setJPEGQuality() was added to set the JPEG image comrpession (see example 9).
+
+2.9.000 (2008-03-26)
+	- htmlcolors.php file was added to include html colors.
+	- Support for HTML color names and three-digit hexadecimal color codes was added.
+	- private function convertColorHexToDec() was renamed convertHTMLColorToDec().
+	- color and bgcolor attributes are now supported on all HTML tags (color nesting is also supported).
+	- Write() function were fixed.
+	- example_006.php was updated.
+	- private function setUserRights() was added to release user rights on Acrobat Reader (this allows to display forms, see example 14)
+
+2.8.000 (2008-03-20)
+	- Private variables were changed to protected.
+	- Function Write() was fixed and improved.
+	- Support for dl, dt, dd, del HTML tags was introduced.
+	- Line-trought mode was added for HTML and text.
+	- Text vertical alignment on cells were fixed.
+	- Examples were updated to reflect changes.
+
+2.7.002 (2008-03-13)
+	- Bug "[1912142] Encrypted PDF created/modified date" was fixed.
+
+2.7.001 (2008-03-10)
+	- Cell justification was fixed for non-unicode mode.
+
+2.7.000 (2008-03-09)
+	- Cell() stretching mode 4 (forced character spacing) was fixed.
+	- writeHTMLCell() now uses Multicell() to write.
+	- Multicell() has a new parameter $ishtml to act as writeHTMLCell().
+	- Write() speed was improved for non-arabic strings.
+	- Example n. 20 was changed.
+
+2.6.000 (2008-03-07)
+	- various alignments bugs were fixed.
+
+2.5.000 (2008-03-07)
+	- Several bugs were fixed.
+	- example_019.php was added to test non-unicode mode using old fonts.
+
+2.4.000 (2008-03-06)
+	- RTL support was deeply improved.
+	- GetStringWidth() was fixed to support RTL languages.
+	- Text() RTL alignment was fixed.
+	- Some functions were added: GetArrStringWidth(), GetCharWidth(), uniord(), utf8Bidi().
+	- example_018.php was added and test_unicode.php was removed.
+
+2.3.000 (2008-03-05)
+	- MultiCell() signature is changed. Now support multiple columns across pages (see example_017).
+	- Write() signature is changed. Now support the cell mode to be used with MultiCell.
+	- Header() and Footer() were changed.
+	- The following functions were added: UTF8ArrSubString() and unichr().
+	- Examples were updated to reflect last changes.
+
+2.2.004 (2008-03-04)
+	- Several examples were added.
+	- AddPage() Header() and Footer() were fixed.
+	- Documentation is now available on http://www.tcpdf.org
+
+2.2.003 (2008-03-03)
+	- [1894853] Performance of MultiCell() was improved.
+	- RadioButton and ListBox functions were added.
+	- javascript form functions were rewritten and properties names are changed. The properties function supported by form fields are listed on Possible values are listed on http://www.adobe.com/devnet/acrobat/pdfs/js_developer_guide.pdf.
+
+2.2.002 (2008-02-28)
+	- [1900495] html images path was fixed.
+	- Legacy image functions were reintroduced to allow PNG and JPEG support without GD library.
+
+2.2.001 (2008-02-16)
+	- The bug "[1894700] bug with replace relative path" was fixed
+	- Justification was fixed
+
+2.2.000 (2008-02-12)
+	- fixed javascript bug introduced with latest release
+
+2.1.002 (2008-02-12)
+	- Justify function was fixed on PHP4 version.
+	- Bookmank function was added ([1578250] Table of contents).
+	- Javascript and Form fields support was added ([1796359] Form fields).
+
+2.1.001 (2008-02-10)
+	- The bug "[1885776] Race Condition in function justitfy" was fixed.
+	- The bug "[1890217] xpdf complains that pdf is incorrect" was fixed.
+
+2.1.000 (2008-01-07)
+	- FPDF_FONTPATH constant was changed to K_PATH_FONTS on config file
+	- Bidirectional Algorithm to correctly reverse bidirectional languages was added.
+	- SetLeftMargin, SetTopMargin, SetRightMargin functions were fixed.
+	- SetCellPadding function was added.
+	- writeHTML was updated with new parameters.
+	- Text function was fixed.
+	- MultiCell function was fixed, now works also across multiple pages.
+	- Line width was fixed on Header and Footer functions and 
tag. + - "GetImageSize" was renamed "getimagesize". + - Document version was changed from 1.3 to 1.5. + - _begindoc() function was fixed. + - ChangeDate was fixed and ModDate was added. + - The following functions were added: + setPage() : Move pointer to the specified document page. + getPage() : Get current document page number. + lastpage() : Reset pointer to the last document page. + getNumPages() : Get the total number of inserted pages. + GetNumChars() : count the number of (UTF-8) characters in a string. + - $stretch parameter was added to Cell() function to fit text on cell: + 0 = disabled + 1 = horizontal scaling only if necessary + 2 = forced horizontal scaling + 3 = character spacing only if necessary + 4 = forced character spacing + - Line function was fixed for RTL. + - Graphic transformation functions were added [1811158]: + StartTransform() + StopTransform() + ScaleX() + ScaleY() + ScaleXY() + Scale() + MirrorH() + MirrorV() + MirrorP() + MirrorL() + TranslateX() + TranslateY() + Translate() + Rotate() + SkewX() + SkewY() + Skew() + - Graphic function were added/updated [1688549]: + SetLineStyle() + _outPoint() + _outLine() + _outRect() + _outCurve() + Line() + Rect() + Curve + Ellipse + Circle + Polygon + RegularPolygon + +2.0.000 (2008-01-04) + - RTL (Right-To-Left) languages support was added. Language direction is set using the $l['a_meta_dir'] setting on /configure/language/xxx.php language files. + - setRTL($enable) method was added to manually enable/disable the RTL text direction. + - The attribute "dir" was added to support custom text direction on HTML tags. Possible values are: ltr - for Left-To-Right and RTL for Right-To-Left. + - RC4 40bit encryption was added. Check the SetProtection method. + - [1815213] Improved image support for GIF, JPEG, PNG formats. + - [1800094] Attribute "value" was added to ordered list items
  • . + - Image function now has a new "align" parameter that indicates the alignment of the pointer next to image insertion and relative to image height. The value can be: + T: top-right for LTR or top-left for RTL + M: middle-right for LTR or middle-left for RTL + B: bottom-right for LTR or bottom-left for RTL + N: next line + - Attribute "align" was added to html tag to set the above image "align" parameter. Possible values are: + top: top-right for LTR or top-left for RTL + middle: middle-right for LTR or middle-left for RTL + bottom: bottom-right for LTR or bottom-left for RTL + - [1798103] newline was added after , and

    tages. + - [1816393] Documentation was updated. + - 'ln' parameter was fixed on writeHTMLCell. Now it's possible to print two or more columns across several pages; + - The method lastPage() was added to move the pointer on the last page; + +------------------------------------------------------------ + +1.53.0.TC034 (2007-07-30) + - fixed htmlentities conversion. + - MultiCell() function returns the number of cells. + +1.53.0.TC033 (2007-07-30) + - fixed bug 1762550: case sensitive for font files + - NOTE: all fonts files names must be in lowercase! + +1.53.0.TC032 (2007-07-27) + - setLastH method was added to resolve bug 1689071. + - all fonts names were converted in lowercase (bug 1713005). + - bug 1740954 was fixed. + - justification was added as Cell option. + +1.53.0.TC031 (2007-03-20) + - ToUnicode CMap were added on _puttruetypeunicode function. Now you may search and copy unicode text. + +1.53.0.TC030 (2007-03-06) + - fixed bug on PHP4 version. + +1.53.0.TC029 (2007-03-06) + - DejaVu Fonts were added. + +1.53.0.TC028 (2007-03-03) + - MultiCell function signature were changed: the $ln parameter were added. Check documentation for further information. + - Greek language were added on example sentences. + - setPrintHeader() and setPrintFooter() functions were added to enable or disable page header and footer. + +1.53.0.TC027 (2006-12-14) + - $attr['face'] bug were fixed. + - K_TCPDF_EXTERNAL_CONFIG control where introduced on /config/tcpdf_config.php to use external configuration files. + +1.53.0.TC026 (2006-10-28) + - writeHTML function call were fixed on examples. + +1.53.0.TC025 (2006-10-27) + - Bugs item #1421290 were fixed (0D - 0A substitution in some characters) + - Bugs item #1573174 were fixed (MultiCell documentation) + +1.53.0.TC024 (2006-09-26) + - getPageHeight() function were fixed (bug 1543476). + - fixed missing breaks on closedHTMLTagHandler function (bug 1535263). + - fixed extra spaces on Write function (bug 1535262). + +1.53.0.TC023 (2006-08-04) + - paths to barcode directory were fixed. + - documentation were updated. + +1.53.0.TC022 (2006-07-16) + - fixed bug: [ 1516858 ] Probs with PHP autoloader and class_exists() + +1.53.0.TC021 (2006-07-01) + - HTML attributes with whitespaces are now supported (thanks to Nelson Benitez for his support) + +1.53.0.TC020 (2006-06-23) + - code cleanup + +1.53.0.TC019 (2006-05-21) + - fixed and closing tags + +1.53.0.TC018 (2006-05-18) + - fixed font names bug + +1.53.0.TC017 (2006-05-18) + - the TTF2UFM utility to convert True Type fonts for TCPDF were included on fonts folder. + - new free unicode fonts were included on /fonts/freefont. + - test_unicode.php example were exended. + - parameter $fill were added on Write, writeHTML and writeHTMLCell functions. + - documentation were updated. + +1.53.0.TC016 (2006-03-09) + - fixed closing tag on html parser. + +1.53.0.TC016 (2005-08-28) + - fpdf.php and tcpdf.php files were joined in one single class (you can still extend TCPDF with your own class). + - fixed problem when mb_internal_encoding is set. + +1.53.0.TC014 (2005-05-29) + - fixed WriteHTMLCell new page issue. + +1.53.0.TC013 (2005-05-29) + - fixed WriteHTMLCell across pages. + +1.53.0.TC012 (2005-05-29) + - font color attribute bug were fixed. + +1.53.0.TC011 (2005-03-31) + - SetFont function were fixed (thank Sjaak Lauwers for bug notice). + +1.53.0.TC010 (2005-03-22) + - the html functions were improved (thanks to Manfred Vervuert for bug reporting). + +1.53.0.TC009 (2005-03-19) + - a wrong reference to convertColorHexToDec were fixed. + +1.53.0.TC008 (2005-02-07) + - removed some extra bytes from PHP files. + +1.53.0.TC007 (2005-01-08) + - fill attribute were removed from writeHTMLCell method. + +1.53.0.TC006 (2005-01-08) + - the documentation were updated. + +1.53.0.TC005 (2005-01-05) + - Steven Wittens's unicode methods were removed. + - All unicode methods were rewritten from scratch. + - TCPDF is now licensed as LGPL. + +1.53.0.TC004 (2005-01-04) + - this changelog were added. + - removed commercial fonts for licensing issue. + - Bitstream Vera Fonts were added (http://www.bitstream.com/font_rendering/products/dev_fonts/vera.html). + - Now the AddFont and SetFont functions returns the basic font if the styled version do not exist. + +EOF -------------------------------------------------------- diff --git a/libraries/tcpdf/LICENSE.TXT b/libraries/tcpdf/LICENSE.TXT index b1e3f5a26..26adda0b3 100644 --- a/libraries/tcpdf/LICENSE.TXT +++ b/libraries/tcpdf/LICENSE.TXT @@ -1,504 +1,860 @@ - GNU LESSER GENERAL PUBLIC LICENSE - Version 2.1, February 1999 +********************************************************************** +* TCPDF LICENSE +********************************************************************** - Copyright (C) 1991, 1999 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + TCPDF is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. Additionally, + YOU CAN'T REMOVE ANY TCPDF COPYRIGHT NOTICE OR LINK FROM THE + GENERATED PDF DOCUMENTS. + +********************************************************************** +********************************************************************** + + GNU LESSER GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. -[This is the first released version of the Lesser GPL. It also counts - as the successor of the GNU Library Public License, version 2, hence - the version number 2.1.] - Preamble + This version of the GNU Lesser General Public License incorporates +the terms and conditions of version 3 of the GNU General Public +License, supplemented by the additional permissions listed below. - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -Licenses are intended to guarantee your freedom to share and change -free software--to make sure the software is free for all its users. + 0. Additional Definitions. - This license, the Lesser General Public License, applies to some -specially designated software packages--typically libraries--of the -Free Software Foundation and other authors who decide to use it. You -can use it too, but we suggest you first think carefully about whether -this license or the ordinary General Public License is the better -strategy to use in any particular case, based on the explanations below. + As used herein, "this License" refers to version 3 of the GNU Lesser +General Public License, and the "GNU GPL" refers to version 3 of the GNU +General Public License. - When we speak of free software, we are referring to freedom of use, -not price. Our General Public Licenses are designed to make sure that -you have the freedom to distribute copies of free software (and charge -for this service if you wish); that you receive source code or can get -it if you want it; that you can change the software and use pieces of -it in new free programs; and that you are informed that you can do -these things. + "The Library" refers to a covered work governed by this License, +other than an Application or a Combined Work as defined below. - To protect your rights, we need to make restrictions that forbid -distributors to deny you these rights or to ask you to surrender these -rights. These restrictions translate to certain responsibilities for -you if you distribute copies of the library or if you modify it. + An "Application" is any work that makes use of an interface provided +by the Library, but which is not otherwise based on the Library. +Defining a subclass of a class defined by the Library is deemed a mode +of using an interface provided by the Library. - For example, if you distribute copies of the library, whether gratis -or for a fee, you must give the recipients all the rights that we gave -you. You must make sure that they, too, receive or can get the source -code. If you link other code with the library, you must provide -complete object files to the recipients, so that they can relink them -with the library after making changes to the library and recompiling -it. And you must show them these terms so they know their rights. + A "Combined Work" is a work produced by combining or linking an +Application with the Library. The particular version of the Library +with which the Combined Work was made is also called the "Linked +Version". - We protect your rights with a two-step method: (1) we copyright the -library, and (2) we offer you this license, which gives you legal -permission to copy, distribute and/or modify the library. + The "Minimal Corresponding Source" for a Combined Work means the +Corresponding Source for the Combined Work, excluding any source code +for portions of the Combined Work that, considered in isolation, are +based on the Application, and not on the Linked Version. - To protect each distributor, we want to make it very clear that -there is no warranty for the free library. Also, if the library is -modified by someone else and passed on, the recipients should know -that what they have is not the original version, so that the original -author's reputation will not be affected by problems that might be -introduced by others. - - Finally, software patents pose a constant threat to the existence of -any free program. We wish to make sure that a company cannot -effectively restrict the users of a free program by obtaining a -restrictive license from a patent holder. Therefore, we insist that -any patent license obtained for a version of the library must be -consistent with the full freedom of use specified in this license. + The "Corresponding Application Code" for a Combined Work means the +object code and/or source code for the Application, including any data +and utility programs needed for reproducing the Combined Work from the +Application, but excluding the System Libraries of the Combined Work. - Most GNU software, including some libraries, is covered by the -ordinary GNU General Public License. This license, the GNU Lesser -General Public License, applies to certain designated libraries, and -is quite different from the ordinary General Public License. We use -this license for certain libraries in order to permit linking those -libraries into non-free programs. + 1. Exception to Section 3 of the GNU GPL. - When a program is linked with a library, whether statically or using -a shared library, the combination of the two is legally speaking a -combined work, a derivative of the original library. The ordinary -General Public License therefore permits such linking only if the -entire combination fits its criteria of freedom. The Lesser General -Public License permits more lax criteria for linking other code with -the library. + You may convey a covered work under sections 3 and 4 of this License +without being bound by section 3 of the GNU GPL. - We call this license the "Lesser" General Public License because it -does Less to protect the user's freedom than the ordinary General -Public License. It also provides other free software developers Less -of an advantage over competing non-free programs. These disadvantages -are the reason we use the ordinary General Public License for many -libraries. However, the Lesser license provides advantages in certain -special circumstances. + 2. Conveying Modified Versions. - For example, on rare occasions, there may be a special need to -encourage the widest possible use of a certain library, so that it becomes -a de-facto standard. To achieve this, non-free programs must be -allowed to use the library. A more frequent case is that a free -library does the same job as widely used non-free libraries. In this -case, there is little to gain by limiting the free library to free -software only, so we use the Lesser General Public License. + If you modify a copy of the Library, and, in your modifications, a +facility refers to a function or data to be supplied by an Application +that uses the facility (other than as an argument passed when the +facility is invoked), then you may convey a copy of the modified +version: - In other cases, permission to use a particular library in non-free -programs enables a greater number of people to use a large body of -free software. For example, permission to use the GNU C Library in -non-free programs enables many more people to use the whole GNU -operating system, as well as its variant, the GNU/Linux operating -system. + a) under this License, provided that you make a good faith effort to + ensure that, in the event an Application does not supply the + function or data, the facility still operates, and performs + whatever part of its purpose remains meaningful, or - Although the Lesser General Public License is Less protective of the -users' freedom, it does ensure that the user of a program that is -linked with the Library has the freedom and the wherewithal to run -that program using a modified version of the Library. + b) under the GNU GPL, with none of the additional permissions of + this License applicable to that copy. - The precise terms and conditions for copying, distribution and -modification follow. Pay close attention to the difference between a -"work based on the library" and a "work that uses the library". The -former contains code derived from the library, whereas the latter must -be combined with the library in order to run. - - GNU LESSER GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + 3. Object Code Incorporating Material from Library Header Files. - 0. This License Agreement applies to any software library or other -program which contains a notice placed by the copyright holder or -other authorized party saying it may be distributed under the terms of -this Lesser General Public License (also called "this License"). -Each licensee is addressed as "you". + The object code form of an Application may incorporate material from +a header file that is part of the Library. You may convey such object +code under terms of your choice, provided that, if the incorporated +material is not limited to numerical parameters, data structure +layouts and accessors, or small macros, inline functions and templates +(ten or fewer lines in length), you do both of the following: - A "library" means a collection of software functions and/or data -prepared so as to be conveniently linked with application programs -(which use some of those functions and data) to form executables. + a) Give prominent notice with each copy of the object code that the + Library is used in it and that the Library and its use are + covered by this License. - The "Library", below, refers to any such software library or work -which has been distributed under these terms. A "work based on the -Library" means either the Library or any derivative work under -copyright law: that is to say, a work containing the Library or a -portion of it, either verbatim or with modifications and/or translated -straightforwardly into another language. (Hereinafter, translation is -included without limitation in the term "modification".) + b) Accompany the object code with a copy of the GNU GPL and this license + document. - "Source code" for a work means the preferred form of the work for -making modifications to it. For a library, complete source code means -all the source code for all modules it contains, plus any associated -interface definition files, plus the scripts used to control compilation -and installation of the library. + 4. Combined Works. - Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running a program using the Library is not restricted, and output from -such a program is covered only if its contents constitute a work based -on the Library (independent of the use of the Library in a tool for -writing it). Whether that is true depends on what the Library does -and what the program that uses the Library does. - - 1. You may copy and distribute verbatim copies of the Library's -complete source code as you receive it, in any medium, provided that -you conspicuously and appropriately publish on each copy an -appropriate copyright notice and disclaimer of warranty; keep intact -all the notices that refer to this License and to the absence of any -warranty; and distribute a copy of this License along with the + You may convey a Combined Work under terms of your choice that, +taken together, effectively do not restrict modification of the +portions of the Library contained in the Combined Work and reverse +engineering for debugging such modifications, if you also do each of +the following: + + a) Give prominent notice with each copy of the Combined Work that + the Library is used in it and that the Library and its use are + covered by this License. + + b) Accompany the Combined Work with a copy of the GNU GPL and this license + document. + + c) For a Combined Work that displays copyright notices during + execution, include the copyright notice for the Library among + these notices, as well as a reference directing the user to the + copies of the GNU GPL and this license document. + + d) Do one of the following: + + 0) Convey the Minimal Corresponding Source under the terms of this + License, and the Corresponding Application Code in a form + suitable for, and under terms that permit, the user to + recombine or relink the Application with a modified version of + the Linked Version to produce a modified Combined Work, in the + manner specified by section 6 of the GNU GPL for conveying + Corresponding Source. + + 1) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (a) uses at run time + a copy of the Library already present on the user's computer + system, and (b) will operate properly with a modified version + of the Library that is interface-compatible with the Linked + Version. + + e) Provide Installation Information, but only if you would otherwise + be required to provide such information under section 6 of the + GNU GPL, and only to the extent that such information is + necessary to install and execute a modified version of the + Combined Work produced by recombining or relinking the + Application with a modified version of the Linked Version. (If + you use option 4d0, the Installation Information must accompany + the Minimal Corresponding Source and Corresponding Application + Code. If you use option 4d1, you must provide the Installation + Information in the manner specified by section 6 of the GNU GPL + for conveying Corresponding Source.) + + 5. Combined Libraries. + + You may place library facilities that are a work based on the +Library side by side in a single library together with other library +facilities that are not Applications and are not covered by this +License, and convey such a combined library under terms of your +choice, if you do both of the following: + + a) Accompany the combined library with a copy of the same work based + on the Library, uncombined with any other library facilities, + conveyed under the terms of this License. + + b) Give prominent notice with the combined library that part of it + is a work based on the Library, and explaining where to find the + accompanying uncombined form of the same work. + + 6. Revised Versions of the GNU Lesser General Public License. + + The Free Software Foundation may publish revised and/or new versions +of the GNU Lesser General Public License from time to time. Such new +versions will be similar in spirit to the present version, but may +differ in detail to address new problems or concerns. + + Each version is given a distinguishing version number. If the +Library as you received it specifies that a certain numbered version +of the GNU Lesser General Public License "or any later version" +applies to it, you have the option of following the terms and +conditions either of that published version or of any later version +published by the Free Software Foundation. If the Library as you +received it does not specify a version number of the GNU Lesser +General Public License, you may choose any version of the GNU Lesser +General Public License ever published by the Free Software Foundation. + + If the Library as you received it specifies that a proxy can decide +whether future versions of the GNU Lesser General Public License shall +apply, that proxy's public statement of acceptance of any version is +permanent authorization for you to choose that version for the Library. - You may charge a fee for the physical act of transferring a copy, -and you may at your option offer warranty protection in exchange for a -fee. - - 2. You may modify your copy or copies of the Library or any portion -of it, thus forming a work based on the Library, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: +********************************************************************** +********************************************************************** - a) The modified work must itself be a software library. + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 - b) You must cause the files modified to carry prominent notices - stating that you changed the files and the date of any change. + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. - c) You must cause the whole of the work to be licensed at no - charge to all third parties under the terms of this License. + Preamble - d) If a facility in the modified Library refers to a function or a - table of data to be supplied by an application program that uses - the facility, other than as an argument passed when the facility - is invoked, then you must make a good faith effort to ensure that, - in the event an application does not supply such function or - table, the facility still operates, and performs whatever part of - its purpose remains meaningful. + The GNU General Public License is a free, copyleft license for +software and other kinds of works. - (For example, a function in a library to compute square roots has - a purpose that is entirely well-defined independent of the - application. Therefore, Subsection 2d requires that any - application-supplied function or table used by this function must - be optional: if the application does not supply it, the square - root function must still compute square roots.) + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Library, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Library, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote -it. + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Library. + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. -In addition, mere aggregation of another work not based on the Library -with the Library (or with a work based on the Library) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. - 3. You may opt to apply the terms of the ordinary GNU General Public -License instead of this License to a given copy of the Library. To do -this, you must alter all the notices that refer to this License, so -that they refer to the ordinary GNU General Public License, version 2, -instead of to this License. (If a newer version than version 2 of the -ordinary GNU General Public License has appeared, then you can specify -that version instead if you wish.) Do not make any other change in -these notices. - - Once this change is made in a given copy, it is irreversible for -that copy, so the ordinary GNU General Public License applies to all -subsequent copies and derivative works made from that copy. + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. - This option is useful when you wish to copy part of the code of -the Library into a program that is not a library. + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. - 4. You may copy and distribute the Library (or a portion or -derivative of it, under Section 2) in object code or executable form -under the terms of Sections 1 and 2 above provided that you accompany -it with the complete corresponding machine-readable source code, which -must be distributed under the terms of Sections 1 and 2 above on a -medium customarily used for software interchange. + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. - If distribution of object code is made by offering access to copy -from a designated place, then offering equivalent access to copy the -source code from the same place satisfies the requirement to -distribute the source code, even though third parties are not -compelled to copy the source along with the object code. + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. - 5. A program that contains no derivative of any portion of the -Library, but is designed to work with the Library by being compiled or -linked with it, is called a "work that uses the Library". Such a -work, in isolation, is not a derivative work of the Library, and -therefore falls outside the scope of this License. + The precise terms and conditions for copying, distribution and +modification follow. - However, linking a "work that uses the Library" with the Library -creates an executable that is a derivative of the Library (because it -contains portions of the Library), rather than a "work that uses the -library". The executable is therefore covered by this License. -Section 6 states terms for distribution of such executables. + TERMS AND CONDITIONS - When a "work that uses the Library" uses material from a header file -that is part of the Library, the object code for the work may be a -derivative work of the Library even though the source code is not. -Whether this is true is especially significant if the work can be -linked without the Library, or if the work is itself a library. The -threshold for this to be true is not precisely defined by law. + 0. Definitions. - If such an object file uses only numerical parameters, data -structure layouts and accessors, and small macros and small inline -functions (ten lines or less in length), then the use of the object -file is unrestricted, regardless of whether it is legally a derivative -work. (Executables containing this object code plus portions of the -Library will still fall under Section 6.) + "This License" refers to version 3 of the GNU General Public License. - Otherwise, if the work is a derivative of the Library, you may -distribute the object code for the work under the terms of Section 6. -Any executables containing that work also fall under Section 6, -whether or not they are linked directly with the Library itself. - - 6. As an exception to the Sections above, you may also combine or -link a "work that uses the Library" with the Library to produce a -work containing portions of the Library, and distribute that work -under terms of your choice, provided that the terms permit -modification of the work for the customer's own use and reverse -engineering for debugging such modifications. + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. - You must give prominent notice with each copy of the work that the -Library is used in it and that the Library and its use are covered by -this License. You must supply a copy of this License. If the work -during execution displays copyright notices, you must include the -copyright notice for the Library among them, as well as a reference -directing the user to the copy of this License. Also, you must do one -of these things: + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. - a) Accompany the work with the complete corresponding - machine-readable source code for the Library including whatever - changes were used in the work (which must be distributed under - Sections 1 and 2 above); and, if the work is an executable linked - with the Library, with the complete machine-readable "work that - uses the Library", as object code and/or source code, so that the - user can modify the Library and then relink to produce a modified - executable containing the modified Library. (It is understood - that the user who changes the contents of definitions files in the - Library will not necessarily be able to recompile the application - to use the modified definitions.) + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. - b) Use a suitable shared library mechanism for linking with the - Library. A suitable mechanism is one that (1) uses at run time a - copy of the library already present on the user's computer system, - rather than copying library functions into the executable, and (2) - will operate properly with a modified version of the library, if - the user installs one, as long as the modified version is - interface-compatible with the version that the work was made with. + A "covered work" means either the unmodified Program or a work based +on the Program. - c) Accompany the work with a written offer, valid for at - least three years, to give the same user the materials - specified in Subsection 6a, above, for a charge no more - than the cost of performing this distribution. + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. - d) If distribution of the work is made by offering access to copy - from a designated place, offer equivalent access to copy the above - specified materials from the same place. + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. - e) Verify that the user has already received a copy of these - materials or that you have already sent this user a copy. + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. - For an executable, the required form of the "work that uses the -Library" must include any data and utility programs needed for -reproducing the executable from it. However, as a special exception, -the materials to be distributed need not include anything that is -normally distributed (in either source or binary form) with the major -components (compiler, kernel, and so on) of the operating system on -which the executable runs, unless that component itself accompanies -the executable. + 1. Source Code. - It may happen that this requirement contradicts the license -restrictions of other proprietary libraries that do not normally -accompany the operating system. Such a contradiction means you cannot -use both them and the Library together in an executable that you -distribute. - - 7. You may place library facilities that are a work based on the -Library side-by-side in a single library together with other library -facilities not covered by this License, and distribute such a combined -library, provided that the separate distribution of the work based on -the Library and of the other library facilities is otherwise -permitted, and provided that you do these two things: + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. - a) Accompany the combined library with a copy of the same work - based on the Library, uncombined with any other library - facilities. This must be distributed under the terms of the - Sections above. + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. - b) Give prominent notice with the combined library of the fact - that part of it is a work based on the Library, and explaining - where to find the accompanying uncombined form of the same work. + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. - 8. You may not copy, modify, sublicense, link with, or distribute -the Library except as expressly provided under this License. Any -attempt otherwise to copy, modify, sublicense, link with, or -distribute the Library is void, and will automatically terminate your -rights under this License. However, parties who have received copies, -or rights, from you under this License will not have their licenses -terminated so long as such parties remain in full compliance. + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. - 9. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Library or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Library (or any work based on the -Library), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Library or works based on it. + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. - 10. Each time you redistribute the Library (or any work based on the -Library), the recipient automatically receives a license from the -original licensor to copy, distribute, link with or modify the Library -subject to these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties with + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of this License. - - 11. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Library at all. For example, if a patent -license would not permit royalty-free redistribution of the Library by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Library. +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. -If any portion of this section is held invalid or unenforceable under any -particular circumstance, the balance of the section is intended to apply, -and the section as a whole is intended to apply in other circumstances. + 13. Use with the GNU Affero General Public License. -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. + 14. Revised Versions of this License. - 12. If the distribution and/or use of the Library is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Library under this License may add -an explicit geographical distribution limitation excluding those countries, -so that distribution is permitted only in or among countries not thus -excluded. In such case, this License incorporates the limitation as if -written in the body of this License. + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. - 13. The Free Software Foundation may publish revised and/or new -versions of the Lesser General Public License from time to time. -Such new versions will be similar in spirit to the present version, -but may differ in detail to address new problems or concerns. + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. -Each version is given a distinguishing version number. If the Library -specifies a version number of this License which applies to it and -"any later version", you have the option of following the terms and -conditions either of that version or of any later version published by -the Free Software Foundation. If the Library does not specify a -license version number, you may choose any version ever published by -the Free Software Foundation. - - 14. If you wish to incorporate parts of the Library into other free -programs whose distribution conditions are incompatible with these, -write to the author to ask for permission. For software which is -copyrighted by the Free Software Foundation, write to the Free -Software Foundation; we sometimes make exceptions for this. Our -decision will be guided by the two goals of preserving the free status -of all derivatives of our free software and of promoting the sharing -and reuse of software generally. + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. - NO WARRANTY + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. - 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO -WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. -EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR -OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY -KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE -LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME -THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + 15. Disclaimer of Warranty. - 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN -WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY -AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU -FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR -CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE -LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING -RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A -FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF -SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH -DAMAGES. + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Libraries + 16. Limitation of Liability. - If you develop a new library, and you want it to be of the greatest -possible use to the public, we recommend making it free software that -everyone can redistribute and change. You can do so by permitting -redistribution under these terms (or, alternatively, under the terms of the -ordinary General Public License). + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. - To apply these terms, attach the following notices to the library. It is -safest to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least the -"copyright" line and a pointer to where the full notice is found. + 17. Interpretation of Sections 15 and 16. - + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + Copyright (C) - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. - This library is distributed in the hope that it will be useful, + This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + You should have received a copy of the GNU General Public License + along with this program. If not, see . Also add information on how to contact you by electronic and paper mail. -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the library, if -necessary. Here is a sample; alter the names: + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: - Yoyodyne, Inc., hereby disclaims all copyright interest in the - library `Frob' (a library for tweaking knobs) written by James Random Hacker. + Copyright (C) + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. - , 1 April 1990 - Ty Coon, President of Vice +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". -That's all there is to it! + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. +********************************************************************** +********************************************************************** diff --git a/libraries/tcpdf/README.TXT b/libraries/tcpdf/README.TXT new file mode 100644 index 000000000..50dd9d8c0 --- /dev/null +++ b/libraries/tcpdf/README.TXT @@ -0,0 +1,90 @@ +TCPDF - README +============================================================ + +I WISH TO IMPROVE AND EXPAND TCPDF BUT I NEED YOUR SUPPORT. +PLEASE MAKE A DONATION: +http://sourceforge.net/donate/index.php?group_id=128076 + +------------------------------------------------------------ + +Name: TCPDF +Version: 5.9.039 +Release date: 2011-01-12 +Author: Nicola Asuni + +Copyright (c) 2002-2011: + Nicola Asuni + Tecnick.com s.r.l. + Via Della Pace, 11 + 09044 Quartucciu (CA) + ITALY + www.tecnick.com + +URLs: + http: www.tcpdf.org + http: www.sourceforge.net/projects/tcpdf + +Description: + TCPDF is a PHP class for generating PDF files on-the-fly without requiring external extensions. + +Main Features: + * no external libraries are required for the basic functions; + * all standard page formats, custom page formats, custom margins and units of measure; + * UTF-8 Unicode and Right-To-Left languages; + * TrueTypeUnicode, OpenTypeUnicode, TrueType, OpenType, Type1 and CID-0 fonts; + * font subsetting; + * methods to publish some XHTML + CSS code, Javascript and Forms; + * images, graphic (geometric figures) and transformation methods; + * supports JPEG, PNG and SVG images natively, all images supported by GD (GD, GD2, GD2PART, GIF, JPEG, PNG, BMP, XBM, XPM) and all images supported via ImagMagick (http: www.imagemagick.org/www/formats.html) + * 1D and 2D barcodes: CODE 39, ANSI MH10.8M-1983, USD-3, 3 of 9, CODE 93, USS-93, Standard 2 of 5, Interleaved 2 of 5, CODE 128 A/B/C, 2 and 5 Digits UPC-Based Extention, EAN 8, EAN 13, UPC-A, UPC-E, MSI, POSTNET, PLANET, RMS4CC (Royal Mail 4-state Customer Code), CBC (Customer Bar Code), KIX (Klant index - Customer index), Intelligent Mail Barcode, Onecode, USPS-B-3200, CODABAR, CODE 11, PHARMACODE, PHARMACODE TWO-TRACKS, QR-Code, PDF417; + * Grayscale, RGB, CMYK, Spot Colors and Transparencies; + * automatic page header and footer management; + * document encryption up to 256 bit and digital signature certifications; + * transactions to UNDO commands; + * PDF annotations, including links, text and file attachments; + * text rendering modes (fill, stroke and clipping); + * multiple columns mode; + * no-write page regions; + * bookmarks and table of content; + * text hyphenation; + * text stretching and spacing (tracking/kerning); + * automatic page break, line break and text alignments including justification; + * automatic page numbering and page groups; + * move and delete pages; + * page compression (requires php-zlib extension); + * XOBject Templates; + +Installation (full instructions on http: www.tcpdf.org): + 1. copy the folder on your Web server + 2. set your installation path and other parameters on the config/tcpdf_config.php + 3. call the examples/example_001.php page with your browser to see an example + +Source Code Documentation: + doc/index.html + http://www.tcpdf.org/doc/ + +For Additional Documentation: + http: www.tcpdf.org + +License + Copyright (C) 2002-2011 Nicola Asuni - Tecnick.com S.r.l. + + TCPDF is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. Additionally, + YOU CAN'T REMOVE ANY TCPDF COPYRIGHT NOTICE OR LINK FROM THE + GENERATED PDF DOCUMENTS. + + TCPDF is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + See the GNU Lesser General Public License for more details. + + You should have received a copy of the License + along with TCPDF. If not, see + . + + See LICENSE.TXT file for more information. + +============================================================ diff --git a/libraries/tcpdf/barcodes.php b/libraries/tcpdf/barcodes.php new file mode 100644 index 000000000..a16ed6ec1 --- /dev/null +++ b/libraries/tcpdf/barcodes.php @@ -0,0 +1,1965 @@ +. +// +// See LICENSE.TXT file for more information. +// ------------------------------------------------------------------- +// +// Description : PHP class to creates array representations for +// common 1D barcodes to be used with TCPDF. +// +//============================================================+ + +/** + * @file + * PHP class to creates array representations for common 1D barcodes to be used with TCPDF. + * @package com.tecnick.tcpdf + * @author Nicola Asuni + * @version 1.0.012 + */ + +/** + * @class TCPDFBarcode + * PHP class to creates array representations for common 1D barcodes to be used with TCPDF (http://www.tcpdf.org).
    + * @package com.tecnick.tcpdf + * @version 1.0.012 + * @author Nicola Asuni + */ +class TCPDFBarcode { + + /** + * Array representation of barcode. + * @protected + */ + protected $barcode_array; + + /** + * This is the class constructor. + * Return an array representations for common 1D barcodes:
      + *
    • $arrcode['code'] code to be printed on text label
    • + *
    • $arrcode['maxh'] max bar height
    • + *
    • $arrcode['maxw'] max bar width
    • + *
    • $arrcode['bcode'][$k] single bar or space in $k position
    • + *
    • $arrcode['bcode'][$k]['t'] bar type: true = bar, false = space.
    • + *
    • $arrcode['bcode'][$k]['w'] bar width in units.
    • + *
    • $arrcode['bcode'][$k]['h'] bar height in units.
    • + *
    • $arrcode['bcode'][$k]['p'] bar top position (0 = top, 1 = middle)
    + * @param $code (string) code to print + * @param $type (string) type of barcode:
    • C39 : CODE 39 - ANSI MH10.8M-1983 - USD-3 - 3 of 9.
    • C39+ : CODE 39 with checksum
    • C39E : CODE 39 EXTENDED
    • C39E+ : CODE 39 EXTENDED + CHECKSUM
    • C93 : CODE 93 - USS-93
    • S25 : Standard 2 of 5
    • S25+ : Standard 2 of 5 + CHECKSUM
    • I25 : Interleaved 2 of 5
    • I25+ : Interleaved 2 of 5 + CHECKSUM
    • C128A : CODE 128 A
    • C128B : CODE 128 B
    • C128C : CODE 128 C
    • EAN2 : 2-Digits UPC-Based Extention
    • EAN5 : 5-Digits UPC-Based Extention
    • EAN8 : EAN 8
    • EAN13 : EAN 13
    • UPCA : UPC-A
    • UPCE : UPC-E
    • MSI : MSI (Variation of Plessey code)
    • MSI+ : MSI + CHECKSUM (modulo 11)
    • POSTNET : POSTNET
    • PLANET : PLANET
    • RMS4CC : RMS4CC (Royal Mail 4-state Customer Code) - CBC (Customer Bar Code)
    • KIX : KIX (Klant index - Customer index)
    • IMB: Intelligent Mail Barcode - Onecode - USPS-B-3200
    • CODABAR : CODABAR
    • CODE11 : CODE 11
    • PHARMA : PHARMACODE
    • PHARMA2T : PHARMACODE TWO-TRACKS
    + */ + public function __construct($code, $type) { + $this->setBarcode($code, $type); + } + + /** + * Return an array representations of barcode. + * @return array + */ + public function getBarcodeArray() { + return $this->barcode_array; + } + + /** + * Set the barcode. + * @param $code (string) code to print + * @param $type (string) type of barcode:
    • C39 : CODE 39 - ANSI MH10.8M-1983 - USD-3 - 3 of 9.
    • C39+ : CODE 39 with checksum
    • C39E : CODE 39 EXTENDED
    • C39E+ : CODE 39 EXTENDED + CHECKSUM
    • C93 : CODE 93 - USS-93
    • S25 : Standard 2 of 5
    • S25+ : Standard 2 of 5 + CHECKSUM
    • I25 : Interleaved 2 of 5
    • I25+ : Interleaved 2 of 5 + CHECKSUM
    • C128A : CODE 128 A
    • C128B : CODE 128 B
    • C128C : CODE 128 C
    • EAN2 : 2-Digits UPC-Based Extention
    • EAN5 : 5-Digits UPC-Based Extention
    • EAN8 : EAN 8
    • EAN13 : EAN 13
    • UPCA : UPC-A
    • UPCE : UPC-E
    • MSI : MSI (Variation of Plessey code)
    • MSI+ : MSI + CHECKSUM (modulo 11)
    • POSTNET : POSTNET
    • PLANET : PLANET
    • RMS4CC : RMS4CC (Royal Mail 4-state Customer Code) - CBC (Customer Bar Code)
    • KIX : KIX (Klant index - Customer index)
    • IMB: Intelligent Mail Barcode - Onecode - USPS-B-3200
    • CODABAR : CODABAR
    • CODE11 : CODE 11
    • PHARMA : PHARMACODE
    • PHARMA2T : PHARMACODE TWO-TRACKS
    + * @return array + */ + public function setBarcode($code, $type) { + switch (strtoupper($type)) { + case 'C39': { // CODE 39 - ANSI MH10.8M-1983 - USD-3 - 3 of 9. + $arrcode = $this->barcode_code39($code, false, false); + break; + } + case 'C39+': { // CODE 39 with checksum + $arrcode = $this->barcode_code39($code, false, true); + break; + } + case 'C39E': { // CODE 39 EXTENDED + $arrcode = $this->barcode_code39($code, true, false); + break; + } + case 'C39E+': { // CODE 39 EXTENDED + CHECKSUM + $arrcode = $this->barcode_code39($code, true, true); + break; + } + case 'C93': { // CODE 93 - USS-93 + $arrcode = $this->barcode_code93($code); + break; + } + case 'S25': { // Standard 2 of 5 + $arrcode = $this->barcode_s25($code, false); + break; + } + case 'S25+': { // Standard 2 of 5 + CHECKSUM + $arrcode = $this->barcode_s25($code, true); + break; + } + case 'I25': { // Interleaved 2 of 5 + $arrcode = $this->barcode_i25($code, false); + break; + } + case 'I25+': { // Interleaved 2 of 5 + CHECKSUM + $arrcode = $this->barcode_i25($code, true); + break; + } + case 'C128A': { // CODE 128 A + $arrcode = $this->barcode_c128($code, 'A'); + break; + } + case 'C128B': { // CODE 128 B + $arrcode = $this->barcode_c128($code, 'B'); + break; + } + case 'C128C': { // CODE 128 C + $arrcode = $this->barcode_c128($code, 'C'); + break; + } + case 'EAN2': { // 2-Digits UPC-Based Extention + $arrcode = $this->barcode_eanext($code, 2); + break; + } + case 'EAN5': { // 5-Digits UPC-Based Extention + $arrcode = $this->barcode_eanext($code, 5); + break; + } + case 'EAN8': { // EAN 8 + $arrcode = $this->barcode_eanupc($code, 8); + break; + } + case 'EAN13': { // EAN 13 + $arrcode = $this->barcode_eanupc($code, 13); + break; + } + case 'UPCA': { // UPC-A + $arrcode = $this->barcode_eanupc($code, 12); + break; + } + case 'UPCE': { // UPC-E + $arrcode = $this->barcode_eanupc($code, 6); + break; + } + case 'MSI': { // MSI (Variation of Plessey code) + $arrcode = $this->barcode_msi($code, false); + break; + } + case 'MSI+': { // MSI + CHECKSUM (modulo 11) + $arrcode = $this->barcode_msi($code, true); + break; + } + case 'POSTNET': { // POSTNET + $arrcode = $this->barcode_postnet($code, false); + break; + } + case 'PLANET': { // PLANET + $arrcode = $this->barcode_postnet($code, true); + break; + } + case 'RMS4CC': { // RMS4CC (Royal Mail 4-state Customer Code) - CBC (Customer Bar Code) + $arrcode = $this->barcode_rms4cc($code, false); + break; + } + case 'KIX': { // KIX (Klant index - Customer index) + $arrcode = $this->barcode_rms4cc($code, true); + break; + } + case 'IMB': { // IMB - Intelligent Mail Barcode - Onecode - USPS-B-3200 + $arrcode = $this->barcode_imb($code); + break; + } + case 'CODABAR': { // CODABAR + $arrcode = $this->barcode_codabar($code); + break; + } + case 'CODE11': { // CODE 11 + $arrcode = $this->barcode_code11($code); + break; + } + case 'PHARMA': { // PHARMACODE + $arrcode = $this->barcode_pharmacode($code); + break; + } + case 'PHARMA2T': { // PHARMACODE TWO-TRACKS + $arrcode = $this->barcode_pharmacode2t($code); + break; + } + default: { + $this->barcode_array = false; + $arrcode = false; + break; + } + } + $this->barcode_array = $arrcode; + } + + /** + * CODE 39 - ANSI MH10.8M-1983 - USD-3 - 3 of 9. + * General-purpose code in very wide use world-wide + * @param $code (string) code to represent. + * @param $extended (boolean) if true uses the extended mode. + * @param $checksum (boolean) if true add a checksum to the code. + * @return array barcode representation. + * @protected + */ + protected function barcode_code39($code, $extended=false, $checksum=false) { + $chr['0'] = '111221211'; + $chr['1'] = '211211112'; + $chr['2'] = '112211112'; + $chr['3'] = '212211111'; + $chr['4'] = '111221112'; + $chr['5'] = '211221111'; + $chr['6'] = '112221111'; + $chr['7'] = '111211212'; + $chr['8'] = '211211211'; + $chr['9'] = '112211211'; + $chr['A'] = '211112112'; + $chr['B'] = '112112112'; + $chr['C'] = '212112111'; + $chr['D'] = '111122112'; + $chr['E'] = '211122111'; + $chr['F'] = '112122111'; + $chr['G'] = '111112212'; + $chr['H'] = '211112211'; + $chr['I'] = '112112211'; + $chr['J'] = '111122211'; + $chr['K'] = '211111122'; + $chr['L'] = '112111122'; + $chr['M'] = '212111121'; + $chr['N'] = '111121122'; + $chr['O'] = '211121121'; + $chr['P'] = '112121121'; + $chr['Q'] = '111111222'; + $chr['R'] = '211111221'; + $chr['S'] = '112111221'; + $chr['T'] = '111121221'; + $chr['U'] = '221111112'; + $chr['V'] = '122111112'; + $chr['W'] = '222111111'; + $chr['X'] = '121121112'; + $chr['Y'] = '221121111'; + $chr['Z'] = '122121111'; + $chr['-'] = '121111212'; + $chr['.'] = '221111211'; + $chr[' '] = '122111211'; + $chr['$'] = '121212111'; + $chr['/'] = '121211121'; + $chr['+'] = '121112121'; + $chr['%'] = '111212121'; + $chr['*'] = '121121211'; + + $code = strtoupper($code); + if ($extended) { + // extended mode + $code = $this->encode_code39_ext($code); + } + if ($code === false) { + return false; + } + if ($checksum) { + // checksum + $code .= $this->checksum_code39($code); + } + // add start and stop codes + $code = '*'.$code.'*'; + + $bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 1, 'bcode' => array()); + $k = 0; + $clen = strlen($code); + for ($i = 0; $i < $clen; ++$i) { + $char = $code{$i}; + if(!isset($chr[$char])) { + // invalid character + return false; + } + for ($j = 0; $j < 9; ++$j) { + if (($j % 2) == 0) { + $t = true; // bar + } else { + $t = false; // space + } + $w = $chr[$char]{$j}; + $bararray['bcode'][$k] = array('t' => $t, 'w' => $w, 'h' => 1, 'p' => 0); + $bararray['maxw'] += $w; + ++$k; + } + $bararray['bcode'][$k] = array('t' => false, 'w' => 1, 'h' => 1, 'p' => 0); + $bararray['maxw'] += 1; + ++$k; + } + return $bararray; + } + + /** + * Encode a string to be used for CODE 39 Extended mode. + * @param $code (string) code to represent. + * @return encoded string. + * @protected + */ + protected function encode_code39_ext($code) { + $encode = array( + chr(0) => '%U', chr(1) => '$A', chr(2) => '$B', chr(3) => '$C', + chr(4) => '$D', chr(5) => '$E', chr(6) => '$F', chr(7) => '$G', + chr(8) => '$H', chr(9) => '$I', chr(10) => '$J', chr(11) => '£K', + chr(12) => '$L', chr(13) => '$M', chr(14) => '$N', chr(15) => '$O', + chr(16) => '$P', chr(17) => '$Q', chr(18) => '$R', chr(19) => '$S', + chr(20) => '$T', chr(21) => '$U', chr(22) => '$V', chr(23) => '$W', + chr(24) => '$X', chr(25) => '$Y', chr(26) => '$Z', chr(27) => '%A', + chr(28) => '%B', chr(29) => '%C', chr(30) => '%D', chr(31) => '%E', + chr(32) => ' ', chr(33) => '/A', chr(34) => '/B', chr(35) => '/C', + chr(36) => '/D', chr(37) => '/E', chr(38) => '/F', chr(39) => '/G', + chr(40) => '/H', chr(41) => '/I', chr(42) => '/J', chr(43) => '/K', + chr(44) => '/L', chr(45) => '-', chr(46) => '.', chr(47) => '/O', + chr(48) => '0', chr(49) => '1', chr(50) => '2', chr(51) => '3', + chr(52) => '4', chr(53) => '5', chr(54) => '6', chr(55) => '7', + chr(56) => '8', chr(57) => '9', chr(58) => '/Z', chr(59) => '%F', + chr(60) => '%G', chr(61) => '%H', chr(62) => '%I', chr(63) => '%J', + chr(64) => '%V', chr(65) => 'A', chr(66) => 'B', chr(67) => 'C', + chr(68) => 'D', chr(69) => 'E', chr(70) => 'F', chr(71) => 'G', + chr(72) => 'H', chr(73) => 'I', chr(74) => 'J', chr(75) => 'K', + chr(76) => 'L', chr(77) => 'M', chr(78) => 'N', chr(79) => 'O', + chr(80) => 'P', chr(81) => 'Q', chr(82) => 'R', chr(83) => 'S', + chr(84) => 'T', chr(85) => 'U', chr(86) => 'V', chr(87) => 'W', + chr(88) => 'X', chr(89) => 'Y', chr(90) => 'Z', chr(91) => '%K', + chr(92) => '%L', chr(93) => '%M', chr(94) => '%N', chr(95) => '%O', + chr(96) => '%W', chr(97) => '+A', chr(98) => '+B', chr(99) => '+C', + chr(100) => '+D', chr(101) => '+E', chr(102) => '+F', chr(103) => '+G', + chr(104) => '+H', chr(105) => '+I', chr(106) => '+J', chr(107) => '+K', + chr(108) => '+L', chr(109) => '+M', chr(110) => '+N', chr(111) => '+O', + chr(112) => '+P', chr(113) => '+Q', chr(114) => '+R', chr(115) => '+S', + chr(116) => '+T', chr(117) => '+U', chr(118) => '+V', chr(119) => '+W', + chr(120) => '+X', chr(121) => '+Y', chr(122) => '+Z', chr(123) => '%P', + chr(124) => '%Q', chr(125) => '%R', chr(126) => '%S', chr(127) => '%T'); + $code_ext = ''; + $clen = strlen($code); + for ($i = 0 ; $i < $clen; ++$i) { + if (ord($code{$i}) > 127) { + return false; + } + $code_ext .= $encode[$code{$i}]; + } + return $code_ext; + } + + /** + * Calculate CODE 39 checksum (modulo 43). + * @param $code (string) code to represent. + * @return char checksum. + * @protected + */ + protected function checksum_code39($code) { + $chars = 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', '-', '.', ' ', '$', '/', '+', '%'); + $sum = 0; + $clen = strlen($code); + for ($i = 0 ; $i < $clen; ++$i) { + $k = array_keys($chars, $code{$i}); + $sum += $k[0]; + } + $j = ($sum % 43); + return $chars[$j]; + } + + /** + * CODE 93 - USS-93 + * Compact code similar to Code 39 + * @param $code (string) code to represent. + * @return array barcode representation. + * @protected + */ + protected function barcode_code93($code) { + $chr['0'] = '131112'; + $chr['1'] = '111213'; + $chr['2'] = '111312'; + $chr['3'] = '111411'; + $chr['4'] = '121113'; + $chr['5'] = '121212'; + $chr['6'] = '121311'; + $chr['7'] = '111114'; + $chr['8'] = '131211'; + $chr['9'] = '141111'; + $chr['A'] = '211113'; + $chr['B'] = '211212'; + $chr['C'] = '211311'; + $chr['D'] = '221112'; + $chr['E'] = '221211'; + $chr['F'] = '231111'; + $chr['G'] = '112113'; + $chr['H'] = '112212'; + $chr['I'] = '112311'; + $chr['J'] = '122112'; + $chr['K'] = '132111'; + $chr['L'] = '111123'; + $chr['M'] = '111222'; + $chr['N'] = '111321'; + $chr['O'] = '121122'; + $chr['P'] = '131121'; + $chr['Q'] = '212112'; + $chr['R'] = '212211'; + $chr['S'] = '211122'; + $chr['T'] = '211221'; + $chr['U'] = '221121'; + $chr['V'] = '222111'; + $chr['W'] = '112122'; + $chr['X'] = '112221'; + $chr['Y'] = '122121'; + $chr['Z'] = '123111'; + $chr['-'] = '121131'; + $chr['.'] = '311112'; + $chr[' '] = '311211'; + $chr['$'] = '321111'; + $chr['/'] = '112131'; + $chr['+'] = '113121'; + $chr['%'] = '211131'; + $chr[128] = '121221'; // ($) + $chr[129] = '311121'; // (/) + $chr[130] = '122211'; // (+) + $chr[131] = '312111'; // (%) + $chr['*'] = '111141'; + $code = strtoupper($code); + $encode = array( + chr(0) => chr(131).'U', chr(1) => chr(128).'A', chr(2) => chr(128).'B', chr(3) => chr(128).'C', + chr(4) => chr(128).'D', chr(5) => chr(128).'E', chr(6) => chr(128).'F', chr(7) => chr(128).'G', + chr(8) => chr(128).'H', chr(9) => chr(128).'I', chr(10) => chr(128).'J', chr(11) => '£K', + chr(12) => chr(128).'L', chr(13) => chr(128).'M', chr(14) => chr(128).'N', chr(15) => chr(128).'O', + chr(16) => chr(128).'P', chr(17) => chr(128).'Q', chr(18) => chr(128).'R', chr(19) => chr(128).'S', + chr(20) => chr(128).'T', chr(21) => chr(128).'U', chr(22) => chr(128).'V', chr(23) => chr(128).'W', + chr(24) => chr(128).'X', chr(25) => chr(128).'Y', chr(26) => chr(128).'Z', chr(27) => chr(131).'A', + chr(28) => chr(131).'B', chr(29) => chr(131).'C', chr(30) => chr(131).'D', chr(31) => chr(131).'E', + chr(32) => ' ', chr(33) => chr(129).'A', chr(34) => chr(129).'B', chr(35) => chr(129).'C', + chr(36) => chr(129).'D', chr(37) => chr(129).'E', chr(38) => chr(129).'F', chr(39) => chr(129).'G', + chr(40) => chr(129).'H', chr(41) => chr(129).'I', chr(42) => chr(129).'J', chr(43) => chr(129).'K', + chr(44) => chr(129).'L', chr(45) => '-', chr(46) => '.', chr(47) => chr(129).'O', + chr(48) => '0', chr(49) => '1', chr(50) => '2', chr(51) => '3', + chr(52) => '4', chr(53) => '5', chr(54) => '6', chr(55) => '7', + chr(56) => '8', chr(57) => '9', chr(58) => chr(129).'Z', chr(59) => chr(131).'F', + chr(60) => chr(131).'G', chr(61) => chr(131).'H', chr(62) => chr(131).'I', chr(63) => chr(131).'J', + chr(64) => chr(131).'V', chr(65) => 'A', chr(66) => 'B', chr(67) => 'C', + chr(68) => 'D', chr(69) => 'E', chr(70) => 'F', chr(71) => 'G', + chr(72) => 'H', chr(73) => 'I', chr(74) => 'J', chr(75) => 'K', + chr(76) => 'L', chr(77) => 'M', chr(78) => 'N', chr(79) => 'O', + chr(80) => 'P', chr(81) => 'Q', chr(82) => 'R', chr(83) => 'S', + chr(84) => 'T', chr(85) => 'U', chr(86) => 'V', chr(87) => 'W', + chr(88) => 'X', chr(89) => 'Y', chr(90) => 'Z', chr(91) => chr(131).'K', + chr(92) => chr(131).'L', chr(93) => chr(131).'M', chr(94) => chr(131).'N', chr(95) => chr(131).'O', + chr(96) => chr(131).'W', chr(97) => chr(130).'A', chr(98) => chr(130).'B', chr(99) => chr(130).'C', + chr(100) => chr(130).'D', chr(101) => chr(130).'E', chr(102) => chr(130).'F', chr(103) => chr(130).'G', + chr(104) => chr(130).'H', chr(105) => chr(130).'I', chr(106) => chr(130).'J', chr(107) => chr(130).'K', + chr(108) => chr(130).'L', chr(109) => chr(130).'M', chr(110) => chr(130).'N', chr(111) => chr(130).'O', + chr(112) => chr(130).'P', chr(113) => chr(130).'Q', chr(114) => chr(130).'R', chr(115) => chr(130).'S', + chr(116) => chr(130).'T', chr(117) => chr(130).'U', chr(118) => chr(130).'V', chr(119) => chr(130).'W', + chr(120) => chr(130).'X', chr(121) => chr(130).'Y', chr(122) => chr(130).'Z', chr(123) => chr(131).'P', + chr(124) => chr(131).'Q', chr(125) => chr(131).'R', chr(126) => chr(131).'S', chr(127) => chr(131).'T'); + $code_ext = ''; + $clen = strlen($code); + for ($i = 0 ; $i < $clen; ++$i) { + if (ord($code{$i}) > 127) { + return false; + } + $code_ext .= $encode[$code{$i}]; + } + // checksum + $code .= $this->checksum_code93($code); + // add start and stop codes + $code = '*'.$code.'*'; + $bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 1, 'bcode' => array()); + $k = 0; + $clen = strlen($code); + for ($i = 0; $i < $clen; ++$i) { + $char = $code{$i}; + if(!isset($chr[$char])) { + // invalid character + return false; + } + for ($j = 0; $j < 6; ++$j) { + if (($j % 2) == 0) { + $t = true; // bar + } else { + $t = false; // space + } + $w = $chr[$char]{$j}; + $bararray['bcode'][$k] = array('t' => $t, 'w' => $w, 'h' => 1, 'p' => 0); + $bararray['maxw'] += $w; + ++$k; + } + } + $bararray['bcode'][$k] = array('t' => true, 'w' => 1, 'h' => 1, 'p' => 0); + $bararray['maxw'] += 1; + ++$k; + return $bararray; + } + + /** + * Calculate CODE 93 checksum (modulo 47). + * @param $code (string) code to represent. + * @return string checksum code. + * @protected + */ + protected function checksum_code93($code) { + $chars = 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', '-', '.', ' ', '$', '/', '+', '%'); + // translate special characters + $code = strtr($code, chr(128).chr(129).chr(130).chr(131), '$/+%'); + $len = strlen($code); + // calculate check digit C + $p = 1; + $check = 0; + for ($i = ($len - 1); $i >= 0; --$i) { + $k = array_keys($chars, $code{$i}); + $check += ($k[0] * $p); + ++$p; + if ($p > 20) { + $p = 1; + } + } + $check %= 47; + $c = $chars[$check]; + $code .= $c; + // calculate check digit K + $p = 1; + $check = 0; + for ($i = $len; $i >= 0; --$i) { + $k = array_keys($chars, $code{$i}); + $check += ($k[0] * $p); + ++$p; + if ($p > 15) { + $p = 1; + } + } + $check %= 47; + $k = $chars[$check]; + return $c.$k; + } + + /** + * Checksum for standard 2 of 5 barcodes. + * @param $code (string) code to process. + * @return int checksum. + * @protected + */ + protected function checksum_s25($code) { + $len = strlen($code); + $sum = 0; + for ($i = 0; $i < $len; $i+=2) { + $sum += $code{$i}; + } + $sum *= 3; + for ($i = 1; $i < $len; $i+=2) { + $sum += ($code{$i}); + } + $r = $sum % 10; + if($r > 0) { + $r = (10 - $r); + } + return $r; + } + + /** + * MSI. + * Variation of Plessey code, with similar applications + * Contains digits (0 to 9) and encodes the data only in the width of bars. + * @param $code (string) code to represent. + * @param $checksum (boolean) if true add a checksum to the code (modulo 11) + * @return array barcode representation. + * @protected + */ + protected function barcode_msi($code, $checksum=false) { + $chr['0'] = '100100100100'; + $chr['1'] = '100100100110'; + $chr['2'] = '100100110100'; + $chr['3'] = '100100110110'; + $chr['4'] = '100110100100'; + $chr['5'] = '100110100110'; + $chr['6'] = '100110110100'; + $chr['7'] = '100110110110'; + $chr['8'] = '110100100100'; + $chr['9'] = '110100100110'; + $chr['A'] = '110100110100'; + $chr['B'] = '110100110110'; + $chr['C'] = '110110100100'; + $chr['D'] = '110110100110'; + $chr['E'] = '110110110100'; + $chr['F'] = '110110110110'; + if ($checksum) { + // add checksum + $clen = strlen($code); + $p = 2; + $check = 0; + for ($i = ($clen - 1); $i >= 0; --$i) { + $check += (hexdec($code{$i}) * $p); + ++$p; + if ($p > 7) { + $p = 2; + } + } + $check %= 11; + if ($check > 0) { + $check = 11 - $check; + } + $code .= $check; + } + $seq = '110'; // left guard + $clen = strlen($code); + for ($i = 0; $i < $clen; ++$i) { + $digit = $code{$i}; + if (!isset($chr[$digit])) { + // invalid character + return false; + } + $seq .= $chr[$digit]; + } + $seq .= '1001'; // right guard + $bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 1, 'bcode' => array()); + return $this->binseq_to_array($seq, $bararray); + } + + /** + * Standard 2 of 5 barcodes. + * Used in airline ticket marking, photofinishing + * Contains digits (0 to 9) and encodes the data only in the width of bars. + * @param $code (string) code to represent. + * @param $checksum (boolean) if true add a checksum to the code + * @return array barcode representation. + * @protected + */ + protected function barcode_s25($code, $checksum=false) { + $chr['0'] = '10101110111010'; + $chr['1'] = '11101010101110'; + $chr['2'] = '10111010101110'; + $chr['3'] = '11101110101010'; + $chr['4'] = '10101110101110'; + $chr['5'] = '11101011101010'; + $chr['6'] = '10111011101010'; + $chr['7'] = '10101011101110'; + $chr['8'] = '10101110111010'; + $chr['9'] = '10111010111010'; + if ($checksum) { + // add checksum + $code .= $this->checksum_s25($code); + } + if((strlen($code) % 2) != 0) { + // add leading zero if code-length is odd + $code = '0'.$code; + } + $seq = '11011010'; + $clen = strlen($code); + for ($i = 0; $i < $clen; ++$i) { + $digit = $code{$i}; + if (!isset($chr[$digit])) { + // invalid character + return false; + } + $seq .= $chr[$digit]; + } + $seq .= '1101011'; + $bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 1, 'bcode' => array()); + return $this->binseq_to_array($seq, $bararray); + } + + /** + * Convert binary barcode sequence to TCPDF barcode array. + * @param $seq (string) barcode as binary sequence. + * @param $bararray (array) barcode array. + * òparam array $bararray TCPDF barcode array to fill up + * @return array barcode representation. + * @protected + */ + protected function binseq_to_array($seq, $bararray) { + $len = strlen($seq); + $w = 0; + $k = 0; + for ($i = 0; $i < $len; ++$i) { + $w += 1; + if (($i == ($len - 1)) OR (($i < ($len - 1)) AND ($seq{$i} != $seq{($i+1)}))) { + if ($seq{$i} == '1') { + $t = true; // bar + } else { + $t = false; // space + } + $bararray['bcode'][$k] = array('t' => $t, 'w' => $w, 'h' => 1, 'p' => 0); + $bararray['maxw'] += $w; + ++$k; + $w = 0; + } + } + return $bararray; + } + + /** + * Interleaved 2 of 5 barcodes. + * Compact numeric code, widely used in industry, air cargo + * Contains digits (0 to 9) and encodes the data in the width of both bars and spaces. + * @param $code (string) code to represent. + * @param $checksum (boolean) if true add a checksum to the code + * @return array barcode representation. + * @protected + */ + protected function barcode_i25($code, $checksum=false) { + $chr['0'] = '11221'; + $chr['1'] = '21112'; + $chr['2'] = '12112'; + $chr['3'] = '22111'; + $chr['4'] = '11212'; + $chr['5'] = '21211'; + $chr['6'] = '12211'; + $chr['7'] = '11122'; + $chr['8'] = '21121'; + $chr['9'] = '12121'; + $chr['A'] = '11'; + $chr['Z'] = '21'; + if ($checksum) { + // add checksum + $code .= $this->checksum_s25($code); + } + if((strlen($code) % 2) != 0) { + // add leading zero if code-length is odd + $code = '0'.$code; + } + // add start and stop codes + $code = 'AA'.strtolower($code).'ZA'; + + $bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 1, 'bcode' => array()); + $k = 0; + $clen = strlen($code); + for ($i = 0; $i < $clen; $i = ($i + 2)) { + $char_bar = $code{$i}; + $char_space = $code{$i+1}; + if((!isset($chr[$char_bar])) OR (!isset($chr[$char_space]))) { + // invalid character + return false; + } + // create a bar-space sequence + $seq = ''; + $chrlen = strlen($chr[$char_bar]); + for ($s = 0; $s < $chrlen; $s++){ + $seq .= $chr[$char_bar]{$s} . $chr[$char_space]{$s}; + } + $seqlen = strlen($seq); + for ($j = 0; $j < $seqlen; ++$j) { + if (($j % 2) == 0) { + $t = true; // bar + } else { + $t = false; // space + } + $w = $seq{$j}; + $bararray['bcode'][$k] = array('t' => $t, 'w' => $w, 'h' => 1, 'p' => 0); + $bararray['maxw'] += $w; + ++$k; + } + } + return $bararray; + } + + /** + * C128 barcodes. + * Very capable code, excellent density, high reliability; in very wide use world-wide + * @param $code (string) code to represent. + * @param $type (string) barcode type: A, B or C + * @return array barcode representation. + * @protected + */ + protected function barcode_c128($code, $type='B') { + $chr = array( + '212222', /* 00 */ + '222122', /* 01 */ + '222221', /* 02 */ + '121223', /* 03 */ + '121322', /* 04 */ + '131222', /* 05 */ + '122213', /* 06 */ + '122312', /* 07 */ + '132212', /* 08 */ + '221213', /* 09 */ + '221312', /* 10 */ + '231212', /* 11 */ + '112232', /* 12 */ + '122132', /* 13 */ + '122231', /* 14 */ + '113222', /* 15 */ + '123122', /* 16 */ + '123221', /* 17 */ + '223211', /* 18 */ + '221132', /* 19 */ + '221231', /* 20 */ + '213212', /* 21 */ + '223112', /* 22 */ + '312131', /* 23 */ + '311222', /* 24 */ + '321122', /* 25 */ + '321221', /* 26 */ + '312212', /* 27 */ + '322112', /* 28 */ + '322211', /* 29 */ + '212123', /* 30 */ + '212321', /* 31 */ + '232121', /* 32 */ + '111323', /* 33 */ + '131123', /* 34 */ + '131321', /* 35 */ + '112313', /* 36 */ + '132113', /* 37 */ + '132311', /* 38 */ + '211313', /* 39 */ + '231113', /* 40 */ + '231311', /* 41 */ + '112133', /* 42 */ + '112331', /* 43 */ + '132131', /* 44 */ + '113123', /* 45 */ + '113321', /* 46 */ + '133121', /* 47 */ + '313121', /* 48 */ + '211331', /* 49 */ + '231131', /* 50 */ + '213113', /* 51 */ + '213311', /* 52 */ + '213131', /* 53 */ + '311123', /* 54 */ + '311321', /* 55 */ + '331121', /* 56 */ + '312113', /* 57 */ + '312311', /* 58 */ + '332111', /* 59 */ + '314111', /* 60 */ + '221411', /* 61 */ + '431111', /* 62 */ + '111224', /* 63 */ + '111422', /* 64 */ + '121124', /* 65 */ + '121421', /* 66 */ + '141122', /* 67 */ + '141221', /* 68 */ + '112214', /* 69 */ + '112412', /* 70 */ + '122114', /* 71 */ + '122411', /* 72 */ + '142112', /* 73 */ + '142211', /* 74 */ + '241211', /* 75 */ + '221114', /* 76 */ + '413111', /* 77 */ + '241112', /* 78 */ + '134111', /* 79 */ + '111242', /* 80 */ + '121142', /* 81 */ + '121241', /* 82 */ + '114212', /* 83 */ + '124112', /* 84 */ + '124211', /* 85 */ + '411212', /* 86 */ + '421112', /* 87 */ + '421211', /* 88 */ + '212141', /* 89 */ + '214121', /* 90 */ + '412121', /* 91 */ + '111143', /* 92 */ + '111341', /* 93 */ + '131141', /* 94 */ + '114113', /* 95 */ + '114311', /* 96 */ + '411113', /* 97 */ + '411311', /* 98 */ + '113141', /* 99 */ + '114131', /* 100 */ + '311141', /* 101 */ + '411131', /* 102 */ + '211412', /* 103 START A */ + '211214', /* 104 START B */ + '211232', /* 105 START C */ + '233111', /* STOP */ + '200000' /* END */ + ); + $keys = ''; + switch(strtoupper($type)) { + case 'A': { + $startid = 103; + $keys = ' !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_'; + for ($i = 0; $i < 32; ++$i) { + $keys .= chr($i); + } + break; + } + case 'B': { + $startid = 104; + $keys = ' !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~'.chr(127); + break; + } + case 'C': { + $startid = 105; + $keys = ''; + if ((strlen($code) % 2) != 0) { + // The length of barcode value must be even ($code). You must pad the number with zeros + return false; + } + for ($i = 0; $i <= 99; ++$i) { + $keys .= chr($i); + } + $new_code = ''; + $hclen = (strlen($code) / 2); + for ($i = 0; $i < $hclen; ++$i) { + $new_code .= chr(intval($code{(2 * $i)}.$code{(2 * $i + 1)})); + } + $code = $new_code; + break; + } + default: { + return false; + } + } + // calculate check character + $sum = $startid; + $clen = strlen($code); + for ($i = 0; $i < $clen; ++$i) { + $sum += (strpos($keys, $code{$i}) * ($i+1)); + } + $check = ($sum % 103); + // add start, check and stop codes + $code = chr($startid).$code.chr($check).chr(106).chr(107); + $bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 1, 'bcode' => array()); + $k = 0; + $len = strlen($code); + for ($i = 0; $i < $len; ++$i) { + $ck = strpos($keys, $code{$i}); + if (($i == 0) OR ($i > ($len-4))) { + $char_num = ord($code{$i}); + $seq = $chr[$char_num]; + } elseif(($ck >= 0) AND isset($chr[$ck])) { + $seq = $chr[$ck]; + } else { + // invalid character + return false; + } + for ($j = 0; $j < 6; ++$j) { + if (($j % 2) == 0) { + $t = true; // bar + } else { + $t = false; // space + } + $w = $seq{$j}; + $bararray['bcode'][$k] = array('t' => $t, 'w' => $w, 'h' => 1, 'p' => 0); + $bararray['maxw'] += $w; + ++$k; + } + } + return $bararray; + } + + /** + * EAN13 and UPC-A barcodes. + * EAN13: European Article Numbering international retail product code + * UPC-A: Universal product code seen on almost all retail products in the USA and Canada + * UPC-E: Short version of UPC symbol + * @param $code (string) code to represent. + * @param $len (string) barcode type: 6 = UPC-E, 8 = EAN8, 13 = EAN13, 12 = UPC-A + * @return array barcode representation. + * @protected + */ + protected function barcode_eanupc($code, $len=13) { + $upce = false; + if ($len == 6) { + $len = 12; // UPC-A + $upce = true; // UPC-E mode + } + $data_len = $len - 1; + //Padding + $code = str_pad($code, $data_len, '0', STR_PAD_LEFT); + $code_len = strlen($code); + // calculate check digit + $sum_a = 0; + for ($i = 1; $i < $data_len; $i+=2) { + $sum_a += $code{$i}; + } + if ($len > 12) { + $sum_a *= 3; + } + $sum_b = 0; + for ($i = 0; $i < $data_len; $i+=2) { + $sum_b += ($code{$i}); + } + if ($len < 13) { + $sum_b *= 3; + } + $r = ($sum_a + $sum_b) % 10; + if($r > 0) { + $r = (10 - $r); + } + if ($code_len == $data_len) { + // add check digit + $code .= $r; + } elseif ($r !== intval($code{$data_len})) { + // wrong checkdigit + return false; + } + if ($len == 12) { + // UPC-A + $code = '0'.$code; + ++$len; + } + if ($upce) { + // convert UPC-A to UPC-E + $tmp = substr($code, 4, 3); + if (($tmp == '000') OR ($tmp == '100') OR ($tmp == '200')) { + // manufacturer code ends in 000, 100, or 200 + $upce_code = substr($code, 2, 2).substr($code, 9, 3).substr($code, 4, 1); + } else { + $tmp = substr($code, 5, 2); + if ($tmp == '00') { + // manufacturer code ends in 00 + $upce_code = substr($code, 2, 3).substr($code, 10, 2).'3'; + } else { + $tmp = substr($code, 6, 1); + if ($tmp == '0') { + // manufacturer code ends in 0 + $upce_code = substr($code, 2, 4).substr($code, 11, 1).'4'; + } else { + // manufacturer code does not end in zero + $upce_code = substr($code, 2, 5).substr($code, 11, 1); + } + } + } + } + //Convert digits to bars + $codes = array( + 'A'=>array( // left odd parity + '0'=>'0001101', + '1'=>'0011001', + '2'=>'0010011', + '3'=>'0111101', + '4'=>'0100011', + '5'=>'0110001', + '6'=>'0101111', + '7'=>'0111011', + '8'=>'0110111', + '9'=>'0001011'), + 'B'=>array( // left even parity + '0'=>'0100111', + '1'=>'0110011', + '2'=>'0011011', + '3'=>'0100001', + '4'=>'0011101', + '5'=>'0111001', + '6'=>'0000101', + '7'=>'0010001', + '8'=>'0001001', + '9'=>'0010111'), + 'C'=>array( // right + '0'=>'1110010', + '1'=>'1100110', + '2'=>'1101100', + '3'=>'1000010', + '4'=>'1011100', + '5'=>'1001110', + '6'=>'1010000', + '7'=>'1000100', + '8'=>'1001000', + '9'=>'1110100') + ); + $parities = array( + '0'=>array('A','A','A','A','A','A'), + '1'=>array('A','A','B','A','B','B'), + '2'=>array('A','A','B','B','A','B'), + '3'=>array('A','A','B','B','B','A'), + '4'=>array('A','B','A','A','B','B'), + '5'=>array('A','B','B','A','A','B'), + '6'=>array('A','B','B','B','A','A'), + '7'=>array('A','B','A','B','A','B'), + '8'=>array('A','B','A','B','B','A'), + '9'=>array('A','B','B','A','B','A') + ); + $upce_parities = array(); + $upce_parities[0] = array( + '0'=>array('B','B','B','A','A','A'), + '1'=>array('B','B','A','B','A','A'), + '2'=>array('B','B','A','A','B','A'), + '3'=>array('B','B','A','A','A','B'), + '4'=>array('B','A','B','B','A','A'), + '5'=>array('B','A','A','B','B','A'), + '6'=>array('B','A','A','A','B','B'), + '7'=>array('B','A','B','A','B','A'), + '8'=>array('B','A','B','A','A','B'), + '9'=>array('B','A','A','B','A','B') + ); + $upce_parities[1] = array( + '0'=>array('A','A','A','B','B','B'), + '1'=>array('A','A','B','A','B','B'), + '2'=>array('A','A','B','B','A','B'), + '3'=>array('A','A','B','B','B','A'), + '4'=>array('A','B','A','A','B','B'), + '5'=>array('A','B','B','A','A','B'), + '6'=>array('A','B','B','B','A','A'), + '7'=>array('A','B','A','B','A','B'), + '8'=>array('A','B','A','B','B','A'), + '9'=>array('A','B','B','A','B','A') + ); + $k = 0; + $seq = '101'; // left guard bar + if ($upce) { + $bararray = array('code' => $upce_code, 'maxw' => 0, 'maxh' => 1, 'bcode' => array()); + $p = $upce_parities[$code{1}][$r]; + for ($i = 0; $i < 6; ++$i) { + $seq .= $codes[$p[$i]][$upce_code{$i}]; + } + $seq .= '010101'; // right guard bar + } else { + $bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 1, 'bcode' => array()); + $half_len = ceil($len / 2); + if ($len == 8) { + for ($i = 0; $i < $half_len; ++$i) { + $seq .= $codes['A'][$code{$i}]; + } + } else { + $p = $parities[$code{0}]; + for ($i = 1; $i < $half_len; ++$i) { + $seq .= $codes[$p[$i-1]][$code{$i}]; + } + } + $seq .= '01010'; // center guard bar + for ($i = $half_len; $i < $len; ++$i) { + $seq .= $codes['C'][$code{$i}]; + } + $seq .= '101'; // right guard bar + } + $clen = strlen($seq); + $w = 0; + for ($i = 0; $i < $clen; ++$i) { + $w += 1; + if (($i == ($clen - 1)) OR (($i < ($clen - 1)) AND ($seq{$i} != $seq{($i+1)}))) { + if ($seq{$i} == '1') { + $t = true; // bar + } else { + $t = false; // space + } + $bararray['bcode'][$k] = array('t' => $t, 'w' => $w, 'h' => 1, 'p' => 0); + $bararray['maxw'] += $w; + ++$k; + $w = 0; + } + } + return $bararray; + } + + /** + * UPC-Based Extentions + * 2-Digit Ext.: Used to indicate magazines and newspaper issue numbers + * 5-Digit Ext.: Used to mark suggested retail price of books + * @param $code (string) code to represent. + * @param $len (string) barcode type: 2 = 2-Digit, 5 = 5-Digit + * @return array barcode representation. + * @protected + */ + protected function barcode_eanext($code, $len=5) { + //Padding + $code = str_pad($code, $len, '0', STR_PAD_LEFT); + // calculate check digit + if ($len == 2) { + $r = $code % 4; + } elseif ($len == 5) { + $r = (3 * ($code{0} + $code{2} + $code{4})) + (9 * ($code{1} + $code{3})); + $r %= 10; + } else { + return false; + } + //Convert digits to bars + $codes = array( + 'A'=>array( // left odd parity + '0'=>'0001101', + '1'=>'0011001', + '2'=>'0010011', + '3'=>'0111101', + '4'=>'0100011', + '5'=>'0110001', + '6'=>'0101111', + '7'=>'0111011', + '8'=>'0110111', + '9'=>'0001011'), + 'B'=>array( // left even parity + '0'=>'0100111', + '1'=>'0110011', + '2'=>'0011011', + '3'=>'0100001', + '4'=>'0011101', + '5'=>'0111001', + '6'=>'0000101', + '7'=>'0010001', + '8'=>'0001001', + '9'=>'0010111') + ); + $parities = array(); + $parities[2] = array( + '0'=>array('A','A'), + '1'=>array('A','B'), + '2'=>array('B','A'), + '3'=>array('B','B') + ); + $parities[5] = array( + '0'=>array('B','B','A','A','A'), + '1'=>array('B','A','B','A','A'), + '2'=>array('B','A','A','B','A'), + '3'=>array('B','A','A','A','B'), + '4'=>array('A','B','B','A','A'), + '5'=>array('A','A','B','B','A'), + '6'=>array('A','A','A','B','B'), + '7'=>array('A','B','A','B','A'), + '8'=>array('A','B','A','A','B'), + '9'=>array('A','A','B','A','B') + ); + $p = $parities[$len][$r]; + $seq = '1011'; // left guard bar + $seq .= $codes[$p[0]][$code{0}]; + for ($i = 1; $i < $len; ++$i) { + $seq .= '01'; // separator + $seq .= $codes[$p[$i]][$code{$i}]; + } + $bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 1, 'bcode' => array()); + return $this->binseq_to_array($seq, $bararray); + } + + /** + * POSTNET and PLANET barcodes. + * Used by U.S. Postal Service for automated mail sorting + * @param $code (string) zip code to represent. Must be a string containing a zip code of the form DDDDD or DDDDD-DDDD. + * @param $planet (boolean) if true print the PLANET barcode, otherwise print POSTNET + * @return array barcode representation. + * @protected + */ + protected function barcode_postnet($code, $planet=false) { + // bar lenght + if ($planet) { + $barlen = Array( + 0 => Array(1,1,2,2,2), + 1 => Array(2,2,2,1,1), + 2 => Array(2,2,1,2,1), + 3 => Array(2,2,1,1,2), + 4 => Array(2,1,2,2,1), + 5 => Array(2,1,2,1,2), + 6 => Array(2,1,1,2,2), + 7 => Array(1,2,2,2,1), + 8 => Array(1,2,2,1,2), + 9 => Array(1,2,1,2,2) + ); + } else { + $barlen = Array( + 0 => Array(2,2,1,1,1), + 1 => Array(1,1,1,2,2), + 2 => Array(1,1,2,1,2), + 3 => Array(1,1,2,2,1), + 4 => Array(1,2,1,1,2), + 5 => Array(1,2,1,2,1), + 6 => Array(1,2,2,1,1), + 7 => Array(2,1,1,1,2), + 8 => Array(2,1,1,2,1), + 9 => Array(2,1,2,1,1) + ); + } + $bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 2, 'bcode' => array()); + $k = 0; + $code = str_replace('-', '', $code); + $code = str_replace(' ', '', $code); + $len = strlen($code); + // calculate checksum + $sum = 0; + for ($i = 0; $i < $len; ++$i) { + $sum += intval($code{$i}); + } + $chkd = ($sum % 10); + if($chkd > 0) { + $chkd = (10 - $chkd); + } + $code .= $chkd; + $len = strlen($code); + // start bar + $bararray['bcode'][$k++] = array('t' => 1, 'w' => 1, 'h' => 2, 'p' => 0); + $bararray['bcode'][$k++] = array('t' => 0, 'w' => 1, 'h' => 2, 'p' => 0); + $bararray['maxw'] += 2; + for ($i = 0; $i < $len; ++$i) { + for ($j = 0; $j < 5; ++$j) { + $h = $barlen[$code{$i}][$j]; + $p = floor(1 / $h); + $bararray['bcode'][$k++] = array('t' => 1, 'w' => 1, 'h' => $h, 'p' => $p); + $bararray['bcode'][$k++] = array('t' => 0, 'w' => 1, 'h' => 2, 'p' => 0); + $bararray['maxw'] += 2; + } + } + // end bar + $bararray['bcode'][$k++] = array('t' => 1, 'w' => 1, 'h' => 2, 'p' => 0); + $bararray['maxw'] += 1; + return $bararray; + } + + /** + * RMS4CC - CBC - KIX + * RMS4CC (Royal Mail 4-state Customer Code) - CBC (Customer Bar Code) - KIX (Klant index - Customer index) + * RM4SCC is the name of the barcode symbology used by the Royal Mail for its Cleanmail service. + * @param $code (string) code to print + * @param $kix (boolean) if true prints the KIX variation (doesn't use the start and end symbols, and the checksum) - in this case the house number must be sufficed with an X and placed at the end of the code. + * @return array barcode representation. + * @protected + */ + protected function barcode_rms4cc($code, $kix=false) { + $notkix = !$kix; + // bar mode + // 1 = pos 1, length 2 + // 2 = pos 1, length 3 + // 3 = pos 2, length 1 + // 4 = pos 2, length 2 + $barmode = array( + '0' => array(3,3,2,2), + '1' => array(3,4,1,2), + '2' => array(3,4,2,1), + '3' => array(4,3,1,2), + '4' => array(4,3,2,1), + '5' => array(4,4,1,1), + '6' => array(3,1,4,2), + '7' => array(3,2,3,2), + '8' => array(3,2,4,1), + '9' => array(4,1,3,2), + 'A' => array(4,1,4,1), + 'B' => array(4,2,3,1), + 'C' => array(3,1,2,4), + 'D' => array(3,2,1,4), + 'E' => array(3,2,2,3), + 'F' => array(4,1,1,4), + 'G' => array(4,1,2,3), + 'H' => array(4,2,1,3), + 'I' => array(1,3,4,2), + 'J' => array(1,4,3,2), + 'K' => array(1,4,4,1), + 'L' => array(2,3,3,2), + 'M' => array(2,3,4,1), + 'N' => array(2,4,3,1), + 'O' => array(1,3,2,4), + 'P' => array(1,4,1,4), + 'Q' => array(1,4,2,3), + 'R' => array(2,3,1,4), + 'S' => array(2,3,2,3), + 'T' => array(2,4,1,3), + 'U' => array(1,1,4,4), + 'V' => array(1,2,3,4), + 'W' => array(1,2,4,3), + 'X' => array(2,1,3,4), + 'Y' => array(2,1,4,3), + 'Z' => array(2,2,3,3) + ); + $code = strtoupper($code); + $len = strlen($code); + $bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 3, 'bcode' => array()); + if ($notkix) { + // table for checksum calculation (row,col) + $checktable = array( + '0' => array(1,1), + '1' => array(1,2), + '2' => array(1,3), + '3' => array(1,4), + '4' => array(1,5), + '5' => array(1,0), + '6' => array(2,1), + '7' => array(2,2), + '8' => array(2,3), + '9' => array(2,4), + 'A' => array(2,5), + 'B' => array(2,0), + 'C' => array(3,1), + 'D' => array(3,2), + 'E' => array(3,3), + 'F' => array(3,4), + 'G' => array(3,5), + 'H' => array(3,0), + 'I' => array(4,1), + 'J' => array(4,2), + 'K' => array(4,3), + 'L' => array(4,4), + 'M' => array(4,5), + 'N' => array(4,0), + 'O' => array(5,1), + 'P' => array(5,2), + 'Q' => array(5,3), + 'R' => array(5,4), + 'S' => array(5,5), + 'T' => array(5,0), + 'U' => array(0,1), + 'V' => array(0,2), + 'W' => array(0,3), + 'X' => array(0,4), + 'Y' => array(0,5), + 'Z' => array(0,0) + ); + $row = 0; + $col = 0; + for ($i = 0; $i < $len; ++$i) { + $row += $checktable[$code{$i}][0]; + $col += $checktable[$code{$i}][1]; + } + $row %= 6; + $col %= 6; + $chk = array_keys($checktable, array($row,$col)); + $code .= $chk[0]; + ++$len; + } + $k = 0; + if ($notkix) { + // start bar + $bararray['bcode'][$k++] = array('t' => 1, 'w' => 1, 'h' => 2, 'p' => 0); + $bararray['bcode'][$k++] = array('t' => 0, 'w' => 1, 'h' => 2, 'p' => 0); + $bararray['maxw'] += 2; + } + for ($i = 0; $i < $len; ++$i) { + for ($j = 0; $j < 4; ++$j) { + switch ($barmode[$code{$i}][$j]) { + case 1: { + $p = 0; + $h = 2; + break; + } + case 2: { + $p = 0; + $h = 3; + break; + } + case 3: { + $p = 1; + $h = 1; + break; + } + case 4: { + $p = 1; + $h = 2; + break; + } + } + $bararray['bcode'][$k++] = array('t' => 1, 'w' => 1, 'h' => $h, 'p' => $p); + $bararray['bcode'][$k++] = array('t' => 0, 'w' => 1, 'h' => 2, 'p' => 0); + $bararray['maxw'] += 2; + } + } + if ($notkix) { + // stop bar + $bararray['bcode'][$k++] = array('t' => 1, 'w' => 1, 'h' => 3, 'p' => 0); + $bararray['maxw'] += 1; + } + return $bararray; + } + + /** + * CODABAR barcodes. + * Older code often used in library systems, sometimes in blood banks + * @param $code (string) code to represent. + * @return array barcode representation. + * @protected + */ + protected function barcode_codabar($code) { + $chr = array( + '0' => '11111221', + '1' => '11112211', + '2' => '11121121', + '3' => '22111111', + '4' => '11211211', + '5' => '21111211', + '6' => '12111121', + '7' => '12112111', + '8' => '12211111', + '9' => '21121111', + '-' => '11122111', + '$' => '11221111', + ':' => '21112121', + '/' => '21211121', + '.' => '21212111', + '+' => '11222221', + 'A' => '11221211', + 'B' => '12121121', + 'C' => '11121221', + 'D' => '11122211' + ); + $bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 1, 'bcode' => array()); + $k = 0; + $w = 0; + $seq = ''; + $code = 'A'.strtoupper($code).'A'; + $len = strlen($code); + for ($i = 0; $i < $len; ++$i) { + if (!isset($chr[$code{$i}])) { + return false; + } + $seq = $chr[$code{$i}]; + for ($j = 0; $j < 8; ++$j) { + if (($j % 2) == 0) { + $t = true; // bar + } else { + $t = false; // space + } + $w = $seq{$j}; + $bararray['bcode'][$k] = array('t' => $t, 'w' => $w, 'h' => 1, 'p' => 0); + $bararray['maxw'] += $w; + ++$k; + } + } + return $bararray; + } + + /** + * CODE11 barcodes. + * Used primarily for labeling telecommunications equipment + * @param $code (string) code to represent. + * @return array barcode representation. + * @protected + */ + protected function barcode_code11($code) { + $chr = array( + '0' => '111121', + '1' => '211121', + '2' => '121121', + '3' => '221111', + '4' => '112121', + '5' => '212111', + '6' => '122111', + '7' => '111221', + '8' => '211211', + '9' => '211111', + '-' => '112111', + 'S' => '112211' + ); + + $bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 1, 'bcode' => array()); + $k = 0; + $w = 0; + $seq = ''; + $len = strlen($code); + // calculate check digit C + $p = 1; + $check = 0; + for ($i = ($len - 1); $i >= 0; --$i) { + $digit = $code{$i}; + if ($digit == '-') { + $dval = 10; + } else { + $dval = intval($digit); + } + $check += ($dval * $p); + ++$p; + if ($p > 10) { + $p = 1; + } + } + $check %= 11; + if ($check == 10) { + $check = '-'; + } + $code .= $check; + if ($len > 10) { + // calculate check digit K + $p = 1; + $check = 0; + for ($i = $len; $i >= 0; --$i) { + $digit = $code{$i}; + if ($digit == '-') { + $dval = 10; + } else { + $dval = intval($digit); + } + $check += ($dval * $p); + ++$p; + if ($p > 9) { + $p = 1; + } + } + $check %= 11; + $code .= $check; + ++$len; + } + $code = 'S'.$code.'S'; + $len += 3; + for ($i = 0; $i < $len; ++$i) { + if (!isset($chr[$code{$i}])) { + return false; + } + $seq = $chr[$code{$i}]; + for ($j = 0; $j < 6; ++$j) { + if (($j % 2) == 0) { + $t = true; // bar + } else { + $t = false; // space + } + $w = $seq{$j}; + $bararray['bcode'][$k] = array('t' => $t, 'w' => $w, 'h' => 1, 'p' => 0); + $bararray['maxw'] += $w; + ++$k; + } + } + return $bararray; + } + + /** + * Pharmacode + * Contains digits (0 to 9) + * @param $code (string) code to represent. + * @return array barcode representation. + * @protected + */ + protected function barcode_pharmacode($code) { + $seq = ''; + $code = intval($code); + while ($code > 0) { + if (($code % 2) == 0) { + $seq .= '11100'; + $code -= 2; + } else { + $seq .= '100'; + $code -= 1; + } + $code /= 2; + } + $seq = substr($seq, 0, -2); + $seq = strrev($seq); + $bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 1, 'bcode' => array()); + return $this->binseq_to_array($seq, $bararray); + } + + /** + * Pharmacode two-track + * Contains digits (0 to 9) + * @param $code (string) code to represent. + * @return array barcode representation. + * @protected + */ + protected function barcode_pharmacode2t($code) { + $seq = ''; + $code = intval($code); + do { + switch ($code % 3) { + case 0: { + $seq .= '3'; + $code = ($code - 3) / 3; + break; + } + case 1: { + $seq .= '1'; + $code = ($code - 1) / 3; + break; + } + case 2: { + $seq .= '2'; + $code = ($code - 2) / 3; + break; + } + } + } while($code != 0); + $seq = strrev($seq); + $k = 0; + $bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 2, 'bcode' => array()); + $len = strlen($seq); + for ($i = 0; $i < $len; ++$i) { + switch ($seq{$i}) { + case '1': { + $p = 1; + $h = 1; + break; + } + case '2': { + $p = 0; + $h = 1; + break; + } + case '3': { + $p = 0; + $h = 2; + break; + } + } + $bararray['bcode'][$k++] = array('t' => 1, 'w' => 1, 'h' => $h, 'p' => $p); + $bararray['bcode'][$k++] = array('t' => 0, 'w' => 1, 'h' => 2, 'p' => 0); + $bararray['maxw'] += 2; + } + unset($bararray['bcode'][($k - 1)]); + --$bararray['maxw']; + return $bararray; + } + + + /** + * IMB - Intelligent Mail Barcode - Onecode - USPS-B-3200 + * (requires PHP bcmath extension) + * Intelligent Mail barcode is a 65-bar code for use on mail in the United States. + * The fields are described as follows:
    • The Barcode Identifier shall be assigned by USPS to encode the presort identification that is currently printed in human readable form on the optional endorsement line (OEL) as well as for future USPS use. This shall be two digits, with the second digit in the range of 0–4. The allowable encoding ranges shall be 00–04, 10–14, 20–24, 30–34, 40–44, 50–54, 60–64, 70–74, 80–84, and 90–94.
    • The Service Type Identifier shall be assigned by USPS for any combination of services requested on the mailpiece. The allowable encoding range shall be 000http://it2.php.net/manual/en/function.dechex.php–999. Each 3-digit value shall correspond to a particular mail class with a particular combination of service(s). Each service program, such as OneCode Confirm and OneCode ACS, shall provide the list of Service Type Identifier values.
    • The Mailer or Customer Identifier shall be assigned by USPS as a unique, 6 or 9 digit number that identifies a business entity. The allowable encoding range for the 6 digit Mailer ID shall be 000000- 899999, while the allowable encoding range for the 9 digit Mailer ID shall be 900000000-999999999.
    • The Serial or Sequence Number shall be assigned by the mailer for uniquely identifying and tracking mailpieces. The allowable encoding range shall be 000000000–999999999 when used with a 6 digit Mailer ID and 000000-999999 when used with a 9 digit Mailer ID. e. The Delivery Point ZIP Code shall be assigned by the mailer for routing the mailpiece. This shall replace POSTNET for routing the mailpiece to its final delivery point. The length may be 0, 5, 9, or 11 digits. The allowable encoding ranges shall be no ZIP Code, 00000–99999, 000000000–999999999, and 00000000000–99999999999.
    + * @param $code (string) code to print, separate the ZIP (routing code) from the rest using a minus char '-' (BarcodeID_ServiceTypeID_MailerID_SerialNumber-RoutingCode) + * @return array barcode representation. + * @protected + */ + protected function barcode_imb($code) { + $asc_chr = array(4,0,2,6,3,5,1,9,8,7,1,2,0,6,4,8,2,9,5,3,0,1,3,7,4,6,8,9,2,0,5,1,9,4,3,8,6,7,1,2,4,3,9,5,7,8,3,0,2,1,4,0,9,1,7,0,2,4,6,3,7,1,9,5,8); + $dsc_chr = array(7,1,9,5,8,0,2,4,6,3,5,8,9,7,3,0,6,1,7,4,6,8,9,2,5,1,7,5,4,3,8,7,6,0,2,5,4,9,3,0,1,6,8,2,0,4,5,9,6,7,5,2,6,3,8,5,1,9,8,7,4,0,2,6,3); + $asc_pos = array(3,0,8,11,1,12,8,11,10,6,4,12,2,7,9,6,7,9,2,8,4,0,12,7,10,9,0,7,10,5,7,9,6,8,2,12,1,4,2,0,1,5,4,6,12,1,0,9,4,7,5,10,2,6,9,11,2,12,6,7,5,11,0,3,2); + $dsc_pos = array(2,10,12,5,9,1,5,4,3,9,11,5,10,1,6,3,4,1,10,0,2,11,8,6,1,12,3,8,6,4,4,11,0,6,1,9,11,5,3,7,3,10,7,11,8,2,10,3,5,8,0,3,12,11,8,4,5,1,3,0,7,12,9,8,10); + $code_arr = explode('-', $code); + $tracking_number = $code_arr[0]; + if (isset($code_arr[1])) { + $routing_code = $code_arr[1]; + } else { + $routing_code = ''; + } + // Conversion of Routing Code + switch (strlen($routing_code)) { + case 0: { + $binary_code = 0; + break; + } + case 5: { + $binary_code = bcadd($routing_code, '1'); + break; + } + case 9: { + $binary_code = bcadd($routing_code, '100001'); + break; + } + case 11: { + $binary_code = bcadd($routing_code, '1000100001'); + break; + } + default: { + return false; + break; + } + } + $binary_code = bcmul($binary_code, 10); + $binary_code = bcadd($binary_code, $tracking_number{0}); + $binary_code = bcmul($binary_code, 5); + $binary_code = bcadd($binary_code, $tracking_number{1}); + $binary_code .= substr($tracking_number, 2, 18); + // convert to hexadecimal + $binary_code = $this->dec_to_hex($binary_code); + // pad to get 13 bytes + $binary_code = str_pad($binary_code, 26, '0', STR_PAD_LEFT); + // convert string to array of bytes + $binary_code_arr = chunk_split($binary_code, 2, "\r"); + $binary_code_arr = substr($binary_code_arr, 0, -1); + $binary_code_arr = explode("\r", $binary_code_arr); + // calculate frame check sequence + $fcs = $this->imb_crc11fcs($binary_code_arr); + // exclude first 2 bits from first byte + $first_byte = sprintf('%2s', dechex((hexdec($binary_code_arr[0]) << 2) >> 2)); + $binary_code_102bit = $first_byte.substr($binary_code, 2); + // convert binary data to codewords + $codewords = array(); + $data = $this->hex_to_dec($binary_code_102bit); + $codewords[0] = bcmod($data, 636) * 2; + $data = bcdiv($data, 636); + for ($i = 1; $i < 9; ++$i) { + $codewords[$i] = bcmod($data, 1365); + $data = bcdiv($data, 1365); + } + $codewords[9] = $data; + if (($fcs >> 10) == 1) { + $codewords[9] += 659; + } + // generate lookup tables + $table2of13 = $this->imb_tables(2, 78); + $table5of13 = $this->imb_tables(5, 1287); + // convert codewords to characters + $characters = array(); + $bitmask = 512; + foreach($codewords as $k => $val) { + if ($val <= 1286) { + $chrcode = $table5of13[$val]; + } else { + $chrcode = $table2of13[($val - 1287)]; + } + if (($fcs & $bitmask) > 0) { + // bitwise invert + $chrcode = ((~$chrcode) & 8191); + } + $characters[] = $chrcode; + $bitmask /= 2; + } + $characters = array_reverse($characters); + // build bars + $k = 0; + $bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 3, 'bcode' => array()); + for ($i = 0; $i < 65; ++$i) { + $asc = (($characters[$asc_chr[$i]] & pow(2, $asc_pos[$i])) > 0); + $dsc = (($characters[$dsc_chr[$i]] & pow(2, $dsc_pos[$i])) > 0); + if ($asc AND $dsc) { + // full bar (F) + $p = 0; + $h = 3; + } elseif ($asc) { + // ascender (A) + $p = 0; + $h = 2; + } elseif ($dsc) { + // descender (D) + $p = 1; + $h = 2; + } else { + // tracker (T) + $p = 1; + $h = 1; + } + $bararray['bcode'][$k++] = array('t' => 1, 'w' => 1, 'h' => $h, 'p' => $p); + $bararray['bcode'][$k++] = array('t' => 0, 'w' => 1, 'h' => 2, 'p' => 0); + $bararray['maxw'] += 2; + } + unset($bararray['bcode'][($k - 1)]); + --$bararray['maxw']; + return $bararray; + } + + /** + * Convert large integer number to hexadecimal representation. + * (requires PHP bcmath extension) + * @param $number (string) number to convert specified as a string + * @return string hexadecimal representation + */ + public function dec_to_hex($number) { + $i = 0; + $hex = array(); + if($number == 0) { + return '00'; + } + while($number > 0) { + if($number == 0) { + array_push($hex, '0'); + } else { + array_push($hex, strtoupper(dechex(bcmod($number, '16')))); + $number = bcdiv($number, '16', 0); + } + } + $hex = array_reverse($hex); + return implode($hex); + } + + /** + * Convert large hexadecimal number to decimal representation (string). + * (requires PHP bcmath extension) + * @param $hex (string) hexadecimal number to convert specified as a string + * @return string hexadecimal representation + */ + public function hex_to_dec($hex) { + $dec = 0; + $bitval = 1; + $len = strlen($hex); + for($pos = ($len - 1); $pos >= 0; --$pos) { + $dec = bcadd($dec, bcmul(hexdec($hex{$pos}), $bitval)); + $bitval = bcmul($bitval, 16); + } + return $dec; + } + + /** + * Intelligent Mail Barcode calculation of Frame Check Sequence + * @param $code_arr (string) array of hexadecimal values (13 bytes holding 102 bits right justified). + * @return int 11 bit Frame Check Sequence as integer (decimal base) + * @protected + */ + protected function imb_crc11fcs($code_arr) { + $genpoly = 0x0F35; // generator polynomial + $fcs = 0x07FF; // Frame Check Sequence + // do most significant byte skipping the 2 most significant bits + $data = hexdec($code_arr[0]) << 5; + for ($bit = 2; $bit < 8; ++$bit) { + if (($fcs ^ $data) & 0x400) { + $fcs = ($fcs << 1) ^ $genpoly; + } else { + $fcs = ($fcs << 1); + } + $fcs &= 0x7FF; + $data <<= 1; + } + // do rest of bytes + for ($byte = 1; $byte < 13; ++$byte) { + $data = hexdec($code_arr[$byte]) << 3; + for ($bit = 0; $bit < 8; ++$bit) { + if (($fcs ^ $data) & 0x400) { + $fcs = ($fcs << 1) ^ $genpoly; + } else { + $fcs = ($fcs << 1); + } + $fcs &= 0x7FF; + $data <<= 1; + } + } + return $fcs; + } + + /** + * Reverse unsigned short value + * @param $num (int) value to reversr + * @return int reversed value + * @protected + */ + protected function imb_reverse_us($num) { + $rev = 0; + for ($i = 0; $i < 16; ++$i) { + $rev <<= 1; + $rev |= ($num & 1); + $num >>= 1; + } + return $rev; + } + + /** + * generate Nof13 tables used for Intelligent Mail Barcode + * @param $n (int) is the type of table: 2 for 2of13 table, 5 for 5of13table + * @param $size (int) size of table (78 for n=2 and 1287 for n=5) + * @return array requested table + * @protected + */ + protected function imb_tables($n, $size) { + $table = array(); + $lli = 0; // LUT lower index + $lui = $size - 1; // LUT upper index + for ($count = 0; $count < 8192; ++$count) { + $bit_count = 0; + for ($bit_index = 0; $bit_index < 13; ++$bit_index) { + $bit_count += intval(($count & (1 << $bit_index)) != 0); + } + // if we don't have the right number of bits on, go on to the next value + if ($bit_count == $n) { + $reverse = ($this->imb_reverse_us($count) >> 3); + // if the reverse is less than count, we have already visited this pair before + if ($reverse >= $count) { + // If count is symmetric, place it at the first free slot from the end of the list. + // Otherwise, place it at the first free slot from the beginning of the list AND place $reverse ath the next free slot from the beginning of the list + if ($reverse == $count) { + $table[$lui] = $count; + --$lui; + } else { + $table[$lli] = $count; + ++$lli; + $table[$lli] = $reverse; + ++$lli; + } + } + } + } + return $table; + } + +} // end of class +//============================================================+ +// END OF FILE +//============================================================+ diff --git a/libraries/tcpdf/cache/chapter_demo_1.txt b/libraries/tcpdf/cache/chapter_demo_1.txt new file mode 100644 index 000000000..4025de930 --- /dev/null +++ b/libraries/tcpdf/cache/chapter_demo_1.txt @@ -0,0 +1,19 @@ +Lorem ipsum dolor sit amet, consectetur adipiscing elit. In sed imperdiet lectus. Phasellus quis velit velit, non condimentum quam. Sed neque urna, ultrices ac volutpat vel, laoreet vitae augue. Sed vel velit erat. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Cras eget velit nulla, eu sagittis elit. Nunc ac arcu est, in lobortis tellus. Praesent condimentum rhoncus sodales. In hac habitasse platea dictumst. Proin porta eros pharetra enim tincidunt dignissim nec vel dolor. Cras sapien elit, ornare ac dignissim eu, ultricies ac eros. Maecenas augue magna, ultrices a congue in, mollis eu nulla. Nunc venenatis massa at est eleifend faucibus. Vivamus sed risus lectus, nec interdum nunc. + +Fusce et felis vitae diam lobortis sollicitudin. Aenean tincidunt accumsan nisi, id vehicula quam laoreet elementum. Phasellus egestas interdum erat, et viverra ipsum ultricies ac. Praesent sagittis augue at augue volutpat eleifend. Cras nec orci neque. Mauris bibendum posuere blandit. Donec feugiat mollis dui sit amet pellentesque. Sed a enim justo. Donec tincidunt, nisl eget elementum aliquam, odio ipsum ultrices quam, eu porttitor ligula urna at lorem. Donec varius, eros et convallis laoreet, ligula tellus consequat felis, ut ornare metus tellus sodales velit. Duis sed diam ante. Ut rutrum malesuada massa, vitae consectetur ipsum rhoncus sed. Suspendisse potenti. Pellentesque a congue massa. + +Integer non sem eget neque mattis accumsan. Maecenas eu nisl mauris, sit amet interdum ipsum. In pharetra erat vel lectus venenatis elementum. Nulla non elit ligula, sit amet mollis urna. Morbi ut gravida est. Mauris tincidunt sem et turpis molestie malesuada. Curabitur vel nulla risus, sed mollis erat. Suspendisse vehicula accumsan purus nec varius. Donec fermentum lorem id felis sodales dictum. Quisque et dolor ipsum. Nam luctus consectetur dui vitae fermentum. Curabitur sodales consequat augue, id ultricies augue tempor ac. Aliquam ac magna id ipsum vehicula bibendum. Sed elementum congue tristique. Phasellus vel lorem eu lectus porta sodales. Etiam neque tortor, sagittis id pharetra quis, laoreet vel arcu. + +Cras quam mi, ornare laoreet laoreet vel, vehicula at lacus. Maecenas a lacus accumsan augue convallis sagittis sed quis odio. Morbi sit amet turpis diam, dictum convallis urna. Cras eget interdum augue. Cras eu nisi sit amet dolor faucibus porttitor. Suspendisse potenti. Nunc vitae dolor risus, at cursus libero. Suspendisse bibendum tellus non nibh hendrerit tristique. Mauris eget orci elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam porta libero non ante laoreet semper. Proin volutpat sodales mi, ac fermentum erat sagittis in. Vivamus at viverra felis. Ut pretium facilisis ante et pharetra. + +Nulla facilisi. Cras varius quam eget libero aliquam vitae tincidunt leo rutrum. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Pellentesque a nisl massa, quis pretium urna. Proin vel porttitor tortor. Cras rhoncus congue velit in bibendum. Donec pharetra semper augue id lacinia. Quisque magna quam, hendrerit eu aliquam et, pellentesque ut tellus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Maecenas nulla quam, rutrum eu feugiat at, elementum eu libero. Maecenas ullamcorper leo et turpis rutrum ac laoreet eros faucibus. Phasellus condimentum lorem quis neque imperdiet quis molestie enim iaculis. Phasellus risus est, vestibulum ut convallis ultrices, dignissim nec erat. Etiam congue lobortis laoreet. Nulla ut neque sed velit dapibus semper. Quisque nec dolor id nibh eleifend iaculis. Vivamus vitae fermentum odio. Etiam malesuada quam in nulla aliquam sed convallis dui feugiat. + +Lorem ipsum dolor sit amet, consectetur adipiscing elit. In sed imperdiet lectus. Phasellus quis velit velit, non condimentum quam. Sed neque urna, ultrices ac volutpat vel, laoreet vitae augue. Sed vel velit erat. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Cras eget velit nulla, eu sagittis elit. Nunc ac arcu est, in lobortis tellus. Praesent condimentum rhoncus sodales. In hac habitasse platea dictumst. Proin porta eros pharetra enim tincidunt dignissim nec vel dolor. Cras sapien elit, ornare ac dignissim eu, ultricies ac eros. Maecenas augue magna, ultrices a congue in, mollis eu nulla. Nunc venenatis massa at est eleifend faucibus. Vivamus sed risus lectus, nec interdum nunc. + +Fusce et felis vitae diam lobortis sollicitudin. Aenean tincidunt accumsan nisi, id vehicula quam laoreet elementum. Phasellus egestas interdum erat, et viverra ipsum ultricies ac. Praesent sagittis augue at augue volutpat eleifend. Cras nec orci neque. Mauris bibendum posuere blandit. Donec feugiat mollis dui sit amet pellentesque. Sed a enim justo. Donec tincidunt, nisl eget elementum aliquam, odio ipsum ultrices quam, eu porttitor ligula urna at lorem. Donec varius, eros et convallis laoreet, ligula tellus consequat felis, ut ornare metus tellus sodales velit. Duis sed diam ante. Ut rutrum malesuada massa, vitae consectetur ipsum rhoncus sed. Suspendisse potenti. Pellentesque a congue massa. + +Integer non sem eget neque mattis accumsan. Maecenas eu nisl mauris, sit amet interdum ipsum. In pharetra erat vel lectus venenatis elementum. Nulla non elit ligula, sit amet mollis urna. Morbi ut gravida est. Mauris tincidunt sem et turpis molestie malesuada. Curabitur vel nulla risus, sed mollis erat. Suspendisse vehicula accumsan purus nec varius. Donec fermentum lorem id felis sodales dictum. Quisque et dolor ipsum. Nam luctus consectetur dui vitae fermentum. Curabitur sodales consequat augue, id ultricies augue tempor ac. Aliquam ac magna id ipsum vehicula bibendum. Sed elementum congue tristique. Phasellus vel lorem eu lectus porta sodales. Etiam neque tortor, sagittis id pharetra quis, laoreet vel arcu. + +Cras quam mi, ornare laoreet laoreet vel, vehicula at lacus. Maecenas a lacus accumsan augue convallis sagittis sed quis odio. Morbi sit amet turpis diam, dictum convallis urna. Cras eget interdum augue. Cras eu nisi sit amet dolor faucibus porttitor. Suspendisse potenti. Nunc vitae dolor risus, at cursus libero. Suspendisse bibendum tellus non nibh hendrerit tristique. Mauris eget orci elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam porta libero non ante laoreet semper. Proin volutpat sodales mi, ac fermentum erat sagittis in. Vivamus at viverra felis. Ut pretium facilisis ante et pharetra. + +Nulla facilisi. Cras varius quam eget libero aliquam vitae tincidunt leo rutrum. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Pellentesque a nisl massa, quis pretium urna. Proin vel porttitor tortor. Cras rhoncus congue velit in bibendum. Donec pharetra semper augue id lacinia. Quisque magna quam, hendrerit eu aliquam et, pellentesque ut tellus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Maecenas nulla quam, rutrum eu feugiat at, elementum eu libero. Maecenas ullamcorper leo et turpis rutrum ac laoreet eros faucibus. Phasellus condimentum lorem quis neque imperdiet quis molestie enim iaculis. Phasellus risus est, vestibulum ut convallis ultrices, dignissim nec erat. Etiam congue lobortis laoreet. Nulla ut neque sed velit dapibus semper. Quisque nec dolor id nibh eleifend iaculis. Vivamus vitae fermentum odio. Etiam malesuada quam in nulla aliquam sed convallis dui feugiat. diff --git a/libraries/tcpdf/cache/chapter_demo_2.txt b/libraries/tcpdf/cache/chapter_demo_2.txt new file mode 100644 index 000000000..cd7bfe68c --- /dev/null +++ b/libraries/tcpdf/cache/chapter_demo_2.txt @@ -0,0 +1,23 @@ +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit. In sed imperdiet lectus. Phasellus quis velit velit, non condimentum quam. Sed neque urna, ultrices ac volutpat vel, laoreet vitae augue. Sed vel velit erat. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Cras eget velit nulla, eu sagittis elit. Nunc ac arcu est, in lobortis tellus. Praesent condimentum rhoncus sodales. In hac habitasse platea dictumst. Proin porta eros pharetra enim tincidunt dignissim nec vel dolor. Cras sapien elit, ornare ac dignissim eu, ultricies ac eros. Maecenas augue magna, ultrices a congue in, mollis eu nulla. Nunc venenatis massa at est eleifend faucibus. Vivamus sed risus lectus, nec interdum nunc.

    + + + +

    Fusce et felis vitae diam lobortis sollicitudin. Aenean tincidunt accumsan nisi, id vehicula quam laoreet elementum. Phasellus egestas interdum erat, et viverra ipsum ultricies ac. Praesent sagittis augue at augue volutpat eleifend. Cras nec orci neque. Mauris bibendum posuere blandit. Donec feugiat mollis dui sit amet pellentesque. Sed a enim justo. Donec tincidunt, nisl eget elementum aliquam, odio ipsum ultrices quam, eu porttitor ligula urna at lorem. Donec varius, eros et convallis laoreet, ligula tellus consequat felis, ut ornare metus tellus sodales velit. Duis sed diam ante. Ut rutrum malesuada massa, vitae consectetur ipsum rhoncus sed. Suspendisse potenti. Pellentesque a congue massa.

    + +

    Integer non sem eget neque mattis accumsan. Maecenas eu nisl mauris, sit amet interdum ipsum. In pharetra erat vel lectus venenatis elementum. Nulla non elit ligula, sit amet mollis urna. Morbi ut gravida est. Mauris tincidunt sem et turpis molestie malesuada. Curabitur vel nulla risus, sed mollis erat. Suspendisse vehicula accumsan purus nec varius. Donec fermentum lorem id felis sodales dictum. Quisque et dolor ipsum. Nam luctus consectetur dui vitae fermentum. Curabitur sodales consequat augue, id ultricies augue tempor ac. Aliquam ac magna id ipsum vehicula bibendum. Sed elementum congue tristique. Phasellus vel lorem eu lectus porta sodales. Etiam neque tortor, sagittis id pharetra quis, laoreet vel arcu.

    + +

    Cras quam mi, ornare laoreet laoreet vel, vehicula at lacus. Maecenas a lacus accumsan augue convallis sagittis sed quis odio. Morbi sit amet turpis diam, dictum convallis urna. Cras eget interdum augue. Cras eu nisi sit amet dolor faucibus porttitor. Suspendisse potenti. Nunc vitae dolor risus, at cursus libero. Suspendisse bibendum tellus non nibh hendrerit tristique. Mauris eget orci elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam porta libero non ante laoreet semper. Proin volutpat sodales mi, ac fermentum erat sagittis in. Vivamus at viverra felis. Ut pretium facilisis ante et pharetra.

    + +

    Nulla facilisi. Cras varius quam eget libero aliquam vitae tincidunt leo rutrum. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Pellentesque a nisl massa, quis pretium urna. Proin vel porttitor tortor. Cras rhoncus congue velit in bibendum. Donec pharetra semper augue id lacinia. Quisque magna quam, hendrerit eu aliquam et, pellentesque ut tellus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Maecenas nulla quam, rutrum eu feugiat at, elementum eu libero. Maecenas ullamcorper leo et turpis rutrum ac laoreet eros faucibus. Phasellus condimentum lorem quis neque imperdiet quis molestie enim iaculis. Phasellus risus est, vestibulum ut convallis ultrices, dignissim nec erat. Etiam congue lobortis laoreet. Nulla ut neque sed velit dapibus semper. Quisque nec dolor id nibh eleifend iaculis. Vivamus vitae fermentum odio. Etiam malesuada quam in nulla aliquam sed convallis dui feugiat.

    + +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit. In sed imperdiet lectus. Phasellus quis velit velit, non condimentum quam. Sed neque urna, ultrices ac volutpat vel, laoreet vitae augue. Sed vel velit erat. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Cras eget velit nulla, eu sagittis elit. Nunc ac arcu est, in lobortis tellus. Praesent condimentum rhoncus sodales. In hac habitasse platea dictumst. Proin porta eros pharetra enim tincidunt dignissim nec vel dolor. Cras sapien elit, ornare ac dignissim eu, ultricies ac eros. Maecenas augue magna, ultrices a congue in, mollis eu nulla. Nunc venenatis massa at est eleifend faucibus. Vivamus sed risus lectus, nec interdum nunc.

    + + + +

    Fusce et felis vitae diam lobortis sollicitudin. Aenean tincidunt accumsan nisi, id vehicula quam laoreet elementum. Phasellus egestas interdum erat, et viverra ipsum ultricies ac. Praesent sagittis augue at augue volutpat eleifend. Cras nec orci neque. Mauris bibendum posuere blandit. Donec feugiat mollis dui sit amet pellentesque. Sed a enim justo. Donec tincidunt, nisl eget elementum aliquam, odio ipsum ultrices quam, eu porttitor ligula urna at lorem. Donec varius, eros et convallis laoreet, ligula tellus consequat felis, ut ornare metus tellus sodales velit. Duis sed diam ante. Ut rutrum malesuada massa, vitae consectetur ipsum rhoncus sed. Suspendisse potenti. Pellentesque a congue massa.

    + +

    Integer non sem eget neque mattis accumsan. Maecenas eu nisl mauris, sit amet interdum ipsum. In pharetra erat vel lectus venenatis elementum. Nulla non elit ligula, sit amet mollis urna. Morbi ut gravida est. Mauris tincidunt sem et turpis molestie malesuada. Curabitur vel nulla risus, sed mollis erat. Suspendisse vehicula accumsan purus nec varius. Donec fermentum lorem id felis sodales dictum. Quisque et dolor ipsum. Nam luctus consectetur dui vitae fermentum. Curabitur sodales consequat augue, id ultricies augue tempor ac. Aliquam ac magna id ipsum vehicula bibendum. Sed elementum congue tristique. Phasellus vel lorem eu lectus porta sodales. Etiam neque tortor, sagittis id pharetra quis, laoreet vel arcu.

    + +

    Cras quam mi, ornare laoreet laoreet vel, vehicula at lacus. Maecenas a lacus accumsan augue convallis sagittis sed quis odio. Morbi sit amet turpis diam, dictum convallis urna. Cras eget interdum augue. Cras eu nisi sit amet dolor faucibus porttitor. Suspendisse potenti. Nunc vitae dolor risus, at cursus libero. Suspendisse bibendum tellus non nibh hendrerit tristique. Mauris eget orci elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam porta libero non ante laoreet semper. Proin volutpat sodales mi, ac fermentum erat sagittis in. Vivamus at viverra felis. Ut pretium facilisis ante et pharetra.

    + +

    Nulla facilisi. Cras varius quam eget libero aliquam vitae tincidunt leo rutrum. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Pellentesque a nisl massa, quis pretium urna. Proin vel porttitor tortor. Cras rhoncus congue velit in bibendum. Donec pharetra semper augue id lacinia. Quisque magna quam, hendrerit eu aliquam et, pellentesque ut tellus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Maecenas nulla quam, rutrum eu feugiat at, elementum eu libero. Maecenas ullamcorper leo et turpis rutrum ac laoreet eros faucibus. Phasellus condimentum lorem quis neque imperdiet quis molestie enim iaculis. Phasellus risus est, vestibulum ut convallis ultrices, dignissim nec erat. Etiam congue lobortis laoreet. Nulla ut neque sed velit dapibus semper. Quisque nec dolor id nibh eleifend iaculis. Vivamus vitae fermentum odio. Etiam malesuada quam in nulla aliquam sed convallis dui feugiat.

    diff --git a/libraries/tcpdf/cache/table_data_demo.txt b/libraries/tcpdf/cache/table_data_demo.txt new file mode 100644 index 000000000..5a48a42e7 --- /dev/null +++ b/libraries/tcpdf/cache/table_data_demo.txt @@ -0,0 +1,15 @@ +Austria;Vienna;83859;8075 +Belgium;Brussels;30518;10192 +Denmark;Copenhagen;43094;5295 +Finland;Helsinki;304529;5147 +France;Paris;543965;58728 +Germany;Berlin;357022;82057 +Greece;Athens;131625;10511 +Ireland;Dublin;70723;3694 +Italy;Roma;301316;57563 +Luxembourg;Luxembourg;2586;424 +Netherlands;Amsterdam;41526;15654 +Portugal;Lisbon;91906;9957 +Spain;Madrid;504790;39348 +Sweden;Stockholm;410934;8839 +United Kingdom;London;243820;58862 diff --git a/libraries/tcpdf/cache/utf8test.txt b/libraries/tcpdf/cache/utf8test.txt new file mode 100644 index 000000000..af794dfdb --- /dev/null +++ b/libraries/tcpdf/cache/utf8test.txt @@ -0,0 +1,122 @@ +Sentences that contain all letters commonly used in a language +-------------------------------------------------------------- + +Markus Kuhn -- 2001-09-02 + +This file is UTF-8 encoded. + + +Danish (da) +--------- + + Quizdeltagerne spiste jordbær med fløde, mens cirkusklovnen + Wolther spillede pÃ¥ xylofon. + (= Quiz contestants were eating strawbery with cream while Wolther + the circus clown played on xylophone.) + +German (de) +----------- + + Falsches Üben von Xylophonmusik quält jeden größeren Zwerg + (= Wrongful practicing of xylophone music tortures every larger dwarf) + + Zwölf Boxkämpfer jagten Eva quer über den Sylter Deich + (= Twelve boxing fighters hunted Eva across the dike of Sylt) + + Heizölrückstoßabdämpfung + (= fuel oil recoil absorber) + (jqvwxy missing, but all non-ASCII letters in one word) + +English (en) +------------ + + The quick brown fox jumps over the lazy dog + +Spanish (es) +------------ + + El pingüino Wenceslao hizo kilómetros bajo exhaustiva lluvia y + frío, añoraba a su querido cachorro. + (Contains every letter and every accent, but not every combination + of vowel + acute.) + +French (fr) +----------- + + Portez ce vieux whisky au juge blond qui fume sur son île intérieure, à + côté de l'alcôve ovoïde, où les bûches se consument dans l'âtre, ce + qui lui permet de penser à la cænogenèse de l'être dont il est question + dans la cause ambiguë entendue à Moÿ, dans un capharnaüm qui, + pense-t-il, diminue çà et là la qualité de son Å“uvre. + + l'île exiguë + Où l'obèse jury mûr + Fête l'haï volapük, + Âne ex aéquo au whist, + Ôtez ce vÅ“u déçu. + + Le cÅ“ur déçu mais l'âme plutôt naïve, Louÿs rêva de crapaüter en + canoë au delà des îles, près du mälström où brûlent les novæ. + +Irish Gaelic (ga) +----------------- + + D'fhuascail Ãosa, Úrmhac na hÓighe Beannaithe, pór Éava agus Ãdhaimh + +Hungarian (hu) +-------------- + + ÃrvíztűrÅ‘ tükörfúrógép + (= flood-proof mirror-drilling machine, only all non-ASCII letters) + +Icelandic (is) +-------------- + + Kæmi ný öxi hér ykist þjófum nú bæði víl og ádrepa + + Sævör grét áðan því úlpan var ónýt + (some ASCII letters missing) + +Greek (el) +------------- + + Γαζέες καὶ μυÏτιὲς δὲν θὰ βÏá¿¶ πιὰ στὸ χÏυσαφὶ ξέφωτο + (= No more shall I see acacias or myrtles in the golden clearing) + + Ξεσκεπάζω τὴν ψυχοφθόÏα βδελυγμία + (= I uncover the soul-destroying abhorrence) + +Hebrew (iw) +----------- + + ? דג סקרן שט ×‘×™× ×ž×וכזב ולפתע ×ž×¦× ×œ×• חברה ×יך הקליטה + +Polish (pl) +----------- + + Pchnąć w tÄ™ łódź jeża lub osiem skrzyÅ„ fig + (= To push a hedgehog or eight bins of figs in this boat) + + Zażółć gęślÄ… jaźń + +Russian (ru) +------------ + + Ð’ чащах юга жил бы цитруÑ? Да, но фальшивый ÑкземплÑÑ€! + (= Would a citrus live in the bushes of south? Yes, but only a fake one!) + +Thai (th) +--------- + + [--------------------------|------------------------] + ๠เป็นมนุษย์สุดประเสริà¸à¹€à¸¥à¸´à¸¨à¸„ุณค่า à¸à¸§à¹ˆà¸²à¸šà¸£à¸£à¸”าà¸à¸¹à¸‡à¸ªà¸±à¸•ว์เดรัจฉาน + จงà¸à¹ˆà¸²à¸Ÿà¸±à¸™à¸žà¸±à¸’นาวิชาà¸à¸²à¸£ อย่าล้างผลาà¸à¸¤à¹…เข่นฆ่าบีฑาใคร + ไม่ถือโทษโà¸à¸£à¸˜à¹à¸Šà¹ˆà¸‡à¸‹à¸±à¸”ฮึดฮัดด่า หัดอภัยเหมือนà¸à¸µà¸¬à¸²à¸­à¸±à¸Šà¸Œà¸²à¸ªà¸±à¸¢ + ปà¸à¸´à¸šà¸±à¸•ิประพฤติà¸à¸Žà¸à¸³à¸«à¸™à¸”ใจ พูดจาให้จ๊ะๆ จ๋าๆ น่าฟังเอย ฯ + + [The copyright for the Thai example is owned by The Computer + Association of Thailand under the Royal Patronage of His Majesty the + King.] + +Please let me know if you find others! Special thanks to the people +from all over the world who contributed these sentences. diff --git a/libraries/tcpdf/config/lang/afr.php b/libraries/tcpdf/config/lang/afr.php new file mode 100644 index 000000000..38039cf29 --- /dev/null +++ b/libraries/tcpdf/config/lang/afr.php @@ -0,0 +1,47 @@ +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

    (k{`_56XLm!Ug?a(HTqC_3h^zlP&E808@nj>rJ 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%0DS2=nodbd6KyNXG2S`2r} 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 z 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 dAD!-*61_+1UqMX-tNIgvyS12LM_&*SY`z diff --git a/libraries/tcpdf/font/dejavusans.ctg.z b/libraries/tcpdf/font/dejavusans.ctg.z deleted file mode 100644 index fa197554d5a57ef9310d58021aac5336e80c15de..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8517 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 diff --git a/libraries/tcpdf/font/dejavusans.php b/libraries/tcpdf/font/dejavusans.php deleted file mode 100644 index 7326ce7c8..000000000 --- a/libraries/tcpdf/font/dejavusans.php +++ /dev/null @@ -1,291 +0,0 @@ -928,'Descent'=>-236,'CapHeight'=>928,'Flags'=>32,'FontBBox'=>'[-1021 -356 1681 1068]','ItalicAngle'=>0,'StemV'=>70,'MissingWidth'=>600); -$up=-42; -$ut=44; -$cw=array( - 0=>600, 32=>318, 33=>401, 34=>460, 35=>838, 36=>636, 37=>950, 38=>780, 39=>275, 40=>390, 41=>390, 42=>500, 43=>838, 44=>318, 45=>361, 46=>318, - 47=>337, 48=>636, 49=>636, 50=>636, 51=>636, 52=>636, 53=>636, 54=>636, 55=>636, 56=>636, 57=>636, 58=>337, 59=>337, 60=>838, 61=>838, 62=>838, - 63=>531, 64=>1000, 65=>684, 66=>686, 67=>698, 68=>770, 69=>632, 70=>575, 71=>775, 72=>752, 73=>295, 74=>295, 75=>656, 76=>557, 77=>863, 78=>748, - 79=>787, 80=>603, 81=>787, 82=>695, 83=>635, 84=>611, 85=>732, 86=>684, 87=>989, 88=>685, 89=>611, 90=>685, 91=>390, 92=>337, 93=>390, 94=>838, - 95=>500, 96=>500, 97=>613, 98=>635, 99=>550, 100=>635, 101=>615, 102=>352, 103=>635, 104=>634, 105=>278, 106=>278, 107=>579, 108=>278, 109=>974, 110=>634, - 111=>612, 112=>635, 113=>635, 114=>411, 115=>521, 116=>392, 117=>634, 118=>592, 119=>818, 120=>592, 121=>592, 122=>525, 123=>636, 124=>337, 125=>636, 126=>838, - 8364=>636, 1027=>610, 8218=>318, 402=>352, 8222=>518, 8230=>1000, 8224=>500, 8225=>500, 710=>500, 8240=>1342, 352=>635, 8249=>400, 338=>1070, 1036=>710, 381=>685, 1039=>752, - 8216=>318, 8217=>318, 8220=>518, 8221=>518, 8226=>590, 8211=>500, 8212=>1000, 732=>500, 8482=>1000, 353=>521, 8250=>400, 339=>1023, 1116=>604, 382=>525, 376=>611, 160=>318, - 161=>401, 162=>636, 163=>636, 164=>636, 165=>636, 166=>337, 167=>500, 168=>500, 169=>1000, 170=>471, 171=>612, 172=>838, 173=>361, 174=>1000, 175=>500, 176=>500, - 177=>838, 178=>401, 179=>401, 180=>500, 181=>636, 182=>636, 183=>318, 184=>500, 185=>401, 186=>471, 187=>612, 188=>969, 189=>969, 190=>969, 191=>531, 192=>684, - 193=>684, 194=>684, 195=>684, 196=>684, 197=>684, 198=>974, 199=>698, 200=>632, 201=>632, 202=>632, 203=>632, 204=>295, 205=>295, 206=>295, 207=>295, 208=>775, - 209=>748, 210=>787, 211=>787, 212=>787, 213=>787, 214=>787, 215=>838, 216=>787, 217=>732, 218=>732, 219=>732, 220=>732, 221=>611, 222=>605, 223=>630, 224=>613, - 225=>613, 226=>613, 227=>613, 228=>613, 229=>613, 230=>982, 231=>550, 232=>615, 233=>615, 234=>615, 235=>615, 236=>278, 237=>278, 238=>278, 239=>278, 240=>612, - 241=>634, 242=>612, 243=>612, 244=>612, 245=>612, 246=>612, 247=>838, 248=>612, 249=>634, 250=>634, 251=>634, 252=>634, 253=>592, 254=>635, 255=>592, 256=>684, - 257=>613, 258=>684, 259=>613, 260=>684, 261=>613, 262=>698, 263=>550, 264=>698, 265=>550, 266=>698, 267=>550, 268=>698, 269=>550, 270=>770, 271=>635, 272=>775, - 273=>635, 274=>632, 275=>615, 276=>632, 277=>615, 278=>632, 279=>615, 280=>632, 281=>615, 282=>632, 283=>615, 284=>775, 285=>635, 286=>775, 287=>635, 288=>775, - 289=>635, 290=>775, 291=>635, 292=>752, 293=>634, 294=>916, 295=>695, 296=>295, 297=>278, 298=>295, 299=>278, 300=>295, 301=>278, 302=>295, 303=>278, 304=>295, - 305=>278, 306=>590, 307=>556, 308=>295, 309=>278, 310=>656, 311=>579, 312=>579, 313=>557, 314=>293, 315=>557, 316=>278, 317=>557, 318=>375, 319=>557, 320=>342, - 321=>562, 322=>284, 323=>748, 324=>634, 325=>748, 326=>634, 327=>748, 328=>634, 329=>813, 330=>748, 331=>634, 332=>787, 333=>612, 334=>787, 335=>612, 336=>787, - 337=>612, 340=>695, 341=>411, 342=>695, 343=>411, 344=>695, 345=>411, 346=>635, 347=>521, 348=>635, 349=>521, 350=>635, 351=>521, 354=>611, 355=>392, 356=>611, - 357=>392, 358=>611, 359=>392, 360=>732, 361=>634, 362=>732, 363=>634, 364=>732, 365=>634, 366=>732, 367=>634, 368=>732, 369=>634, 370=>732, 371=>634, 372=>989, - 373=>818, 374=>611, 375=>592, 377=>685, 378=>525, 379=>685, 380=>525, 383=>352, 384=>635, 385=>735, 386=>686, 387=>635, 388=>686, 389=>635, 390=>703, 391=>698, - 392=>550, 393=>775, 394=>819, 395=>686, 396=>635, 397=>612, 398=>632, 399=>787, 400=>614, 401=>575, 403=>775, 404=>687, 405=>984, 406=>354, 407=>295, 408=>746, - 409=>579, 410=>278, 411=>592, 412=>974, 413=>748, 414=>634, 415=>787, 416=>913, 417=>612, 418=>949, 419=>759, 420=>652, 421=>635, 422=>695, 423=>635, 424=>521, - 425=>632, 426=>336, 427=>392, 428=>611, 429=>392, 430=>611, 431=>858, 432=>634, 433=>764, 434=>721, 435=>744, 436=>729, 437=>685, 438=>525, 439=>666, 440=>666, - 441=>578, 442=>525, 443=>636, 444=>666, 445=>578, 446=>510, 447=>635, 448=>295, 449=>492, 450=>459, 451=>295, 452=>1422, 453=>1299, 454=>1154, 455=>835, 456=>787, - 457=>457, 458=>931, 459=>924, 460=>797, 461=>684, 462=>613, 463=>295, 464=>278, 465=>787, 466=>612, 467=>732, 468=>634, 469=>732, 470=>634, 471=>732, 472=>634, - 473=>732, 474=>634, 475=>732, 476=>634, 477=>615, 478=>684, 479=>613, 480=>684, 481=>613, 482=>974, 483=>982, 484=>775, 485=>635, 486=>775, 487=>635, 488=>656, - 489=>579, 490=>787, 491=>612, 492=>787, 493=>612, 494=>666, 495=>578, 496=>278, 497=>1422, 498=>1299, 499=>1154, 500=>775, 501=>635, 502=>1113, 503=>682, 504=>748, - 505=>634, 506=>684, 507=>613, 508=>974, 509=>982, 510=>787, 511=>612, 512=>684, 513=>613, 514=>684, 515=>613, 516=>632, 517=>615, 518=>632, 519=>615, 520=>295, - 521=>278, 522=>295, 523=>278, 524=>787, 525=>612, 526=>787, 527=>612, 528=>695, 529=>411, 530=>695, 531=>411, 532=>732, 533=>634, 534=>732, 535=>634, 536=>635, - 537=>521, 538=>611, 539=>392, 540=>627, 541=>521, 542=>752, 543=>634, 544=>735, 545=>838, 546=>698, 547=>610, 548=>685, 549=>525, 550=>684, 551=>613, 552=>632, - 553=>615, 554=>787, 555=>612, 556=>787, 557=>612, 558=>787, 559=>612, 560=>787, 561=>612, 562=>611, 563=>592, 564=>475, 565=>843, 566=>477, 567=>278, 568=>998, - 569=>998, 570=>684, 571=>698, 572=>550, 573=>557, 574=>611, 575=>521, 576=>525, 577=>603, 578=>479, 579=>686, 580=>732, 581=>684, 582=>632, 583=>615, 584=>295, - 585=>278, 586=>781, 587=>635, 588=>695, 589=>411, 590=>611, 591=>592, 592=>600, 593=>635, 594=>635, 595=>635, 596=>549, 597=>550, 598=>635, 599=>696, 600=>615, - 601=>615, 602=>819, 603=>541, 604=>532, 605=>775, 606=>664, 607=>278, 608=>696, 609=>635, 610=>629, 611=>596, 612=>596, 613=>634, 614=>634, 615=>634, 616=>278, - 617=>338, 618=>372, 619=>396, 620=>487, 621=>278, 622=>706, 623=>974, 624=>974, 625=>974, 626=>646, 627=>642, 628=>634, 629=>612, 630=>858, 631=>728, 632=>660, - 633=>414, 634=>414, 635=>414, 636=>411, 637=>411, 638=>437, 639=>530, 640=>604, 641=>604, 642=>521, 643=>336, 644=>336, 645=>461, 646=>336, 647=>392, 648=>392, - 649=>634, 650=>618, 651=>598, 652=>592, 653=>818, 654=>592, 655=>611, 656=>525, 657=>525, 658=>578, 659=>578, 660=>510, 661=>510, 662=>510, 663=>510, 664=>787, - 665=>580, 666=>664, 667=>708, 668=>654, 669=>292, 670=>667, 671=>507, 672=>727, 673=>510, 674=>510, 675=>1014, 676=>1058, 677=>1013, 678=>824, 679=>610, 680=>778, - 681=>848, 682=>641, 683=>654, 684=>515, 685=>515, 686=>570, 687=>664, 688=>404, 689=>399, 690=>175, 691=>259, 692=>295, 693=>296, 694=>379, 695=>515, 696=>373, - 697=>278, 698=>460, 699=>318, 700=>318, 701=>318, 702=>307, 703=>307, 704=>370, 705=>370, 706=>500, 707=>500, 708=>500, 709=>500, 711=>500, 712=>275, 713=>500, - 714=>500, 715=>500, 716=>275, 717=>500, 718=>500, 719=>500, 720=>337, 721=>337, 722=>307, 723=>307, 724=>500, 725=>500, 726=>413, 727=>500, 728=>500, 729=>500, - 730=>500, 731=>500, 733=>500, 734=>315, 735=>500, 736=>426, 737=>166, 738=>373, 739=>444, 740=>370, 741=>493, 742=>493, 743=>493, 744=>493, 745=>493, 748=>500, - 749=>500, 750=>500, 755=>500, 759=>500, 768=>0, 769=>0, 770=>0, 771=>0, 772=>0, 773=>0, 774=>0, 775=>0, 776=>0, 777=>0, 778=>0, 779=>0, - 780=>0, 781=>0, 782=>0, 783=>0, 784=>0, 785=>0, 786=>0, 787=>0, 788=>0, 789=>0, 790=>0, 791=>0, 792=>0, 793=>0, 794=>0, 795=>0, - 796=>0, 797=>0, 798=>0, 799=>0, 800=>0, 801=>0, 802=>0, 803=>0, 804=>0, 805=>0, 806=>0, 807=>0, 808=>0, 809=>0, 810=>0, 811=>0, - 812=>0, 813=>0, 814=>0, 815=>0, 816=>0, 817=>0, 818=>0, 819=>0, 820=>0, 821=>0, 822=>0, 823=>0, 824=>0, 825=>0, 826=>0, 827=>0, - 828=>0, 829=>0, 830=>0, 831=>0, 832=>0, 833=>0, 834=>0, 835=>0, 836=>0, 837=>0, 838=>0, 839=>0, 840=>0, 841=>0, 842=>0, 843=>0, - 844=>0, 845=>0, 846=>0, 847=>0, 849=>0, 850=>0, 851=>0, 855=>0, 856=>0, 860=>0, 861=>0, 862=>0, 863=>0, 864=>0, 865=>0, 866=>0, - 884=>278, 885=>278, 890=>500, 891=>549, 892=>550, 893=>549, 894=>337, 900=>500, 901=>500, 902=>692, 903=>318, 904=>746, 905=>871, 906=>408, 908=>813, 910=>825, - 911=>826, 912=>338, 913=>684, 914=>686, 915=>557, 916=>684, 917=>632, 918=>685, 919=>752, 920=>787, 921=>295, 922=>656, 923=>684, 924=>863, 925=>748, 926=>632, - 927=>787, 928=>752, 929=>603, 931=>632, 932=>611, 933=>611, 934=>787, 935=>685, 936=>787, 937=>764, 938=>295, 939=>611, 940=>659, 941=>548, 942=>654, 943=>338, - 944=>579, 945=>659, 946=>638, 947=>592, 948=>612, 949=>541, 950=>544, 951=>634, 952=>612, 953=>338, 954=>589, 955=>592, 956=>636, 957=>559, 958=>558, 959=>612, - 960=>602, 961=>635, 962=>587, 963=>634, 964=>602, 965=>579, 966=>660, 967=>578, 968=>660, 969=>837, 970=>338, 971=>579, 972=>612, 973=>579, 974=>837, 976=>614, - 977=>619, 978=>699, 979=>842, 980=>699, 981=>660, 982=>837, 983=>664, 984=>787, 985=>612, 986=>648, 987=>587, 988=>575, 989=>458, 990=>660, 991=>660, 992=>865, - 993=>627, 994=>934, 995=>837, 996=>758, 997=>659, 998=>792, 999=>615, 1000=>687, 1001=>607, 1002=>768, 1003=>625, 1004=>699, 1005=>612, 1006=>611, 1007=>536, 1008=>664, - 1009=>635, 1010=>550, 1011=>278, 1012=>787, 1013=>615, 1014=>615, 1015=>605, 1016=>635, 1017=>698, 1018=>863, 1019=>651, 1020=>635, 1021=>703, 1022=>698, 1023=>703, 1024=>632, - 1025=>632, 1026=>786, 1028=>698, 1029=>635, 1030=>295, 1031=>295, 1032=>295, 1033=>1094, 1034=>1045, 1035=>786, 1037=>748, 1038=>609, 1040=>684, 1041=>686, 1042=>686, 1043=>610, - 1044=>781, 1045=>632, 1046=>1077, 1047=>641, 1048=>748, 1049=>748, 1050=>710, 1051=>752, 1052=>863, 1053=>752, 1054=>787, 1055=>752, 1056=>603, 1057=>698, 1058=>611, 1059=>609, - 1060=>861, 1061=>685, 1062=>776, 1063=>686, 1064=>1069, 1065=>1094, 1066=>833, 1067=>882, 1068=>686, 1069=>698, 1070=>1080, 1071=>695, 1072=>613, 1073=>617, 1074=>589, 1075=>525, - 1076=>691, 1077=>615, 1078=>901, 1079=>532, 1080=>650, 1081=>650, 1082=>604, 1083=>639, 1084=>754, 1085=>654, 1086=>612, 1087=>654, 1088=>635, 1089=>550, 1090=>583, 1091=>592, - 1092=>855, 1093=>592, 1094=>681, 1095=>591, 1096=>915, 1097=>942, 1098=>707, 1099=>790, 1100=>589, 1101=>549, 1102=>842, 1103=>602, 1104=>615, 1105=>615, 1106=>625, 1107=>525, - 1108=>549, 1109=>521, 1110=>278, 1111=>278, 1112=>278, 1113=>902, 1114=>898, 1115=>652, 1117=>650, 1118=>592, 1119=>654, 1120=>934, 1121=>837, 1122=>771, 1123=>672, 1124=>942, - 1125=>749, 1126=>879, 1127=>783, 1128=>1160, 1129=>1001, 1130=>787, 1131=>612, 1132=>1027, 1133=>824, 1134=>636, 1135=>541, 1136=>856, 1137=>876, 1138=>787, 1139=>592, 1140=>781, - 1141=>665, 1142=>781, 1143=>665, 1144=>992, 1145=>904, 1146=>953, 1147=>758, 1148=>1180, 1149=>1028, 1150=>934, 1151=>837, 1152=>698, 1153=>550, 1154=>502, 1155=>0, 1156=>0, - 1157=>0, 1158=>0, 1160=>418, 1161=>418, 1162=>772, 1163=>677, 1164=>686, 1165=>589, 1166=>603, 1167=>635, 1168=>610, 1169=>525, 1170=>675, 1171=>556, 1172=>624, 1173=>530, - 1174=>1077, 1175=>901, 1176=>641, 1177=>532, 1178=>710, 1179=>604, 1180=>710, 1181=>604, 1182=>710, 1183=>604, 1184=>856, 1185=>832, 1186=>752, 1187=>661, 1188=>1014, 1189=>877, - 1190=>1081, 1191=>916, 1192=>796, 1193=>651, 1194=>698, 1195=>550, 1196=>611, 1197=>529, 1198=>611, 1199=>592, 1200=>611, 1201=>592, 1202=>685, 1203=>592, 1204=>934, 1205=>807, - 1206=>686, 1207=>591, 1208=>686, 1209=>591, 1210=>686, 1211=>634, 1212=>941, 1213=>728, 1214=>941, 1215=>728, 1216=>295, 1217=>1077, 1218=>901, 1219=>656, 1220=>604, 1221=>776, - 1222=>670, 1223=>752, 1224=>661, 1225=>776, 1226=>681, 1227=>686, 1228=>591, 1229=>888, 1230=>774, 1231=>278, 1232=>684, 1233=>613, 1234=>684, 1235=>613, 1236=>974, 1237=>982, - 1238=>632, 1239=>615, 1240=>787, 1241=>615, 1242=>787, 1243=>615, 1244=>1077, 1245=>901, 1246=>641, 1247=>532, 1248=>666, 1249=>578, 1250=>748, 1251=>650, 1252=>748, 1253=>650, - 1254=>787, 1255=>612, 1256=>787, 1257=>612, 1258=>787, 1259=>612, 1260=>698, 1261=>549, 1262=>609, 1263=>592, 1264=>609, 1265=>592, 1266=>609, 1267=>592, 1268=>686, 1269=>591, - 1270=>557, 1271=>491, 1272=>882, 1273=>790, 1274=>675, 1275=>556, 1276=>685, 1277=>592, 1278=>685, 1279=>592, 1280=>686, 1281=>589, 1282=>1006, 1283=>897, 1284=>975, 1285=>869, - 1286=>679, 1287=>588, 1288=>1072, 1289=>957, 1290=>1072, 1291=>967, 1292=>775, 1293=>660, 1294=>773, 1295=>711, 1296=>614, 1297=>541, 1298=>752, 1299=>639, 1329=>867, 1330=>732, - 1331=>882, 1332=>882, 1333=>732, 1334=>644, 1335=>682, 1336=>732, 1337=>851, 1338=>882, 1339=>732, 1340=>557, 1341=>824, 1342=>986, 1343=>732, 1344=>707, 1345=>644, 1346=>882, - 1347=>777, 1348=>882, 1349=>732, 1350=>840, 1351=>732, 1352=>732, 1353=>732, 1354=>791, 1355=>644, 1356=>882, 1357=>732, 1358=>882, 1359=>635, 1360=>732, 1361=>732, 1362=>799, - 1363=>861, 1364=>790, 1365=>787, 1366=>635, 1369=>307, 1370=>318, 1371=>500, 1372=>500, 1373=>392, 1374=>526, 1375=>500, 1377=>974, 1378=>634, 1379=>762, 1380=>767, 1381=>634, - 1382=>697, 1383=>533, 1384=>634, 1385=>700, 1386=>697, 1387=>634, 1388=>404, 1389=>894, 1390=>641, 1391=>634, 1392=>634, 1393=>635, 1394=>702, 1395=>634, 1396=>659, 1397=>278, - 1398=>760, 1399=>516, 1400=>634, 1401=>453, 1402=>974, 1403=>516, 1404=>769, 1405=>634, 1406=>696, 1407=>974, 1408=>634, 1409=>635, 1410=>501, 1411=>974, 1412=>648, 1413=>612, - 1414=>629, 1415=>763, 1417=>337, 1418=>433, 1456=>0, 1457=>0, 1458=>0, 1459=>0, 1460=>0, 1461=>0, 1462=>0, 1463=>0, 1464=>0, 1465=>0, 1467=>0, 1468=>0, - 1469=>0, 1471=>0, 1472=>295, 1473=>0, 1474=>0, 1475=>295, 1478=>456, 1479=>0, 1488=>629, 1489=>608, 1490=>448, 1491=>594, 1492=>640, 1493=>272, 1494=>423, 1495=>640, - 1496=>648, 1497=>272, 1498=>592, 1499=>556, 1500=>599, 1501=>640, 1502=>659, 1503=>272, 1504=>441, 1505=>700, 1506=>636, 1507=>640, 1508=>604, 1509=>521, 1510=>581, 1511=>663, - 1512=>592, 1513=>808, 1514=>657, 1520=>471, 1521=>454, 1522=>471, 1548=>323, 1557=>0, 1563=>318, 1567=>531, 1569=>470, 1570=>278, 1571=>278, 1572=>483, 1573=>278, 1574=>783, - 1575=>278, 1576=>941, 1577=>524, 1578=>941, 1579=>941, 1580=>646, 1581=>646, 1582=>646, 1583=>445, 1584=>445, 1585=>483, 1586=>483, 1587=>1221, 1588=>1221, 1589=>1209, 1590=>1209, - 1591=>925, 1592=>925, 1593=>597, 1594=>597, 1600=>293, 1601=>1037, 1602=>776, 1603=>824, 1604=>727, 1605=>619, 1606=>734, 1607=>524, 1608=>483, 1609=>783, 1610=>783, 1611=>0, - 1612=>0, 1613=>0, 1614=>0, 1615=>0, 1616=>0, 1617=>0, 1618=>0, 1619=>0, 1620=>0, 1621=>0, 1626=>500, 1632=>537, 1633=>537, 1634=>537, 1635=>537, 1636=>537, - 1637=>537, 1638=>537, 1639=>537, 1640=>537, 1641=>537, 1642=>537, 1643=>325, 1644=>318, 1645=>545, 1646=>941, 1647=>776, 1652=>292, 1657=>941, 1658=>941, 1659=>941, 1660=>941, - 1661=>941, 1662=>941, 1663=>941, 1664=>941, 1665=>646, 1666=>646, 1667=>646, 1668=>646, 1669=>646, 1670=>646, 1671=>646, 1681=>483, 1682=>483, 1685=>610, 1688=>483, 1697=>1037, - 1700=>1037, 1702=>1037, 1705=>895, 1711=>895, 1717=>727, 1722=>734, 1727=>646, 1734=>483, 1740=>783, 1742=>783, 1749=>524, 1776=>537, 1777=>537, 1778=>537, 1779=>537, 1780=>537, - 1781=>537, 1782=>537, 1783=>537, 1784=>537, 1785=>537, 3647=>652, 3713=>670, 3714=>684, 3716=>688, 3719=>482, 3720=>628, 3722=>684, 3725=>688, 3732=>669, 3733=>642, 3734=>645, - 3735=>655, 3737=>659, 3738=>625, 3739=>625, 3740=>745, 3741=>767, 3742=>687, 3743=>687, 3745=>702, 3746=>688, 3747=>684, 3749=>649, 3751=>632, 3754=>703, 3755=>819, 3757=>633, - 3758=>684, 3759=>788, 3760=>632, 3761=>0, 3762=>539, 3763=>539, 3764=>0, 3765=>0, 3766=>0, 3767=>0, 3768=>0, 3769=>0, 3771=>0, 3772=>0, 3773=>663, 3776=>375, - 3777=>657, 3778=>460, 3779=>547, 3780=>491, 3782=>674, 3784=>0, 3785=>0, 3786=>0, 3787=>0, 3788=>0, 3789=>0, 3804=>1028, 3805=>1028, 5121=>684, 5122=>684, 5123=>684, - 5124=>684, 5125=>769, 5126=>769, 5127=>769, 5129=>769, 5130=>769, 5131=>769, 5132=>835, 5133=>834, 5134=>835, 5135=>834, 5136=>835, 5137=>834, 5138=>967, 5139=>1007, 5140=>967, - 5141=>1007, 5142=>769, 5143=>967, 5144=>1007, 5145=>967, 5146=>1007, 5147=>769, 5149=>256, 5150=>543, 5151=>423, 5152=>423, 5153=>389, 5154=>389, 5155=>393, 5156=>389, 5157=>466, - 5158=>385, 5159=>256, 5160=>389, 5161=>389, 5162=>389, 5163=>1090, 5164=>909, 5165=>953, 5166=>1117, 5167=>684, 5168=>684, 5169=>684, 5170=>684, 5171=>729, 5172=>729, 5173=>729, - 5175=>729, 5176=>729, 5177=>729, 5178=>835, 5179=>834, 5180=>835, 5181=>834, 5182=>835, 5183=>834, 5184=>967, 5185=>1007, 5186=>967, 5187=>1007, 5188=>967, 5189=>1007, 5190=>967, - 5191=>1007, 5192=>729, 5193=>508, 5194=>192, 5196=>732, 5197=>732, 5198=>732, 5199=>732, 5200=>730, 5201=>730, 5202=>730, 5204=>730, 5205=>730, 5206=>730, 5207=>921, 5208=>889, - 5209=>921, 5210=>889, 5211=>921, 5212=>889, 5213=>928, 5214=>900, 5215=>928, 5216=>900, 5217=>947, 5218=>900, 5219=>947, 5220=>900, 5221=>947, 5222=>434, 5223=>877, 5224=>877, - 5225=>866, 5226=>890, 5227=>628, 5228=>628, 5229=>628, 5230=>628, 5231=>628, 5232=>694, 5233=>628, 5234=>628, 5235=>628, 5236=>860, 5237=>771, 5238=>815, 5239=>816, 5240=>815, - 5241=>816, 5242=>860, 5243=>771, 5244=>860, 5245=>771, 5246=>815, 5247=>816, 5248=>815, 5249=>816, 5250=>815, 5251=>407, 5252=>407, 5253=>750, 5254=>775, 5255=>750, 5256=>775, - 5257=>628, 5258=>628, 5259=>628, 5260=>628, 5261=>628, 5262=>628, 5263=>628, 5264=>628, 5265=>628, 5266=>860, 5267=>771, 5268=>815, 5269=>816, 5270=>815, 5271=>816, 5272=>860, - 5273=>771, 5274=>860, 5275=>771, 5276=>815, 5277=>816, 5278=>815, 5279=>816, 5280=>815, 5281=>435, 5282=>435, 5283=>610, 5284=>557, 5285=>557, 5286=>557, 5287=>610, 5288=>522, - 5289=>610, 5290=>557, 5291=>557, 5292=>749, 5293=>769, 5294=>746, 5295=>764, 5296=>746, 5297=>764, 5298=>749, 5299=>769, 5300=>749, 5301=>769, 5302=>746, 5303=>764, 5304=>746, - 5305=>764, 5306=>746, 5307=>386, 5308=>508, 5309=>386, 5312=>852, 5313=>852, 5314=>852, 5315=>823, 5316=>852, 5317=>852, 5318=>852, 5319=>852, 5320=>852, 5321=>1069, 5322=>1035, - 5323=>1059, 5324=>852, 5325=>1059, 5326=>852, 5327=>852, 5328=>600, 5329=>453, 5330=>600, 5331=>852, 5332=>852, 5333=>852, 5334=>852, 5335=>852, 5336=>852, 5337=>852, 5338=>852, - 5339=>852, 5340=>1069, 5341=>1035, 5342=>1059, 5343=>1030, 5344=>1059, 5345=>1030, 5346=>1069, 5347=>1035, 5348=>1069, 5349=>1035, 5350=>1083, 5351=>1030, 5352=>1083, 5353=>1030, 5354=>600, - 5356=>729, 5357=>603, 5358=>603, 5359=>603, 5360=>603, 5361=>603, 5362=>661, 5363=>603, 5364=>603, 5365=>603, 5366=>834, 5367=>754, 5368=>792, 5369=>771, 5370=>792, 5371=>771, - 5372=>834, 5373=>754, 5374=>834, 5375=>754, 5376=>792, 5377=>771, 5378=>792, 5379=>771, 5380=>792, 5381=>418, 5382=>420, 5383=>418, 5392=>712, 5393=>712, 5394=>712, 5395=>892, - 5396=>892, 5397=>892, 5398=>892, 5399=>910, 5400=>872, 5401=>910, 5402=>872, 5403=>910, 5404=>872, 5405=>1140, 5406=>1100, 5407=>1140, 5408=>1100, 5409=>1140, 5410=>1100, 5411=>1140, - 5412=>1100, 5413=>641, 5414=>627, 5415=>627, 5416=>627, 5417=>627, 5418=>627, 5419=>667, 5420=>627, 5421=>627, 5422=>627, 5423=>844, 5424=>781, 5425=>816, 5426=>818, 5427=>816, - 5428=>818, 5429=>844, 5430=>781, 5431=>844, 5432=>781, 5433=>816, 5434=>818, 5435=>816, 5436=>818, 5437=>816, 5438=>418, 5440=>389, 5441=>484, 5442=>916, 5443=>916, 5444=>916, - 5445=>916, 5446=>916, 5447=>916, 5448=>603, 5449=>603, 5450=>603, 5451=>603, 5452=>603, 5453=>603, 5454=>834, 5455=>754, 5456=>418, 5458=>729, 5459=>684, 5460=>684, 5461=>684, - 5462=>684, 5463=>726, 5464=>726, 5465=>726, 5466=>726, 5467=>924, 5468=>1007, 5469=>508, 5470=>732, 5471=>732, 5472=>732, 5473=>732, 5474=>732, 5475=>732, 5476=>730, 5477=>730, - 5478=>730, 5479=>730, 5480=>947, 5481=>900, 5482=>508, 5492=>831, 5493=>831, 5494=>831, 5495=>831, 5496=>831, 5497=>831, 5498=>831, 5499=>563, 5500=>752, 5501=>484, 5502=>1047, - 5503=>1047, 5504=>1047, 5505=>1047, 5506=>1047, 5507=>1047, 5508=>1047, 5509=>825, 5514=>831, 5515=>831, 5516=>831, 5517=>831, 5518=>1259, 5519=>1259, 5520=>1259, 5521=>1002, 5522=>1002, - 5523=>1259, 5524=>1259, 5525=>700, 5526=>1073, 5536=>852, 5537=>852, 5538=>852, 5539=>852, 5540=>852, 5541=>852, 5542=>600, 5543=>643, 5544=>643, 5545=>643, 5546=>643, 5547=>643, - 5548=>643, 5549=>643, 5550=>418, 5551=>628, 5598=>770, 5601=>767, 5702=>468, 5703=>468, 5742=>444, 5743=>1047, 5744=>1310, 5745=>1632, 5746=>1632, 5747=>1375, 5748=>1375, 5749=>1632, - 5750=>1632, 7424=>592, 7425=>717, 7426=>982, 7427=>586, 7428=>550, 7429=>605, 7430=>605, 7431=>491, 7432=>541, 7433=>278, 7434=>395, 7435=>579, 7436=>583, 7437=>754, 7438=>650, - 7439=>612, 7440=>550, 7441=>684, 7442=>684, 7443=>684, 7444=>1023, 7446=>612, 7447=>612, 7448=>524, 7449=>602, 7450=>602, 7451=>583, 7452=>574, 7453=>737, 7454=>948, 7455=>638, - 7456=>592, 7457=>818, 7458=>525, 7459=>526, 7462=>583, 7463=>592, 7464=>564, 7465=>524, 7466=>590, 7467=>639, 7468=>431, 7469=>613, 7470=>432, 7472=>485, 7473=>398, 7474=>398, - 7475=>488, 7476=>474, 7477=>186, 7478=>186, 7479=>413, 7480=>351, 7481=>543, 7482=>471, 7483=>471, 7484=>496, 7485=>439, 7486=>380, 7487=>438, 7488=>385, 7489=>461, 7490=>623, - 7491=>392, 7492=>392, 7493=>405, 7494=>648, 7495=>428, 7496=>405, 7497=>417, 7498=>417, 7499=>360, 7500=>359, 7501=>405, 7502=>179, 7503=>426, 7504=>623, 7505=>409, 7506=>414, - 7507=>370, 7508=>414, 7509=>414, 7510=>428, 7511=>295, 7512=>405, 7513=>470, 7514=>623, 7515=>417, 7517=>402, 7518=>373, 7519=>385, 7520=>416, 7521=>364, 7522=>179, 7523=>259, - 7524=>405, 7525=>417, 7526=>402, 7527=>373, 7528=>385, 7529=>416, 7530=>364, 7543=>635, 7544=>474, 7547=>372, 7557=>278, 7579=>405, 7580=>370, 7581=>370, 7582=>414, 7583=>360, - 7584=>296, 7585=>233, 7586=>405, 7587=>405, 7588=>261, 7589=>250, 7590=>261, 7591=>261, 7592=>234, 7593=>250, 7594=>235, 7595=>376, 7596=>623, 7597=>623, 7598=>411, 7599=>479, - 7600=>409, 7601=>414, 7602=>414, 7603=>360, 7604=>287, 7605=>295, 7606=>508, 7607=>418, 7608=>361, 7609=>406, 7610=>417, 7611=>366, 7612=>437, 7613=>366, 7614=>392, 7615=>414, - 7620=>0, 7621=>0, 7622=>0, 7623=>0, 7624=>0, 7625=>0, 7680=>684, 7681=>613, 7682=>686, 7683=>635, 7684=>686, 7685=>635, 7686=>686, 7687=>635, 7688=>698, 7689=>550, - 7690=>770, 7691=>635, 7692=>770, 7693=>635, 7694=>770, 7695=>635, 7696=>770, 7697=>635, 7698=>770, 7699=>635, 7700=>632, 7701=>615, 7702=>632, 7703=>615, 7704=>632, 7705=>615, - 7706=>632, 7707=>615, 7708=>632, 7709=>615, 7710=>575, 7711=>352, 7712=>775, 7713=>635, 7714=>752, 7715=>634, 7716=>752, 7717=>634, 7718=>752, 7719=>634, 7720=>752, 7721=>634, - 7722=>752, 7723=>634, 7724=>295, 7725=>278, 7726=>295, 7727=>278, 7728=>656, 7729=>579, 7730=>656, 7731=>579, 7732=>656, 7733=>579, 7734=>557, 7735=>288, 7736=>557, 7737=>288, - 7738=>557, 7739=>278, 7740=>557, 7741=>278, 7742=>863, 7743=>974, 7744=>863, 7745=>974, 7746=>863, 7747=>974, 7748=>748, 7749=>634, 7750=>748, 7751=>634, 7752=>748, 7753=>634, - 7754=>748, 7755=>634, 7756=>787, 7757=>612, 7758=>787, 7759=>612, 7760=>787, 7761=>612, 7762=>787, 7763=>612, 7764=>603, 7765=>635, 7766=>603, 7767=>635, 7768=>695, 7769=>411, - 7770=>695, 7771=>411, 7772=>695, 7773=>411, 7774=>695, 7775=>411, 7776=>635, 7777=>521, 7778=>635, 7779=>521, 7780=>635, 7781=>521, 7782=>635, 7783=>521, 7784=>635, 7785=>521, - 7786=>611, 7787=>392, 7788=>611, 7789=>392, 7790=>611, 7791=>392, 7792=>611, 7793=>392, 7794=>732, 7795=>634, 7796=>732, 7797=>634, 7798=>732, 7799=>634, 7800=>732, 7801=>634, - 7802=>732, 7803=>634, 7804=>684, 7805=>592, 7806=>684, 7807=>592, 7808=>989, 7809=>818, 7810=>989, 7811=>818, 7812=>989, 7813=>818, 7814=>989, 7815=>818, 7816=>989, 7817=>818, - 7818=>685, 7819=>592, 7820=>685, 7821=>592, 7822=>611, 7823=>592, 7824=>685, 7825=>525, 7826=>685, 7827=>525, 7828=>685, 7829=>525, 7830=>634, 7831=>392, 7832=>818, 7833=>592, - 7834=>613, 7835=>352, 7840=>684, 7841=>613, 7842=>684, 7843=>613, 7844=>684, 7845=>613, 7846=>684, 7847=>613, 7848=>684, 7849=>613, 7850=>684, 7851=>613, 7852=>684, 7853=>613, - 7854=>684, 7855=>613, 7856=>684, 7857=>613, 7858=>684, 7859=>613, 7860=>684, 7861=>613, 7862=>684, 7863=>613, 7864=>632, 7865=>615, 7866=>632, 7867=>615, 7868=>632, 7869=>615, - 7870=>632, 7871=>615, 7872=>632, 7873=>615, 7874=>632, 7875=>615, 7876=>632, 7877=>615, 7878=>632, 7879=>615, 7880=>295, 7881=>278, 7882=>295, 7883=>278, 7884=>787, 7885=>612, - 7886=>787, 7887=>612, 7888=>787, 7889=>612, 7890=>787, 7891=>612, 7892=>787, 7893=>612, 7894=>787, 7895=>612, 7896=>787, 7897=>612, 7898=>913, 7899=>612, 7900=>913, 7901=>612, - 7902=>913, 7903=>612, 7904=>913, 7905=>612, 7906=>913, 7907=>612, 7908=>732, 7909=>634, 7910=>732, 7911=>634, 7912=>858, 7913=>634, 7914=>858, 7915=>634, 7916=>858, 7917=>634, - 7918=>858, 7919=>634, 7920=>858, 7921=>634, 7922=>611, 7923=>592, 7924=>611, 7925=>592, 7926=>611, 7927=>592, 7928=>611, 7929=>592, 7936=>659, 7937=>659, 7938=>659, 7939=>659, - 7940=>659, 7941=>659, 7942=>659, 7943=>659, 7944=>684, 7945=>684, 7946=>877, 7947=>877, 7948=>769, 7949=>801, 7950=>708, 7951=>743, 7952=>541, 7953=>541, 7954=>541, 7955=>541, - 7956=>541, 7957=>541, 7960=>711, 7961=>711, 7962=>966, 7963=>975, 7964=>898, 7965=>928, 7968=>634, 7969=>634, 7970=>634, 7971=>634, 7972=>634, 7973=>634, 7974=>634, 7975=>634, - 7976=>837, 7977=>835, 7978=>1086, 7979=>1089, 7980=>1027, 7981=>1051, 7982=>934, 7983=>947, 7984=>338, 7985=>338, 7986=>338, 7987=>338, 7988=>338, 7989=>338, 7990=>338, 7991=>338, - 7992=>380, 7993=>374, 7994=>635, 7995=>635, 7996=>570, 7997=>600, 7998=>489, 7999=>493, 8000=>612, 8001=>612, 8002=>612, 8003=>612, 8004=>612, 8005=>612, 8008=>804, 8009=>848, - 8010=>1095, 8011=>1100, 8012=>938, 8013=>970, 8016=>579, 8017=>579, 8018=>579, 8019=>579, 8020=>579, 8021=>579, 8022=>579, 8023=>579, 8025=>784, 8027=>998, 8029=>1012, 8031=>897, - 8032=>837, 8033=>837, 8034=>837, 8035=>837, 8036=>837, 8037=>837, 8038=>837, 8039=>837, 8040=>802, 8041=>843, 8042=>1089, 8043=>1095, 8044=>946, 8045=>972, 8046=>921, 8047=>952, - 8048=>659, 8049=>659, 8050=>541, 8051=>548, 8052=>634, 8053=>654, 8054=>338, 8055=>338, 8056=>612, 8057=>612, 8058=>579, 8059=>579, 8060=>837, 8061=>837, 8064=>659, 8065=>659, - 8066=>659, 8067=>659, 8068=>659, 8069=>659, 8070=>659, 8071=>659, 8072=>684, 8073=>684, 8074=>877, 8075=>877, 8076=>769, 8077=>801, 8078=>708, 8079=>743, 8080=>634, 8081=>634, - 8082=>634, 8083=>634, 8084=>634, 8085=>634, 8086=>634, 8087=>634, 8088=>837, 8089=>835, 8090=>1086, 8091=>1089, 8092=>1027, 8093=>1051, 8094=>934, 8095=>947, 8096=>837, 8097=>837, - 8098=>837, 8099=>837, 8100=>837, 8101=>837, 8102=>837, 8103=>837, 8104=>802, 8105=>843, 8106=>1089, 8107=>1095, 8108=>946, 8109=>972, 8110=>921, 8111=>952, 8112=>659, 8113=>659, - 8114=>659, 8115=>659, 8116=>659, 8118=>659, 8119=>659, 8120=>684, 8121=>684, 8122=>716, 8123=>692, 8124=>684, 8125=>500, 8126=>500, 8127=>500, 8128=>500, 8129=>500, 8130=>634, - 8131=>634, 8132=>654, 8134=>634, 8135=>634, 8136=>805, 8137=>746, 8138=>931, 8139=>871, 8140=>752, 8141=>500, 8142=>500, 8143=>500, 8144=>338, 8145=>338, 8146=>338, 8147=>338, - 8150=>338, 8151=>338, 8152=>295, 8153=>295, 8154=>475, 8155=>408, 8157=>500, 8158=>500, 8159=>500, 8160=>579, 8161=>579, 8162=>579, 8163=>579, 8164=>635, 8165=>635, 8166=>579, - 8167=>579, 8168=>611, 8169=>611, 8170=>845, 8171=>825, 8172=>685, 8173=>500, 8174=>500, 8175=>500, 8178=>837, 8179=>837, 8180=>837, 8182=>837, 8183=>837, 8184=>941, 8185=>813, - 8186=>922, 8187=>826, 8188=>764, 8189=>500, 8190=>500, 8192=>500, 8193=>1000, 8194=>500, 8195=>1000, 8196=>330, 8197=>250, 8198=>167, 8199=>636, 8200=>318, 8201=>200, 8202=>100, - 8203=>0, 8204=>0, 8205=>0, 8206=>0, 8207=>0, 8208=>361, 8209=>361, 8210=>636, 8213=>1000, 8214=>500, 8215=>500, 8219=>318, 8223=>518, 8227=>590, 8228=>334, 8229=>667, - 8231=>318, 8234=>0, 8235=>0, 8236=>0, 8237=>0, 8238=>0, 8239=>200, 8241=>1735, 8242=>227, 8243=>374, 8244=>520, 8245=>227, 8246=>374, 8247=>520, 8248=>339, 8251=>838, - 8252=>485, 8253=>531, 8254=>500, 8255=>804, 8256=>804, 8257=>250, 8258=>1000, 8259=>500, 8260=>167, 8261=>390, 8262=>390, 8263=>922, 8264=>733, 8265=>733, 8266=>497, 8267=>636, - 8268=>500, 8269=>500, 8270=>500, 8271=>337, 8272=>804, 8273=>500, 8274=>450, 8275=>838, 8276=>804, 8277=>838, 8278=>586, 8279=>663, 8280=>838, 8281=>838, 8282=>318, 8283=>797, - 8284=>838, 8285=>318, 8286=>318, 8287=>222, 8288=>0, 8289=>0, 8290=>0, 8291=>0, 8298=>0, 8299=>0, 8300=>0, 8301=>0, 8302=>0, 8303=>0, 8304=>401, 8305=>179, - 8308=>401, 8309=>401, 8310=>401, 8311=>401, 8312=>401, 8313=>401, 8314=>528, 8315=>528, 8316=>528, 8317=>246, 8318=>246, 8319=>398, 8320=>401, 8321=>401, 8322=>401, 8323=>401, - 8324=>401, 8325=>401, 8326=>401, 8327=>401, 8328=>401, 8329=>401, 8330=>528, 8331=>528, 8332=>528, 8333=>246, 8334=>246, 8336=>392, 8337=>417, 8338=>414, 8339=>444, 8340=>417, - 8352=>877, 8353=>636, 8354=>636, 8355=>636, 8356=>636, 8357=>974, 8358=>748, 8359=>1272, 8360=>1074, 8361=>989, 8362=>784, 8363=>636, 8365=>636, 8366=>636, 8367=>1272, 8368=>636, - 8369=>636, 8370=>636, 8371=>636, 8372=>774, 8373=>641, 8400=>0, 8401=>0, 8406=>0, 8407=>0, 8448=>1019, 8449=>1019, 8450=>698, 8451=>1123, 8452=>642, 8453=>1019, 8454=>1067, - 8455=>614, 8456=>698, 8457=>952, 8459=>988, 8460=>754, 8461=>850, 8462=>634, 8463=>634, 8464=>470, 8465=>697, 8466=>720, 8467=>413, 8468=>818, 8469=>801, 8470=>1040, 8471=>1000, - 8472=>697, 8473=>702, 8474=>787, 8475=>798, 8476=>814, 8477=>792, 8478=>896, 8479=>684, 8480=>1020, 8481=>1074, 8483=>684, 8484=>745, 8485=>578, 8486=>764, 8487=>764, 8488=>616, - 8489=>338, 8490=>656, 8491=>684, 8492=>786, 8493=>703, 8494=>854, 8495=>592, 8496=>605, 8497=>786, 8498=>575, 8499=>1069, 8500=>462, 8501=>745, 8502=>674, 8503=>469, 8504=>648, - 8505=>380, 8506=>926, 8507=>1194, 8508=>702, 8509=>728, 8510=>655, 8511=>849, 8512=>811, 8513=>775, 8514=>557, 8515=>557, 8516=>611, 8517=>819, 8518=>708, 8519=>615, 8520=>351, - 8521=>351, 8523=>780, 8526=>526, 8531=>969, 8532=>969, 8533=>969, 8534=>969, 8535=>969, 8536=>969, 8537=>969, 8538=>969, 8539=>969, 8540=>969, 8541=>969, 8542=>969, 8543=>568, - 8544=>295, 8545=>492, 8546=>689, 8547=>923, 8548=>684, 8549=>922, 8550=>1120, 8551=>1317, 8552=>917, 8553=>685, 8554=>933, 8555=>1131, 8556=>557, 8557=>698, 8558=>770, 8559=>863, - 8560=>278, 8561=>458, 8562=>637, 8563=>812, 8564=>592, 8565=>811, 8566=>991, 8567=>1170, 8568=>819, 8569=>592, 8570=>822, 8571=>1002, 8572=>278, 8573=>550, 8574=>635, 8575=>974, - 8576=>1245, 8577=>770, 8578=>1245, 8579=>703, 8580=>549, 8592=>838, 8593=>838, 8594=>838, 8595=>838, 8596=>838, 8597=>838, 8598=>838, 8599=>838, 8600=>838, 8601=>838, 8602=>838, - 8603=>838, 8604=>838, 8605=>838, 8606=>838, 8607=>838, 8608=>838, 8609=>838, 8610=>838, 8611=>838, 8612=>838, 8613=>838, 8614=>838, 8615=>838, 8616=>838, 8617=>838, 8618=>838, - 8619=>838, 8620=>838, 8621=>838, 8622=>838, 8623=>838, 8624=>838, 8625=>838, 8626=>838, 8627=>838, 8628=>838, 8629=>838, 8630=>838, 8631=>838, 8632=>838, 8633=>838, 8634=>838, - 8635=>838, 8636=>838, 8637=>838, 8638=>838, 8639=>838, 8640=>838, 8641=>838, 8642=>838, 8643=>838, 8644=>838, 8645=>838, 8646=>838, 8647=>838, 8648=>838, 8649=>838, 8650=>838, - 8651=>838, 8652=>838, 8653=>838, 8654=>838, 8655=>838, 8656=>838, 8657=>838, 8658=>838, 8659=>838, 8660=>838, 8661=>838, 8662=>838, 8663=>838, 8664=>838, 8665=>838, 8666=>838, - 8667=>838, 8668=>838, 8669=>838, 8670=>838, 8671=>838, 8672=>838, 8673=>838, 8674=>838, 8675=>838, 8676=>838, 8677=>838, 8678=>838, 8679=>838, 8680=>838, 8681=>838, 8682=>838, - 8683=>838, 8684=>838, 8685=>838, 8686=>838, 8687=>838, 8688=>838, 8689=>838, 8690=>838, 8691=>838, 8692=>838, 8693=>838, 8694=>838, 8695=>838, 8696=>838, 8697=>838, 8698=>838, - 8699=>838, 8700=>838, 8701=>838, 8702=>838, 8703=>838, 8704=>684, 8705=>636, 8706=>517, 8707=>632, 8708=>632, 8709=>871, 8710=>669, 8711=>669, 8712=>871, 8713=>871, 8714=>718, - 8715=>871, 8716=>871, 8717=>718, 8718=>636, 8719=>757, 8720=>757, 8721=>674, 8722=>838, 8723=>838, 8724=>838, 8725=>167, 8726=>637, 8727=>838, 8728=>626, 8729=>318, 8730=>637, - 8731=>637, 8732=>637, 8733=>677, 8734=>833, 8735=>838, 8736=>896, 8737=>896, 8738=>838, 8739=>500, 8740=>500, 8741=>500, 8742=>500, 8743=>732, 8744=>732, 8745=>732, 8746=>732, - 8747=>521, 8748=>789, 8749=>1057, 8750=>521, 8751=>789, 8752=>1057, 8753=>521, 8754=>521, 8755=>521, 8756=>636, 8757=>636, 8758=>260, 8759=>636, 8760=>838, 8761=>838, 8762=>838, - 8763=>838, 8764=>838, 8765=>838, 8766=>838, 8767=>838, 8768=>375, 8769=>838, 8770=>838, 8771=>838, 8772=>838, 8773=>838, 8774=>838, 8775=>838, 8776=>838, 8777=>838, 8778=>838, - 8779=>838, 8780=>838, 8781=>838, 8782=>838, 8783=>838, 8784=>838, 8785=>838, 8786=>839, 8787=>839, 8788=>1000, 8789=>1000, 8790=>838, 8791=>838, 8792=>838, 8793=>838, 8794=>838, - 8795=>838, 8796=>838, 8797=>838, 8798=>838, 8799=>838, 8800=>838, 8801=>838, 8802=>838, 8803=>838, 8804=>838, 8805=>838, 8806=>838, 8807=>838, 8808=>838, 8809=>838, 8810=>1047, - 8811=>1047, 8812=>464, 8813=>838, 8814=>838, 8815=>838, 8816=>838, 8817=>838, 8818=>838, 8819=>838, 8820=>838, 8821=>838, 8822=>838, 8823=>838, 8824=>838, 8825=>838, 8826=>838, - 8827=>838, 8828=>838, 8829=>838, 8830=>838, 8831=>838, 8832=>838, 8833=>838, 8834=>838, 8835=>838, 8836=>838, 8837=>838, 8838=>838, 8839=>838, 8840=>838, 8841=>838, 8842=>838, - 8843=>838, 8844=>732, 8845=>732, 8846=>732, 8847=>838, 8848=>838, 8849=>838, 8850=>838, 8851=>722, 8852=>722, 8853=>838, 8854=>838, 8855=>838, 8856=>838, 8857=>838, 8858=>838, - 8859=>838, 8860=>838, 8861=>838, 8862=>838, 8863=>838, 8864=>838, 8865=>838, 8866=>871, 8867=>871, 8868=>871, 8869=>871, 8870=>521, 8871=>521, 8872=>871, 8873=>871, 8874=>871, - 8875=>871, 8876=>871, 8877=>871, 8878=>871, 8879=>871, 8882=>838, 8883=>838, 8884=>838, 8885=>838, 8886=>1000, 8887=>1000, 8888=>838, 8889=>838, 8890=>521, 8891=>732, 8892=>732, - 8893=>732, 8896=>820, 8897=>820, 8898=>820, 8899=>820, 8900=>494, 8901=>318, 8902=>626, 8904=>1000, 8905=>1000, 8906=>1000, 8907=>1000, 8908=>1000, 8909=>838, 8918=>838, 8919=>838, - 8920=>1422, 8921=>1422, 8922=>838, 8923=>838, 8924=>838, 8925=>838, 8926=>838, 8927=>838, 8928=>838, 8929=>838, 8930=>838, 8931=>838, 8932=>838, 8933=>838, 8934=>838, 8935=>838, - 8936=>838, 8937=>838, 8938=>838, 8939=>838, 8940=>838, 8941=>838, 8946=>1000, 8947=>871, 8948=>718, 8949=>871, 8950=>871, 8951=>718, 8952=>871, 8953=>871, 8954=>1000, 8955=>871, - 8956=>718, 8957=>871, 8958=>718, 8959=>871, 8962=>635, 8966=>871, 8968=>390, 8969=>390, 8970=>390, 8971=>390, 8976=>838, 8977=>513, 8984=>1000, 8985=>838, 8992=>521, 8993=>521, - 8997=>1000, 9000=>1443, 9085=>757, 9115=>500, 9116=>500, 9117=>500, 9118=>500, 9119=>500, 9120=>500, 9121=>500, 9122=>500, 9123=>500, 9124=>500, 9125=>500, 9126=>500, 9127=>750, - 9128=>750, 9129=>750, 9130=>750, 9131=>750, 9132=>750, 9133=>750, 9134=>521, 9166=>838, 9167=>945, 9250=>635, 9251=>635, 9312=>896, 9313=>896, 9314=>896, 9315=>896, 9316=>896, - 9317=>896, 9318=>896, 9319=>896, 9320=>896, 9321=>896, 9600=>769, 9601=>769, 9602=>769, 9603=>769, 9604=>769, 9605=>769, 9606=>769, 9607=>769, 9608=>769, 9609=>769, 9610=>769, - 9611=>769, 9612=>769, 9613=>769, 9614=>769, 9615=>769, 9616=>769, 9617=>769, 9618=>769, 9619=>769, 9620=>769, 9621=>769, 9622=>769, 9623=>769, 9624=>769, 9625=>769, 9626=>769, - 9627=>769, 9628=>769, 9629=>769, 9630=>769, 9631=>769, 9632=>945, 9633=>945, 9634=>945, 9635=>945, 9636=>945, 9637=>945, 9638=>945, 9639=>945, 9640=>945, 9641=>945, 9642=>678, - 9643=>678, 9644=>945, 9645=>945, 9646=>550, 9647=>550, 9648=>769, 9649=>769, 9650=>769, 9651=>769, 9652=>502, 9653=>502, 9654=>769, 9655=>769, 9656=>502, 9657=>502, 9658=>769, - 9659=>769, 9660=>769, 9661=>769, 9662=>502, 9663=>502, 9664=>769, 9665=>769, 9666=>502, 9667=>502, 9668=>769, 9669=>769, 9670=>769, 9671=>769, 9672=>769, 9673=>873, 9674=>494, - 9675=>873, 9676=>873, 9677=>873, 9678=>873, 9679=>873, 9680=>873, 9681=>873, 9682=>873, 9683=>873, 9684=>873, 9685=>873, 9686=>527, 9687=>527, 9688=>791, 9689=>970, 9690=>970, - 9691=>970, 9692=>387, 9693=>387, 9694=>387, 9695=>387, 9696=>873, 9697=>873, 9698=>769, 9699=>769, 9700=>769, 9701=>769, 9702=>590, 9703=>945, 9704=>945, 9705=>945, 9706=>945, - 9707=>945, 9708=>769, 9709=>769, 9710=>769, 9711=>1119, 9712=>945, 9713=>945, 9714=>945, 9715=>945, 9716=>873, 9717=>873, 9718=>873, 9719=>873, 9720=>769, 9721=>769, 9722=>769, - 9723=>830, 9724=>830, 9725=>732, 9726=>732, 9727=>769, 9728=>896, 9729=>1000, 9730=>896, 9731=>896, 9732=>896, 9733=>896, 9734=>896, 9735=>573, 9736=>896, 9737=>896, 9738=>888, - 9739=>888, 9740=>671, 9741=>1013, 9742=>1246, 9743=>1250, 9744=>896, 9745=>896, 9746=>896, 9747=>532, 9748=>896, 9749=>896, 9750=>896, 9751=>896, 9752=>896, 9753=>896, 9754=>896, - 9755=>896, 9756=>896, 9757=>609, 9758=>896, 9759=>609, 9760=>896, 9761=>896, 9762=>896, 9763=>896, 9764=>669, 9765=>746, 9766=>649, 9767=>784, 9768=>545, 9769=>896, 9770=>896, - 9771=>896, 9772=>710, 9773=>896, 9774=>896, 9775=>896, 9776=>896, 9777=>896, 9778=>896, 9779=>896, 9780=>896, 9781=>896, 9782=>896, 9783=>896, 9784=>896, 9785=>896, 9786=>896, - 9787=>896, 9788=>896, 9789=>896, 9790=>896, 9791=>614, 9792=>731, 9793=>731, 9794=>896, 9795=>896, 9796=>896, 9797=>896, 9798=>896, 9799=>896, 9800=>896, 9801=>896, 9802=>896, - 9803=>896, 9804=>896, 9805=>896, 9806=>896, 9807=>896, 9808=>896, 9809=>896, 9810=>896, 9811=>896, 9812=>896, 9813=>896, 9814=>896, 9815=>896, 9816=>896, 9817=>896, 9818=>896, - 9819=>896, 9820=>896, 9821=>896, 9822=>896, 9823=>896, 9824=>896, 9825=>896, 9826=>896, 9827=>896, 9828=>896, 9829=>896, 9830=>896, 9831=>896, 9832=>896, 9833=>472, 9834=>638, - 9835=>896, 9836=>896, 9837=>472, 9838=>357, 9839=>484, 9840=>748, 9841=>766, 9842=>896, 9843=>896, 9844=>896, 9845=>896, 9846=>896, 9847=>896, 9848=>896, 9849=>896, 9850=>896, - 9851=>896, 9852=>896, 9853=>896, 9854=>896, 9855=>896, 9856=>869, 9857=>869, 9858=>869, 9859=>869, 9860=>869, 9861=>869, 9862=>896, 9863=>896, 9864=>896, 9865=>896, 9866=>896, - 9867=>896, 9868=>896, 9869=>896, 9870=>896, 9871=>896, 9872=>896, 9873=>896, 9874=>896, 9875=>896, 9876=>896, 9877=>541, 9878=>896, 9879=>896, 9880=>896, 9881=>896, 9882=>896, - 9883=>896, 9884=>896, 9888=>896, 9889=>702, 9890=>838, 9891=>838, 9892=>838, 9893=>838, 9894=>838, 9895=>838, 9896=>838, 9897=>838, 9898=>838, 9899=>838, 9900=>838, 9901=>838, - 9902=>838, 9903=>838, 9904=>844, 9905=>838, 9906=>731, 9985=>838, 9986=>838, 9987=>838, 9988=>838, 9990=>838, 9991=>838, 9992=>838, 9993=>838, 9996=>838, 9997=>838, 9998=>838, - 9999=>838, 10000=>838, 10001=>838, 10002=>838, 10003=>838, 10004=>838, 10005=>838, 10006=>838, 10007=>838, 10008=>838, 10009=>838, 10010=>838, 10011=>838, 10012=>838, 10013=>838, 10014=>838, - 10015=>838, 10016=>838, 10017=>838, 10018=>838, 10019=>838, 10020=>838, 10021=>838, 10022=>838, 10023=>838, 10025=>838, 10026=>838, 10027=>838, 10028=>838, 10029=>838, 10030=>838, 10031=>838, - 10032=>838, 10033=>838, 10034=>838, 10035=>838, 10036=>838, 10037=>838, 10038=>838, 10039=>838, 10040=>838, 10041=>838, 10042=>838, 10043=>838, 10044=>838, 10045=>838, 10046=>838, 10047=>838, - 10048=>838, 10049=>838, 10050=>838, 10051=>838, 10052=>838, 10053=>838, 10054=>838, 10055=>838, 10056=>838, 10057=>838, 10058=>838, 10059=>838, 10061=>896, 10063=>896, 10064=>896, 10065=>896, - 10066=>896, 10070=>896, 10072=>838, 10073=>838, 10074=>838, 10075=>322, 10076=>322, 10077=>538, 10078=>538, 10081=>838, 10082=>838, 10083=>838, 10084=>838, 10085=>838, 10086=>838, 10087=>838, - 10088=>838, 10089=>838, 10090=>838, 10091=>838, 10092=>838, 10093=>838, 10094=>838, 10095=>838, 10096=>838, 10097=>838, 10098=>838, 10099=>838, 10100=>838, 10101=>838, 10102=>896, 10103=>896, - 10104=>896, 10105=>896, 10106=>896, 10107=>896, 10108=>896, 10109=>896, 10110=>896, 10111=>896, 10112=>838, 10113=>838, 10114=>838, 10115=>838, 10116=>838, 10117=>838, 10118=>838, 10119=>838, - 10120=>838, 10121=>838, 10122=>838, 10123=>838, 10124=>838, 10125=>838, 10126=>838, 10127=>838, 10128=>838, 10129=>838, 10130=>838, 10131=>838, 10132=>838, 10136=>838, 10137=>838, 10138=>838, - 10139=>838, 10140=>838, 10141=>838, 10142=>838, 10143=>838, 10144=>838, 10145=>838, 10146=>838, 10147=>838, 10148=>838, 10149=>838, 10150=>838, 10151=>838, 10152=>838, 10153=>838, 10154=>838, - 10155=>838, 10156=>838, 10157=>838, 10158=>838, 10159=>838, 10161=>838, 10162=>838, 10163=>838, 10164=>838, 10165=>838, 10166=>838, 10167=>838, 10168=>838, 10169=>838, 10170=>838, 10171=>838, - 10172=>838, 10173=>838, 10174=>838, 10208=>494, 10214=>495, 10215=>495, 10216=>390, 10217=>390, 10218=>556, 10219=>556, 10224=>838, 10225=>838, 10226=>838, 10227=>838, 10228=>1157, 10229=>1434, - 10230=>1434, 10231=>1434, 10232=>1434, 10233=>1434, 10234=>1434, 10235=>1434, 10236=>1434, 10237=>1434, 10238=>1434, 10239=>1434, 10240=>732, 10241=>732, 10242=>732, 10243=>732, 10244=>732, 10245=>732, - 10246=>732, 10247=>732, 10248=>732, 10249=>732, 10250=>732, 10251=>732, 10252=>732, 10253=>732, 10254=>732, 10255=>732, 10256=>732, 10257=>732, 10258=>732, 10259=>732, 10260=>732, 10261=>732, - 10262=>732, 10263=>732, 10264=>732, 10265=>732, 10266=>732, 10267=>732, 10268=>732, 10269=>732, 10270=>732, 10271=>732, 10272=>732, 10273=>732, 10274=>732, 10275=>732, 10276=>732, 10277=>732, - 10278=>732, 10279=>732, 10280=>732, 10281=>732, 10282=>732, 10283=>732, 10284=>732, 10285=>732, 10286=>732, 10287=>732, 10288=>732, 10289=>732, 10290=>732, 10291=>732, 10292=>732, 10293=>732, - 10294=>732, 10295=>732, 10296=>732, 10297=>732, 10298=>732, 10299=>732, 10300=>732, 10301=>732, 10302=>732, 10303=>732, 10304=>732, 10305=>732, 10306=>732, 10307=>732, 10308=>732, 10309=>732, - 10310=>732, 10311=>732, 10312=>732, 10313=>732, 10314=>732, 10315=>732, 10316=>732, 10317=>732, 10318=>732, 10319=>732, 10320=>732, 10321=>732, 10322=>732, 10323=>732, 10324=>732, 10325=>732, - 10326=>732, 10327=>732, 10328=>732, 10329=>732, 10330=>732, 10331=>732, 10332=>732, 10333=>732, 10334=>732, 10335=>732, 10336=>732, 10337=>732, 10338=>732, 10339=>732, 10340=>732, 10341=>732, - 10342=>732, 10343=>732, 10344=>732, 10345=>732, 10346=>732, 10347=>732, 10348=>732, 10349=>732, 10350=>732, 10351=>732, 10352=>732, 10353=>732, 10354=>732, 10355=>732, 10356=>732, 10357=>732, - 10358=>732, 10359=>732, 10360=>732, 10361=>732, 10362=>732, 10363=>732, 10364=>732, 10365=>732, 10366=>732, 10367=>732, 10368=>732, 10369=>732, 10370=>732, 10371=>732, 10372=>732, 10373=>732, - 10374=>732, 10375=>732, 10376=>732, 10377=>732, 10378=>732, 10379=>732, 10380=>732, 10381=>732, 10382=>732, 10383=>732, 10384=>732, 10385=>732, 10386=>732, 10387=>732, 10388=>732, 10389=>732, - 10390=>732, 10391=>732, 10392=>732, 10393=>732, 10394=>732, 10395=>732, 10396=>732, 10397=>732, 10398=>732, 10399=>732, 10400=>732, 10401=>732, 10402=>732, 10403=>732, 10404=>732, 10405=>732, - 10406=>732, 10407=>732, 10408=>732, 10409=>732, 10410=>732, 10411=>732, 10412=>732, 10413=>732, 10414=>732, 10415=>732, 10416=>732, 10417=>732, 10418=>732, 10419=>732, 10420=>732, 10421=>732, - 10422=>732, 10423=>732, 10424=>732, 10425=>732, 10426=>732, 10427=>732, 10428=>732, 10429=>732, 10430=>732, 10431=>732, 10432=>732, 10433=>732, 10434=>732, 10435=>732, 10436=>732, 10437=>732, - 10438=>732, 10439=>732, 10440=>732, 10441=>732, 10442=>732, 10443=>732, 10444=>732, 10445=>732, 10446=>732, 10447=>732, 10448=>732, 10449=>732, 10450=>732, 10451=>732, 10452=>732, 10453=>732, - 10454=>732, 10455=>732, 10456=>732, 10457=>732, 10458=>732, 10459=>732, 10460=>732, 10461=>732, 10462=>732, 10463=>732, 10464=>732, 10465=>732, 10466=>732, 10467=>732, 10468=>732, 10469=>732, - 10470=>732, 10471=>732, 10472=>732, 10473=>732, 10474=>732, 10475=>732, 10476=>732, 10477=>732, 10478=>732, 10479=>732, 10480=>732, 10481=>732, 10482=>732, 10483=>732, 10484=>732, 10485=>732, - 10486=>732, 10487=>732, 10488=>732, 10489=>732, 10490=>732, 10491=>732, 10492=>732, 10493=>732, 10494=>732, 10495=>732, 10502=>838, 10503=>838, 10506=>838, 10507=>838, 10560=>683, 10561=>683, - 10702=>838, 10703=>1000, 10704=>1000, 10705=>1000, 10706=>1000, 10707=>1000, 10708=>1000, 10709=>1000, 10731=>494, 10752=>1000, 10753=>1000, 10754=>1000, 10764=>1325, 10765=>521, 10766=>521, 10767=>521, - 10768=>521, 10769=>521, 10770=>521, 10771=>521, 10772=>521, 10773=>521, 10774=>521, 10775=>521, 10776=>521, 10777=>521, 10778=>521, 10779=>521, 10780=>521, 10877=>838, 10878=>838, 10879=>838, - 10880=>838, 10881=>838, 10882=>838, 10883=>838, 10884=>838, 10885=>838, 10886=>838, 10887=>838, 10888=>838, 10889=>838, 10890=>838, 10891=>838, 10892=>838, 10893=>838, 10894=>838, 10895=>838, - 10896=>838, 10897=>838, 10898=>838, 10899=>838, 10900=>838, 10901=>838, 10902=>838, 10903=>838, 10904=>838, 10905=>838, 10906=>838, 10907=>838, 10908=>838, 10909=>838, 10910=>838, 10911=>838, - 10912=>838, 10926=>838, 10927=>838, 10928=>838, 10929=>838, 10930=>838, 10931=>838, 10932=>838, 10933=>838, 10934=>838, 10935=>838, 10936=>838, 10937=>838, 10938=>838, 11001=>838, 11002=>838, - 11008=>838, 11009=>838, 11010=>838, 11011=>838, 11012=>838, 11013=>838, 11014=>838, 11015=>838, 11016=>838, 11017=>838, 11018=>838, 11019=>838, 11020=>838, 11021=>838, 11022=>836, 11023=>836, - 11024=>836, 11025=>836, 11026=>945, 11027=>945, 11028=>945, 11029=>945, 11030=>769, 11031=>769, 11032=>769, 11033=>769, 11034=>945, 11040=>869, 11041=>873, 11042=>873, 11043=>873, 11360=>557, - 11361=>278, 11362=>557, 11363=>603, 11364=>695, 11365=>613, 11366=>392, 11367=>752, 11368=>634, 11369=>656, 11370=>579, 11371=>685, 11372=>525, 11380=>592, 11381=>654, 11382=>568, 11383=>660, - 61440=>977, 61441=>977, 61960=>781, 62047=>592, 63173=>612, 64256=>689, 64257=>630, 64258=>630, 64259=>967, 64260=>967, 64261=>686, 64262=>861, 64275=>1202, 64276=>1202, 64277=>1196, 64278=>1186, - 64279=>1529, 64285=>296, 64287=>494, 64288=>636, 64297=>838, 64298=>799, 64299=>799, 64300=>799, 64301=>799, 64302=>663, 64303=>663, 64304=>663, 64305=>655, 64306=>454, 64307=>607, 64308=>690, - 64309=>336, 64310=>437, 64312=>683, 64313=>336, 64314=>642, 64315=>666, 64316=>635, 64318=>736, 64320=>456, 64321=>771, 64323=>651, 64324=>666, 64326=>639, 64327=>688, 64328=>642, 64329=>799, - 64330=>726, 64331=>272, 64332=>655, 64333=>666, 64334=>666, 64338=>941, 64339=>982, 64340=>278, 64341=>302, 64342=>941, 64343=>982, 64344=>278, 64345=>302, 64346=>941, 64347=>982, 64348=>278, - 64349=>302, 64350=>941, 64351=>982, 64352=>278, 64353=>302, 64354=>941, 64355=>982, 64356=>278, 64357=>302, 64358=>941, 64359=>982, 64360=>278, 64361=>302, 64362=>1037, 64363=>1035, 64364=>478, - 64365=>506, 64366=>1037, 64367=>1035, 64368=>478, 64369=>506, 64370=>646, 64371=>646, 64372=>618, 64373=>646, 64374=>646, 64375=>646, 64376=>618, 64377=>646, 64378=>646, 64379=>646, 64380=>618, - 64381=>646, 64382=>646, 64383=>646, 64384=>618, 64385=>646, 64394=>483, 64395=>552, 64396=>483, 64397=>552, 64398=>895, 64399=>895, 64400=>476, 64401=>552, 64402=>895, 64403=>895, 64404=>476, - 64405=>552, 64414=>734, 64415=>761, 64473=>483, 64474=>517, 64488=>278, 64489=>302, 64508=>783, 64509=>833, 64510=>278, 64511=>302, 65024=>0, 65025=>0, 65026=>0, 65027=>0, 65028=>0, - 65029=>0, 65030=>0, 65031=>0, 65032=>0, 65033=>0, 65034=>0, 65035=>0, 65036=>0, 65037=>0, 65038=>0, 65039=>0, 65136=>293, 65137=>293, 65138=>293, 65139=>262, 65140=>293, - 65142=>293, 65143=>293, 65144=>293, 65145=>293, 65146=>293, 65147=>293, 65148=>293, 65149=>293, 65150=>293, 65151=>293, 65152=>470, 65153=>278, 65154=>305, 65155=>278, 65156=>305, 65157=>483, - 65158=>517, 65159=>278, 65160=>305, 65161=>783, 65162=>833, 65163=>278, 65164=>302, 65165=>278, 65166=>305, 65167=>941, 65168=>982, 65169=>278, 65170=>302, 65171=>524, 65172=>536, 65173=>941, - 65174=>982, 65175=>278, 65176=>302, 65177=>941, 65178=>982, 65179=>278, 65180=>302, 65181=>646, 65182=>646, 65183=>618, 65184=>646, 65185=>646, 65186=>646, 65187=>618, 65188=>646, 65189=>646, - 65190=>646, 65191=>618, 65192=>646, 65193=>445, 65194=>525, 65195=>445, 65196=>525, 65197=>483, 65198=>552, 65199=>483, 65200=>552, 65201=>1221, 65202=>1275, 65203=>838, 65204=>892, 65205=>1221, - 65206=>1275, 65207=>838, 65208=>892, 65209=>1209, 65210=>1225, 65211=>849, 65212=>867, 65213=>1209, 65214=>1225, 65215=>849, 65216=>867, 65217=>925, 65218=>949, 65219=>796, 65220=>820, 65221=>925, - 65222=>949, 65223=>796, 65224=>820, 65225=>597, 65226=>532, 65227=>597, 65228=>482, 65229=>597, 65230=>532, 65231=>523, 65232=>482, 65233=>1037, 65234=>1035, 65235=>478, 65236=>506, 65237=>776, - 65238=>834, 65239=>478, 65240=>506, 65241=>824, 65242=>843, 65243=>476, 65244=>552, 65245=>727, 65246=>757, 65247=>305, 65248=>331, 65249=>619, 65250=>666, 65251=>536, 65252=>578, 65253=>734, - 65254=>761, 65255=>278, 65256=>302, 65257=>524, 65258=>536, 65259=>527, 65260=>461, 65261=>483, 65262=>517, 65263=>783, 65264=>833, 65265=>783, 65266=>833, 65267=>278, 65268=>302, 65269=>570, - 65270=>597, 65271=>570, 65272=>597, 65273=>570, 65274=>597, 65275=>570, 65276=>597, 65279=>0, 65533=>1025); -$enc=''; -$diff=''; -$file='DejaVuSans.z'; -$ctg='DejaVuSans.ctg.z'; -$originalsize=520788; -?> diff --git a/libraries/tcpdf/font/dejavusans.z b/libraries/tcpdf/font/dejavusans.z deleted file mode 100644 index 79424a7892ec9f76ab8176c6650f7f0b9328c5d5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 279448 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

    oBBKObC<=l9TsU* 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ʾ+lrsU;! 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ȧP9WOsU<7(?KzZIz$ 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 diff --git a/libraries/tcpdf/font/dejavusansb.php b/libraries/tcpdf/font/dejavusansb.php deleted file mode 100644 index 25a1b946d..000000000 --- a/libraries/tcpdf/font/dejavusansb.php +++ /dev/null @@ -1,291 +0,0 @@ -928,'Descent'=>-236,'CapHeight'=>928,'Flags'=>32,'FontBBox'=>'[-1069 -388 1975 1123]','ItalicAngle'=>0,'StemV'=>120,'MissingWidth'=>600); -$up=-42; -$ut=44; -$cw=array( - 0=>600, 32=>348, 33=>456, 34=>521, 35=>838, 36=>696, 37=>1002, 38=>872, 39=>306, 40=>457, 41=>457, 42=>523, 43=>838, 44=>380, 45=>415, 46=>380, - 47=>365, 48=>696, 49=>696, 50=>696, 51=>696, 52=>696, 53=>696, 54=>696, 55=>696, 56=>696, 57=>696, 58=>400, 59=>400, 60=>838, 61=>838, 62=>838, - 63=>580, 64=>1000, 65=>774, 66=>762, 67=>734, 68=>830, 69=>683, 70=>683, 71=>821, 72=>837, 73=>372, 74=>372, 75=>775, 76=>637, 77=>995, 78=>837, - 79=>850, 80=>733, 81=>850, 82=>770, 83=>720, 84=>682, 85=>812, 86=>774, 87=>1103, 88=>771, 89=>724, 90=>725, 91=>457, 92=>365, 93=>457, 94=>838, - 95=>500, 96=>500, 97=>675, 98=>716, 99=>593, 100=>716, 101=>678, 102=>435, 103=>716, 104=>712, 105=>343, 106=>343, 107=>665, 108=>343, 109=>1042, 110=>712, - 111=>687, 112=>716, 113=>716, 114=>493, 115=>595, 116=>478, 117=>712, 118=>652, 119=>924, 120=>645, 121=>652, 122=>582, 123=>712, 124=>365, 125=>712, 126=>838, - 8364=>696, 1027=>637, 8218=>380, 402=>435, 8222=>657, 8230=>1000, 8224=>500, 8225=>500, 710=>500, 8240=>1440, 352=>720, 8249=>412, 338=>1167, 1036=>817, 381=>725, 1039=>837, - 8216=>380, 8217=>380, 8220=>657, 8221=>657, 8226=>639, 8211=>500, 8212=>1000, 732=>500, 8482=>1000, 353=>595, 8250=>412, 339=>1094, 1116=>679, 382=>582, 376=>724, 160=>348, - 161=>456, 162=>696, 163=>696, 164=>636, 165=>696, 166=>365, 167=>500, 168=>500, 169=>1000, 170=>564, 171=>646, 172=>838, 173=>415, 174=>1000, 175=>500, 176=>500, - 177=>838, 178=>438, 179=>438, 180=>500, 181=>736, 182=>636, 183=>380, 184=>500, 185=>438, 186=>564, 187=>646, 188=>1035, 189=>1035, 190=>1035, 191=>580, 192=>774, - 193=>774, 194=>774, 195=>774, 196=>774, 197=>774, 198=>1085, 199=>734, 200=>683, 201=>683, 202=>683, 203=>683, 204=>372, 205=>372, 206=>372, 207=>372, 208=>838, - 209=>837, 210=>850, 211=>850, 212=>850, 213=>850, 214=>850, 215=>838, 216=>850, 217=>812, 218=>812, 219=>812, 220=>812, 221=>724, 222=>738, 223=>719, 224=>675, - 225=>675, 226=>675, 227=>675, 228=>675, 229=>675, 230=>1048, 231=>593, 232=>678, 233=>678, 234=>678, 235=>678, 236=>343, 237=>343, 238=>343, 239=>343, 240=>687, - 241=>712, 242=>687, 243=>687, 244=>687, 245=>687, 246=>687, 247=>838, 248=>687, 249=>712, 250=>712, 251=>712, 252=>712, 253=>652, 254=>716, 255=>652, 256=>774, - 257=>675, 258=>774, 259=>675, 260=>774, 261=>675, 262=>734, 263=>593, 264=>734, 265=>593, 266=>734, 267=>593, 268=>734, 269=>593, 270=>830, 271=>716, 272=>838, - 273=>716, 274=>683, 275=>678, 276=>683, 277=>678, 278=>683, 279=>678, 280=>683, 281=>678, 282=>683, 283=>678, 284=>821, 285=>716, 286=>821, 287=>716, 288=>821, - 289=>716, 290=>821, 291=>716, 292=>837, 293=>712, 294=>974, 295=>790, 296=>372, 297=>343, 298=>372, 299=>343, 300=>372, 301=>343, 302=>372, 303=>343, 304=>372, - 305=>343, 306=>744, 307=>686, 308=>372, 309=>343, 310=>775, 311=>665, 312=>665, 313=>637, 314=>343, 315=>637, 316=>343, 317=>637, 318=>479, 319=>637, 320=>557, - 321=>642, 322=>371, 323=>837, 324=>712, 325=>837, 326=>712, 327=>837, 328=>712, 329=>983, 330=>837, 331=>712, 332=>850, 333=>687, 334=>850, 335=>687, 336=>850, - 337=>687, 340=>770, 341=>493, 342=>770, 343=>493, 344=>770, 345=>493, 346=>720, 347=>595, 348=>720, 349=>595, 350=>720, 351=>595, 354=>682, 355=>478, 356=>682, - 357=>478, 358=>682, 359=>478, 360=>812, 361=>712, 362=>812, 363=>712, 364=>812, 365=>712, 366=>812, 367=>712, 368=>812, 369=>712, 370=>812, 371=>712, 372=>1103, - 373=>924, 374=>724, 375=>652, 377=>725, 378=>582, 379=>725, 380=>582, 383=>435, 384=>716, 385=>811, 386=>762, 387=>716, 388=>762, 389=>716, 390=>734, 391=>734, - 392=>593, 393=>838, 394=>879, 395=>757, 396=>716, 397=>688, 398=>683, 399=>849, 400=>696, 401=>683, 403=>821, 404=>793, 405=>1045, 406=>436, 407=>389, 408=>775, - 409=>665, 410=>360, 411=>592, 412=>1042, 413=>837, 414=>712, 415=>850, 416=>874, 417=>687, 418=>1114, 419=>962, 420=>782, 421=>716, 422=>770, 423=>720, 424=>595, - 425=>683, 426=>552, 427=>478, 428=>707, 429=>478, 430=>682, 431=>835, 432=>712, 433=>769, 434=>813, 435=>797, 436=>778, 437=>725, 438=>582, 439=>772, 440=>772, - 441=>641, 442=>582, 443=>696, 444=>772, 445=>641, 446=>573, 447=>716, 448=>372, 449=>659, 450=>544, 451=>372, 452=>1555, 453=>1412, 454=>1298, 455=>1009, 456=>980, - 457=>686, 458=>1209, 459=>1180, 460=>1055, 461=>774, 462=>675, 463=>372, 464=>343, 465=>850, 466=>687, 467=>812, 468=>712, 469=>812, 470=>712, 471=>812, 472=>712, - 473=>812, 474=>712, 475=>812, 476=>712, 477=>678, 478=>774, 479=>675, 480=>774, 481=>675, 482=>1085, 483=>1048, 484=>821, 485=>716, 486=>821, 487=>716, 488=>775, - 489=>665, 490=>850, 491=>687, 492=>850, 493=>687, 494=>772, 495=>582, 496=>343, 497=>1555, 498=>1412, 499=>1298, 500=>821, 501=>716, 502=>1289, 503=>787, 504=>837, - 505=>712, 506=>774, 507=>675, 508=>1085, 509=>1048, 510=>850, 511=>687, 512=>774, 513=>675, 514=>774, 515=>675, 516=>683, 517=>678, 518=>683, 519=>678, 520=>372, - 521=>343, 522=>372, 523=>343, 524=>850, 525=>687, 526=>850, 527=>687, 528=>770, 529=>493, 530=>770, 531=>493, 532=>812, 533=>712, 534=>812, 535=>712, 536=>720, - 537=>595, 538=>682, 539=>478, 540=>690, 541=>607, 542=>837, 543=>712, 544=>837, 545=>865, 546=>809, 547=>659, 548=>725, 549=>582, 550=>774, 551=>675, 552=>683, - 553=>678, 554=>850, 555=>687, 556=>850, 557=>687, 558=>850, 559=>687, 560=>850, 561=>687, 562=>724, 563=>652, 564=>492, 565=>867, 566=>512, 567=>343, 568=>1088, - 569=>1088, 570=>774, 571=>734, 572=>593, 573=>637, 574=>682, 575=>595, 576=>582, 577=>782, 578=>614, 579=>762, 580=>812, 581=>774, 582=>683, 583=>678, 584=>372, - 585=>343, 586=>860, 587=>791, 588=>770, 589=>493, 590=>724, 591=>652, 592=>675, 593=>716, 594=>716, 595=>716, 596=>593, 597=>593, 598=>717, 599=>792, 600=>678, - 601=>678, 602=>876, 603=>557, 604=>545, 605=>815, 606=>731, 607=>343, 608=>792, 609=>716, 610=>627, 611=>735, 612=>635, 613=>712, 614=>712, 615=>712, 616=>545, - 617=>440, 618=>545, 619=>559, 620=>693, 621=>343, 622=>841, 623=>1042, 624=>1042, 625=>1042, 626=>712, 627=>793, 628=>642, 629=>687, 630=>909, 631=>681, 632=>796, - 633=>538, 634=>538, 635=>650, 636=>493, 637=>493, 638=>596, 639=>596, 640=>642, 641=>642, 642=>595, 643=>415, 644=>435, 645=>605, 646=>552, 647=>478, 648=>478, - 649=>920, 650=>769, 651=>670, 652=>652, 653=>924, 654=>652, 655=>724, 656=>694, 657=>684, 658=>641, 659=>641, 660=>573, 661=>573, 662=>573, 663=>573, 664=>850, - 665=>633, 666=>731, 667=>685, 668=>691, 669=>343, 670=>732, 671=>539, 672=>792, 673=>573, 674=>573, 675=>1156, 676=>1214, 677=>1155, 678=>974, 679=>769, 680=>929, - 681=>1026, 682=>792, 683=>780, 684=>591, 685=>415, 686=>677, 687=>789, 688=>456, 689=>456, 690=>219, 691=>315, 692=>315, 693=>315, 694=>411, 695=>591, 696=>417, - 697=>302, 698=>521, 699=>380, 700=>380, 701=>380, 702=>366, 703=>366, 704=>326, 705=>326, 706=>500, 707=>500, 708=>500, 709=>500, 711=>500, 712=>306, 713=>500, - 714=>500, 715=>500, 716=>306, 717=>500, 718=>500, 719=>500, 720=>337, 721=>337, 722=>366, 723=>366, 724=>500, 725=>500, 726=>500, 727=>500, 728=>500, 729=>500, - 730=>500, 731=>500, 733=>500, 734=>351, 735=>500, 736=>412, 737=>219, 738=>381, 739=>413, 740=>326, 741=>500, 742=>500, 743=>500, 744=>500, 745=>500, 748=>500, - 749=>500, 750=>500, 755=>500, 759=>500, 768=>0, 769=>0, 770=>0, 771=>0, 772=>0, 773=>0, 774=>0, 775=>0, 776=>0, 777=>0, 778=>0, 779=>0, - 780=>0, 781=>0, 782=>0, 783=>0, 784=>0, 785=>0, 786=>0, 787=>0, 788=>0, 789=>0, 790=>0, 791=>0, 792=>0, 793=>0, 794=>0, 795=>0, - 796=>0, 797=>0, 798=>0, 799=>0, 800=>0, 801=>0, 802=>0, 803=>0, 804=>0, 805=>0, 806=>0, 807=>0, 808=>0, 809=>0, 810=>0, 811=>0, - 812=>0, 813=>0, 814=>0, 815=>0, 816=>0, 817=>0, 818=>0, 819=>0, 820=>0, 821=>0, 822=>0, 823=>0, 824=>0, 825=>0, 826=>0, 827=>0, - 828=>0, 829=>0, 830=>0, 831=>0, 832=>0, 833=>0, 834=>0, 835=>0, 836=>0, 837=>0, 838=>0, 839=>0, 840=>0, 841=>0, 842=>0, 843=>0, - 844=>0, 845=>0, 846=>0, 847=>0, 849=>0, 850=>0, 851=>0, 855=>0, 856=>0, 860=>0, 861=>0, 862=>0, 863=>0, 864=>0, 865=>0, 866=>0, - 884=>302, 885=>302, 890=>500, 891=>593, 892=>550, 893=>549, 894=>337, 900=>441, 901=>500, 902=>797, 903=>380, 904=>846, 905=>1009, 906=>563, 908=>891, 910=>980, - 911=>894, 912=>390, 913=>774, 914=>762, 915=>637, 916=>774, 917=>683, 918=>725, 919=>837, 920=>850, 921=>372, 922=>775, 923=>774, 924=>995, 925=>837, 926=>632, - 927=>850, 928=>837, 929=>733, 931=>683, 932=>682, 933=>724, 934=>850, 935=>771, 936=>850, 937=>850, 938=>372, 939=>724, 940=>687, 941=>557, 942=>712, 943=>390, - 944=>675, 945=>687, 946=>716, 947=>681, 948=>687, 949=>557, 950=>591, 951=>712, 952=>687, 953=>390, 954=>710, 955=>633, 956=>736, 957=>681, 958=>591, 959=>687, - 960=>791, 961=>716, 962=>593, 963=>779, 964=>638, 965=>675, 966=>782, 967=>645, 968=>794, 969=>869, 970=>390, 971=>675, 972=>687, 973=>675, 974=>869, 976=>651, - 977=>661, 978=>746, 979=>981, 980=>746, 981=>796, 982=>869, 983=>744, 984=>850, 985=>687, 986=>734, 987=>593, 988=>683, 989=>494, 990=>702, 991=>660, 992=>919, - 993=>627, 994=>1093, 995=>837, 996=>832, 997=>716, 998=>928, 999=>744, 1000=>733, 1001=>650, 1002=>789, 1003=>671, 1004=>752, 1005=>716, 1006=>682, 1007=>590, 1008=>744, - 1009=>716, 1010=>593, 1011=>343, 1012=>850, 1013=>645, 1014=>644, 1015=>738, 1016=>716, 1017=>734, 1018=>995, 1019=>732, 1020=>716, 1021=>698, 1022=>734, 1023=>698, 1024=>683, - 1025=>683, 1026=>878, 1028=>734, 1029=>720, 1030=>372, 1031=>372, 1032=>372, 1033=>1154, 1034=>1130, 1035=>878, 1037=>837, 1038=>771, 1040=>774, 1041=>762, 1042=>762, 1043=>637, - 1044=>891, 1045=>683, 1046=>1224, 1047=>710, 1048=>837, 1049=>837, 1050=>817, 1051=>831, 1052=>995, 1053=>837, 1054=>850, 1055=>837, 1056=>733, 1057=>734, 1058=>682, 1059=>771, - 1060=>992, 1061=>771, 1062=>928, 1063=>808, 1064=>1235, 1065=>1326, 1066=>939, 1067=>1036, 1068=>762, 1069=>734, 1070=>1174, 1071=>770, 1072=>675, 1073=>698, 1074=>633, 1075=>522, - 1076=>808, 1077=>678, 1078=>995, 1079=>581, 1080=>701, 1081=>701, 1082=>679, 1083=>732, 1084=>817, 1085=>691, 1086=>687, 1087=>691, 1088=>716, 1089=>593, 1090=>580, 1091=>652, - 1092=>992, 1093=>645, 1094=>741, 1095=>687, 1096=>1062, 1097=>1105, 1098=>751, 1099=>904, 1100=>632, 1101=>593, 1102=>972, 1103=>642, 1104=>678, 1105=>678, 1106=>714, 1107=>522, - 1108=>593, 1109=>595, 1110=>343, 1111=>343, 1112=>343, 1113=>991, 1114=>956, 1115=>734, 1117=>701, 1118=>652, 1119=>691, 1120=>1093, 1121=>869, 1122=>840, 1123=>736, 1124=>1012, - 1125=>839, 1126=>992, 1127=>832, 1128=>1358, 1129=>1121, 1130=>850, 1131=>687, 1132=>1236, 1133=>1007, 1134=>696, 1135=>557, 1136=>1075, 1137=>1061, 1138=>850, 1139=>667, 1140=>850, - 1141=>695, 1142=>850, 1143=>695, 1144=>1148, 1145=>1043, 1146=>1074, 1147=>863, 1148=>1405, 1149=>1173, 1150=>1093, 1151=>869, 1152=>734, 1153=>593, 1154=>652, 1155=>0, 1156=>0, - 1157=>0, 1158=>0, 1160=>418, 1161=>418, 1162=>957, 1163=>807, 1164=>762, 1165=>611, 1166=>733, 1167=>716, 1168=>637, 1169=>522, 1170=>666, 1171=>543, 1172=>808, 1173=>669, - 1174=>1224, 1175=>995, 1176=>710, 1177=>581, 1178=>775, 1179=>679, 1180=>817, 1181=>679, 1182=>817, 1183=>679, 1184=>1015, 1185=>826, 1186=>956, 1187=>808, 1188=>1103, 1189=>874, - 1190=>1273, 1191=>1017, 1192=>875, 1193=>710, 1194=>734, 1195=>593, 1196=>682, 1197=>580, 1198=>724, 1199=>652, 1200=>724, 1201=>652, 1202=>771, 1203=>645, 1204=>1112, 1205=>1000, - 1206=>808, 1207=>687, 1208=>808, 1209=>687, 1210=>808, 1211=>712, 1212=>1026, 1213=>810, 1214=>1026, 1215=>810, 1216=>372, 1217=>1224, 1218=>995, 1219=>775, 1220=>630, 1221=>951, - 1222=>805, 1223=>837, 1224=>691, 1225=>957, 1226=>807, 1227=>808, 1228=>687, 1229=>1115, 1230=>933, 1231=>343, 1232=>774, 1233=>675, 1234=>774, 1235=>675, 1236=>1085, 1237=>1048, - 1238=>683, 1239=>678, 1240=>849, 1241=>678, 1242=>849, 1243=>678, 1244=>1224, 1245=>995, 1246=>710, 1247=>581, 1248=>772, 1249=>641, 1250=>837, 1251=>701, 1252=>837, 1253=>701, - 1254=>850, 1255=>687, 1256=>850, 1257=>687, 1258=>850, 1259=>687, 1260=>734, 1261=>593, 1262=>771, 1263=>652, 1264=>771, 1265=>652, 1266=>771, 1267=>652, 1268=>808, 1269=>687, - 1270=>637, 1271=>522, 1272=>1036, 1273=>904, 1274=>666, 1275=>543, 1276=>771, 1277=>645, 1278=>771, 1279=>645, 1280=>762, 1281=>608, 1282=>1159, 1283=>893, 1284=>1119, 1285=>920, - 1286=>828, 1287=>693, 1288=>1242, 1289=>1017, 1290=>1248, 1291=>1013, 1292=>839, 1293=>638, 1294=>938, 1295=>803, 1296=>696, 1297=>557, 1298=>831, 1299=>732, 1329=>984, 1330=>812, - 1331=>984, 1332=>984, 1333=>812, 1334=>777, 1335=>812, 1336=>812, 1337=>975, 1338=>984, 1339=>812, 1340=>710, 1341=>1078, 1342=>1136, 1343=>812, 1344=>710, 1345=>757, 1346=>984, - 1347=>876, 1348=>984, 1349=>793, 1350=>984, 1351=>812, 1352=>812, 1353=>812, 1354=>958, 1355=>777, 1356=>984, 1357=>812, 1358=>984, 1359=>720, 1360=>812, 1361=>793, 1362=>895, - 1363=>850, 1364=>936, 1365=>850, 1366=>720, 1369=>366, 1370=>380, 1371=>550, 1372=>550, 1373=>380, 1374=>546, 1375=>521, 1377=>1042, 1378=>712, 1379=>866, 1380=>868, 1381=>712, - 1382=>817, 1383=>653, 1384=>712, 1385=>811, 1386=>817, 1387=>712, 1388=>498, 1389=>1018, 1390=>716, 1391=>712, 1392=>712, 1393=>716, 1394=>819, 1395=>712, 1396=>751, 1397=>343, - 1398=>882, 1399=>559, 1400=>712, 1401=>559, 1402=>1042, 1403=>559, 1404=>863, 1405=>712, 1406=>813, 1407=>1042, 1408=>712, 1409=>716, 1410=>571, 1411=>1042, 1412=>778, 1413=>687, - 1414=>720, 1415=>862, 1417=>400, 1418=>487, 1456=>0, 1457=>0, 1458=>0, 1459=>0, 1460=>0, 1461=>0, 1462=>0, 1463=>0, 1464=>0, 1465=>0, 1467=>0, 1468=>0, - 1469=>0, 1471=>0, 1472=>372, 1473=>0, 1474=>0, 1475=>372, 1478=>532, 1479=>0, 1488=>751, 1489=>731, 1490=>537, 1491=>684, 1492=>778, 1493=>372, 1494=>521, 1495=>778, - 1496=>770, 1497=>372, 1498=>778, 1499=>750, 1500=>718, 1501=>778, 1502=>856, 1503=>372, 1504=>532, 1505=>855, 1506=>720, 1507=>802, 1508=>777, 1509=>628, 1510=>751, 1511=>803, - 1512=>778, 1513=>963, 1514=>822, 1520=>692, 1521=>692, 1522=>692, 1548=>380, 1557=>0, 1563=>400, 1567=>580, 1569=>511, 1570=>343, 1571=>343, 1572=>622, 1573=>343, 1574=>917, - 1575=>343, 1576=>1005, 1577=>590, 1578=>1005, 1579=>1005, 1580=>721, 1581=>721, 1582=>721, 1583=>513, 1584=>513, 1585=>576, 1586=>576, 1587=>1380, 1588=>1380, 1589=>1345, 1590=>1345, - 1591=>1039, 1592=>1039, 1593=>683, 1594=>683, 1600=>342, 1601=>1162, 1602=>894, 1603=>917, 1604=>868, 1605=>733, 1606=>854, 1607=>590, 1608=>622, 1609=>917, 1610=>917, 1611=>0, - 1612=>0, 1613=>0, 1614=>0, 1615=>0, 1616=>0, 1617=>0, 1618=>0, 1619=>0, 1620=>0, 1621=>0, 1626=>500, 1632=>610, 1633=>610, 1634=>610, 1635=>610, 1636=>610, - 1637=>610, 1638=>610, 1639=>610, 1640=>610, 1641=>610, 1642=>610, 1643=>374, 1644=>380, 1645=>545, 1646=>1005, 1647=>894, 1652=>292, 1657=>1005, 1658=>1005, 1659=>1005, 1660=>1005, - 1661=>1005, 1662=>1005, 1663=>1005, 1664=>1005, 1665=>721, 1666=>721, 1667=>721, 1668=>721, 1669=>721, 1670=>721, 1671=>721, 1681=>576, 1682=>576, 1685=>681, 1688=>576, 1697=>1162, - 1700=>1162, 1702=>1162, 1705=>1024, 1711=>1024, 1717=>868, 1722=>854, 1727=>721, 1734=>622, 1740=>917, 1742=>917, 1749=>590, 1776=>610, 1777=>610, 1778=>610, 1779=>610, 1780=>610, - 1781=>610, 1782=>610, 1783=>610, 1784=>610, 1785=>610, 3647=>743, 3713=>790, 3714=>748, 3716=>749, 3719=>569, 3720=>742, 3722=>744, 3725=>761, 3732=>706, 3733=>704, 3734=>747, - 3735=>819, 3737=>730, 3738=>727, 3739=>727, 3740=>922, 3741=>827, 3742=>866, 3743=>866, 3745=>836, 3746=>761, 3747=>770, 3749=>769, 3751=>713, 3754=>827, 3755=>1031, 3757=>724, - 3758=>784, 3759=>934, 3760=>688, 3761=>0, 3762=>610, 3763=>610, 3764=>0, 3765=>0, 3766=>0, 3767=>0, 3768=>0, 3769=>0, 3771=>0, 3772=>0, 3773=>670, 3776=>516, - 3777=>860, 3778=>516, 3779=>650, 3780=>632, 3782=>759, 3784=>0, 3785=>0, 3786=>0, 3787=>0, 3788=>0, 3789=>0, 3804=>1363, 3805=>1363, 5121=>774, 5122=>774, 5123=>774, - 5124=>774, 5125=>905, 5126=>905, 5127=>905, 5129=>905, 5130=>905, 5131=>905, 5132=>1018, 5133=>1009, 5134=>1018, 5135=>1009, 5136=>1018, 5137=>1009, 5138=>1149, 5139=>1140, 5140=>1149, - 5141=>1140, 5142=>905, 5143=>1149, 5144=>1142, 5145=>1149, 5146=>1142, 5147=>905, 5149=>310, 5150=>529, 5151=>425, 5152=>425, 5153=>395, 5154=>395, 5155=>395, 5156=>395, 5157=>564, - 5158=>470, 5159=>310, 5160=>395, 5161=>395, 5162=>395, 5163=>1213, 5164=>986, 5165=>1216, 5166=>1297, 5167=>774, 5168=>774, 5169=>774, 5170=>774, 5171=>886, 5172=>886, 5173=>886, - 5175=>886, 5176=>886, 5177=>886, 5178=>1018, 5179=>1009, 5180=>1018, 5181=>1009, 5182=>1018, 5183=>1009, 5184=>1149, 5185=>1140, 5186=>1149, 5187=>1140, 5188=>1149, 5189=>1142, 5190=>1149, - 5191=>1142, 5192=>886, 5193=>576, 5194=>229, 5196=>812, 5197=>812, 5198=>812, 5199=>812, 5200=>815, 5201=>815, 5202=>815, 5204=>815, 5205=>815, 5206=>815, 5207=>1056, 5208=>1048, - 5209=>1056, 5210=>1048, 5211=>1056, 5212=>1048, 5213=>1060, 5214=>1054, 5215=>1060, 5216=>1054, 5217=>1060, 5218=>1052, 5219=>1060, 5220=>1052, 5221=>1060, 5222=>483, 5223=>1005, 5224=>1005, - 5225=>1023, 5226=>1017, 5227=>743, 5228=>743, 5229=>743, 5230=>743, 5231=>743, 5232=>755, 5233=>743, 5234=>743, 5235=>743, 5236=>1029, 5237=>975, 5238=>980, 5239=>975, 5240=>980, - 5241=>975, 5242=>1029, 5243=>975, 5244=>1029, 5245=>975, 5246=>980, 5247=>975, 5248=>980, 5249=>975, 5250=>980, 5251=>501, 5252=>501, 5253=>938, 5254=>938, 5255=>938, 5256=>938, - 5257=>743, 5258=>743, 5259=>743, 5260=>743, 5261=>743, 5262=>755, 5263=>743, 5264=>743, 5265=>743, 5266=>1029, 5267=>975, 5268=>1029, 5269=>975, 5270=>1029, 5271=>975, 5272=>1029, - 5273=>975, 5274=>1029, 5275=>975, 5276=>1029, 5277=>975, 5278=>1029, 5279=>975, 5280=>1029, 5281=>501, 5282=>501, 5283=>626, 5284=>626, 5285=>626, 5286=>626, 5287=>626, 5288=>667, - 5289=>626, 5290=>626, 5291=>626, 5292=>881, 5293=>854, 5294=>863, 5295=>874, 5296=>863, 5297=>874, 5298=>881, 5299=>874, 5300=>881, 5301=>874, 5302=>863, 5303=>874, 5304=>863, - 5305=>874, 5306=>863, 5307=>436, 5308=>548, 5309=>436, 5312=>988, 5313=>988, 5314=>988, 5315=>988, 5316=>931, 5317=>931, 5318=>931, 5319=>931, 5320=>931, 5321=>1238, 5322=>1247, - 5323=>1200, 5324=>1228, 5325=>1200, 5326=>1228, 5327=>931, 5328=>660, 5329=>497, 5330=>660, 5331=>988, 5332=>988, 5333=>988, 5334=>988, 5335=>931, 5336=>931, 5337=>931, 5338=>931, - 5339=>931, 5340=>1231, 5341=>1247, 5342=>1283, 5343=>1228, 5344=>1283, 5345=>1228, 5346=>1228, 5347=>1214, 5348=>1228, 5349=>1214, 5350=>1283, 5351=>1228, 5352=>1283, 5353=>1228, 5354=>660, - 5356=>886, 5357=>730, 5358=>730, 5359=>730, 5360=>730, 5361=>730, 5362=>755, 5363=>730, 5364=>730, 5365=>730, 5366=>998, 5367=>958, 5368=>967, 5369=>989, 5370=>967, 5371=>989, - 5372=>998, 5373=>958, 5374=>998, 5375=>958, 5376=>967, 5377=>989, 5378=>967, 5379=>989, 5380=>967, 5381=>493, 5382=>460, 5383=>493, 5392=>923, 5393=>923, 5394=>923, 5395=>1136, - 5396=>1136, 5397=>1136, 5398=>1136, 5399=>1209, 5400=>1202, 5401=>1209, 5402=>1202, 5403=>1209, 5404=>1202, 5405=>1431, 5406=>1420, 5407=>1431, 5408=>1420, 5409=>1431, 5410=>1420, 5411=>1431, - 5412=>1420, 5413=>746, 5414=>776, 5415=>776, 5416=>776, 5417=>776, 5418=>776, 5419=>776, 5420=>776, 5421=>776, 5422=>776, 5423=>1003, 5424=>1003, 5425=>1013, 5426=>996, 5427=>1013, - 5428=>996, 5429=>1003, 5430=>1003, 5431=>1003, 5432=>1003, 5433=>1013, 5434=>996, 5435=>1013, 5436=>996, 5437=>1013, 5438=>495, 5440=>395, 5441=>510, 5442=>1033, 5443=>1033, 5444=>976, - 5445=>976, 5446=>976, 5447=>976, 5448=>733, 5449=>733, 5450=>733, 5451=>733, 5452=>733, 5453=>733, 5454=>1003, 5455=>959, 5456=>495, 5458=>886, 5459=>774, 5460=>774, 5461=>774, - 5462=>774, 5463=>928, 5464=>928, 5465=>928, 5466=>928, 5467=>1172, 5468=>1142, 5469=>602, 5470=>812, 5471=>812, 5472=>812, 5473=>812, 5474=>812, 5475=>812, 5476=>815, 5477=>815, - 5478=>815, 5479=>815, 5480=>1060, 5481=>1052, 5482=>548, 5492=>977, 5493=>977, 5494=>977, 5495=>977, 5496=>977, 5497=>977, 5498=>977, 5499=>618, 5500=>837, 5501=>510, 5502=>1238, - 5503=>1238, 5504=>1238, 5505=>1238, 5506=>1238, 5507=>1238, 5508=>1238, 5509=>989, 5514=>977, 5515=>977, 5516=>977, 5517=>977, 5518=>1591, 5519=>1591, 5520=>1591, 5521=>1295, 5522=>1295, - 5523=>1591, 5524=>1591, 5525=>848, 5526=>1273, 5536=>988, 5537=>988, 5538=>931, 5539=>931, 5540=>931, 5541=>931, 5542=>660, 5543=>776, 5544=>776, 5545=>776, 5546=>776, 5547=>776, - 5548=>776, 5549=>776, 5550=>495, 5551=>743, 5598=>830, 5601=>830, 5702=>496, 5703=>496, 5742=>413, 5743=>1238, 5744=>1591, 5745=>2016, 5746=>2016, 5747=>1720, 5748=>1678, 5749=>2016, - 5750=>2016, 7424=>652, 7425=>833, 7426=>1048, 7427=>608, 7428=>593, 7429=>676, 7430=>676, 7431=>559, 7432=>557, 7433=>343, 7434=>494, 7435=>665, 7436=>539, 7437=>817, 7438=>701, - 7439=>687, 7440=>593, 7441=>660, 7442=>660, 7443=>660, 7444=>1094, 7446=>687, 7447=>687, 7448=>556, 7449=>642, 7450=>642, 7451=>580, 7452=>634, 7453=>737, 7454=>948, 7455=>695, - 7456=>652, 7457=>924, 7458=>582, 7459=>646, 7462=>539, 7463=>652, 7464=>691, 7465=>556, 7466=>781, 7467=>732, 7468=>487, 7469=>683, 7470=>480, 7472=>523, 7473=>430, 7474=>430, - 7475=>517, 7476=>527, 7477=>234, 7478=>234, 7479=>488, 7480=>401, 7481=>626, 7482=>527, 7483=>527, 7484=>535, 7485=>509, 7486=>461, 7487=>485, 7488=>430, 7489=>511, 7490=>695, - 7491=>458, 7492=>458, 7493=>479, 7494=>712, 7495=>479, 7496=>479, 7497=>479, 7498=>479, 7499=>386, 7500=>386, 7501=>479, 7502=>219, 7503=>487, 7504=>664, 7505=>456, 7506=>488, - 7507=>414, 7508=>488, 7509=>488, 7510=>479, 7511=>388, 7512=>456, 7513=>462, 7514=>664, 7515=>501, 7517=>451, 7518=>429, 7519=>433, 7520=>493, 7521=>406, 7522=>219, 7523=>315, - 7524=>456, 7525=>501, 7526=>451, 7527=>429, 7528=>433, 7529=>493, 7530=>406, 7543=>716, 7544=>527, 7547=>545, 7557=>514, 7579=>479, 7580=>414, 7581=>414, 7582=>488, 7583=>386, - 7584=>377, 7585=>348, 7586=>479, 7587=>456, 7588=>347, 7589=>281, 7590=>347, 7591=>347, 7592=>431, 7593=>326, 7594=>330, 7595=>370, 7596=>664, 7597=>664, 7598=>562, 7599=>562, - 7600=>448, 7601=>488, 7602=>542, 7603=>422, 7604=>396, 7605=>388, 7606=>583, 7607=>494, 7608=>399, 7609=>451, 7610=>501, 7611=>417, 7612=>523, 7613=>470, 7614=>455, 7615=>425, - 7620=>0, 7621=>0, 7622=>0, 7623=>0, 7624=>0, 7625=>0, 7680=>774, 7681=>675, 7682=>762, 7683=>716, 7684=>762, 7685=>716, 7686=>762, 7687=>716, 7688=>734, 7689=>593, - 7690=>830, 7691=>716, 7692=>830, 7693=>716, 7694=>830, 7695=>716, 7696=>830, 7697=>716, 7698=>830, 7699=>716, 7700=>683, 7701=>678, 7702=>683, 7703=>678, 7704=>683, 7705=>678, - 7706=>683, 7707=>678, 7708=>683, 7709=>678, 7710=>683, 7711=>435, 7712=>821, 7713=>716, 7714=>837, 7715=>712, 7716=>837, 7717=>712, 7718=>837, 7719=>712, 7720=>837, 7721=>712, - 7722=>837, 7723=>712, 7724=>372, 7725=>343, 7726=>372, 7727=>343, 7728=>775, 7729=>665, 7730=>775, 7731=>665, 7732=>775, 7733=>665, 7734=>637, 7735=>343, 7736=>637, 7737=>343, - 7738=>637, 7739=>343, 7740=>637, 7741=>343, 7742=>995, 7743=>1042, 7744=>995, 7745=>1042, 7746=>995, 7747=>1042, 7748=>837, 7749=>712, 7750=>837, 7751=>712, 7752=>837, 7753=>712, - 7754=>837, 7755=>712, 7756=>850, 7757=>687, 7758=>850, 7759=>687, 7760=>850, 7761=>687, 7762=>850, 7763=>687, 7764=>733, 7765=>716, 7766=>733, 7767=>716, 7768=>770, 7769=>493, - 7770=>770, 7771=>493, 7772=>770, 7773=>493, 7774=>770, 7775=>493, 7776=>720, 7777=>595, 7778=>720, 7779=>595, 7780=>720, 7781=>595, 7782=>720, 7783=>595, 7784=>720, 7785=>595, - 7786=>682, 7787=>478, 7788=>682, 7789=>478, 7790=>682, 7791=>478, 7792=>682, 7793=>478, 7794=>812, 7795=>712, 7796=>812, 7797=>712, 7798=>812, 7799=>712, 7800=>812, 7801=>712, - 7802=>812, 7803=>712, 7804=>774, 7805=>652, 7806=>774, 7807=>652, 7808=>1103, 7809=>924, 7810=>1103, 7811=>924, 7812=>1103, 7813=>924, 7814=>1103, 7815=>924, 7816=>1103, 7817=>924, - 7818=>771, 7819=>645, 7820=>771, 7821=>645, 7822=>724, 7823=>652, 7824=>725, 7825=>582, 7826=>725, 7827=>582, 7828=>725, 7829=>582, 7830=>712, 7831=>478, 7832=>924, 7833=>652, - 7834=>675, 7835=>435, 7840=>774, 7841=>675, 7842=>774, 7843=>675, 7844=>774, 7845=>675, 7846=>774, 7847=>675, 7848=>774, 7849=>675, 7850=>774, 7851=>675, 7852=>774, 7853=>675, - 7854=>774, 7855=>675, 7856=>774, 7857=>675, 7858=>774, 7859=>675, 7860=>774, 7861=>675, 7862=>774, 7863=>675, 7864=>683, 7865=>678, 7866=>683, 7867=>678, 7868=>683, 7869=>678, - 7870=>683, 7871=>678, 7872=>683, 7873=>678, 7874=>683, 7875=>678, 7876=>683, 7877=>678, 7878=>683, 7879=>678, 7880=>372, 7881=>343, 7882=>372, 7883=>343, 7884=>850, 7885=>687, - 7886=>850, 7887=>687, 7888=>850, 7889=>687, 7890=>850, 7891=>687, 7892=>850, 7893=>687, 7894=>850, 7895=>687, 7896=>850, 7897=>687, 7898=>874, 7899=>687, 7900=>874, 7901=>687, - 7902=>874, 7903=>687, 7904=>874, 7905=>687, 7906=>874, 7907=>687, 7908=>812, 7909=>712, 7910=>812, 7911=>712, 7912=>835, 7913=>712, 7914=>835, 7915=>712, 7916=>835, 7917=>712, - 7918=>835, 7919=>712, 7920=>835, 7921=>712, 7922=>724, 7923=>652, 7924=>724, 7925=>652, 7926=>724, 7927=>652, 7928=>724, 7929=>652, 7936=>687, 7937=>687, 7938=>687, 7939=>687, - 7940=>687, 7941=>687, 7942=>687, 7943=>687, 7944=>774, 7945=>774, 7946=>1041, 7947=>1043, 7948=>935, 7949=>963, 7950=>835, 7951=>859, 7952=>557, 7953=>557, 7954=>557, 7955=>557, - 7956=>557, 7957=>557, 7960=>792, 7961=>794, 7962=>1100, 7963=>1096, 7964=>1023, 7965=>1052, 7968=>712, 7969=>712, 7970=>712, 7971=>712, 7972=>712, 7973=>712, 7974=>712, 7975=>712, - 7976=>945, 7977=>951, 7978=>1250, 7979=>1250, 7980=>1180, 7981=>1206, 7982=>1054, 7983=>1063, 7984=>390, 7985=>390, 7986=>390, 7987=>390, 7988=>390, 7989=>390, 7990=>390, 7991=>390, - 7992=>483, 7993=>489, 7994=>777, 7995=>785, 7996=>712, 7997=>738, 7998=>604, 7999=>604, 8000=>687, 8001=>687, 8002=>687, 8003=>687, 8004=>687, 8005=>687, 8008=>892, 8009=>933, - 8010=>1221, 8011=>1224, 8012=>1053, 8013=>1082, 8016=>675, 8017=>675, 8018=>675, 8019=>675, 8020=>675, 8021=>675, 8022=>675, 8023=>675, 8025=>930, 8027=>1184, 8029=>1199, 8031=>1049, - 8032=>869, 8033=>869, 8034=>869, 8035=>869, 8036=>869, 8037=>869, 8038=>869, 8039=>869, 8040=>909, 8041=>958, 8042=>1246, 8043=>1251, 8044=>1076, 8045=>1105, 8046=>1028, 8047=>1076, - 8048=>687, 8049=>687, 8050=>557, 8051=>557, 8052=>712, 8053=>712, 8054=>390, 8055=>390, 8056=>687, 8057=>687, 8058=>675, 8059=>675, 8060=>869, 8061=>869, 8064=>687, 8065=>687, - 8066=>687, 8067=>687, 8068=>687, 8069=>687, 8070=>687, 8071=>687, 8072=>774, 8073=>774, 8074=>1041, 8075=>1043, 8076=>935, 8077=>963, 8078=>835, 8079=>859, 8080=>712, 8081=>712, - 8082=>712, 8083=>712, 8084=>712, 8085=>712, 8086=>712, 8087=>712, 8088=>945, 8089=>951, 8090=>1250, 8091=>1250, 8092=>1180, 8093=>1206, 8094=>1054, 8095=>1063, 8096=>869, 8097=>869, - 8098=>869, 8099=>869, 8100=>869, 8101=>869, 8102=>869, 8103=>869, 8104=>909, 8105=>958, 8106=>1246, 8107=>1251, 8108=>1076, 8109=>1105, 8110=>1028, 8111=>1076, 8112=>687, 8113=>687, - 8114=>687, 8115=>687, 8116=>687, 8118=>687, 8119=>687, 8120=>774, 8121=>774, 8122=>876, 8123=>797, 8124=>774, 8125=>500, 8126=>500, 8127=>500, 8128=>500, 8129=>500, 8130=>712, - 8131=>712, 8132=>712, 8134=>712, 8135=>712, 8136=>929, 8137=>846, 8138=>1080, 8139=>1009, 8140=>837, 8141=>500, 8142=>500, 8143=>500, 8144=>390, 8145=>390, 8146=>390, 8147=>390, - 8150=>390, 8151=>390, 8152=>372, 8153=>372, 8154=>621, 8155=>563, 8157=>500, 8158=>500, 8159=>500, 8160=>675, 8161=>675, 8162=>675, 8163=>675, 8164=>716, 8165=>716, 8166=>675, - 8167=>675, 8168=>724, 8169=>724, 8170=>1020, 8171=>980, 8172=>838, 8173=>500, 8174=>500, 8175=>500, 8178=>869, 8179=>869, 8180=>869, 8182=>869, 8183=>869, 8184=>1065, 8185=>891, - 8186=>1084, 8187=>894, 8188=>850, 8189=>500, 8190=>500, 8192=>500, 8193=>1000, 8194=>500, 8195=>1000, 8196=>330, 8197=>250, 8198=>167, 8199=>696, 8200=>380, 8201=>200, 8202=>100, - 8203=>0, 8204=>0, 8205=>0, 8206=>0, 8207=>0, 8208=>415, 8209=>415, 8210=>696, 8213=>1000, 8214=>500, 8215=>500, 8219=>380, 8223=>657, 8227=>639, 8228=>333, 8229=>667, - 8231=>348, 8234=>0, 8235=>0, 8236=>0, 8237=>0, 8238=>0, 8239=>200, 8241=>1887, 8242=>264, 8243=>447, 8244=>630, 8245=>264, 8246=>447, 8247=>630, 8248=>733, 8251=>972, - 8252=>627, 8253=>580, 8254=>500, 8255=>828, 8256=>828, 8257=>329, 8258=>1023, 8259=>500, 8260=>456, 8261=>457, 8262=>457, 8263=>1030, 8264=>829, 8265=>829, 8266=>513, 8267=>636, - 8268=>500, 8269=>500, 8270=>523, 8271=>400, 8272=>828, 8273=>523, 8274=>556, 8275=>838, 8276=>828, 8277=>838, 8278=>684, 8279=>813, 8280=>838, 8281=>838, 8282=>380, 8283=>872, - 8284=>838, 8285=>380, 8286=>380, 8287=>222, 8288=>0, 8289=>0, 8290=>0, 8291=>0, 8298=>0, 8299=>0, 8300=>0, 8301=>0, 8302=>0, 8303=>0, 8304=>438, 8305=>219, - 8308=>438, 8309=>438, 8310=>438, 8311=>438, 8312=>438, 8313=>438, 8314=>528, 8315=>528, 8316=>528, 8317=>288, 8318=>288, 8319=>456, 8320=>438, 8321=>438, 8322=>438, 8323=>438, - 8324=>438, 8325=>438, 8326=>438, 8327=>438, 8328=>438, 8329=>438, 8330=>528, 8331=>528, 8332=>528, 8333=>288, 8334=>288, 8336=>458, 8337=>479, 8338=>488, 8339=>413, 8340=>479, - 8352=>929, 8353=>696, 8354=>696, 8355=>696, 8356=>696, 8357=>1042, 8358=>837, 8359=>1518, 8360=>1205, 8361=>1103, 8362=>904, 8363=>696, 8365=>696, 8366=>682, 8367=>1392, 8368=>696, - 8369=>696, 8370=>696, 8371=>696, 8372=>859, 8373=>696, 8400=>0, 8401=>0, 8406=>0, 8407=>0, 8448=>1120, 8449=>1170, 8450=>734, 8451=>1211, 8452=>896, 8453=>1091, 8454=>1144, - 8455=>614, 8456=>698, 8457=>1086, 8459=>1073, 8460=>913, 8461=>850, 8462=>712, 8463=>712, 8464=>604, 8465=>694, 8466=>868, 8467=>472, 8468=>974, 8469=>837, 8470=>1203, 8471=>1000, - 8472=>697, 8473=>702, 8474=>850, 8475=>876, 8476=>814, 8477=>792, 8478=>896, 8479=>710, 8480=>1020, 8481=>1281, 8483=>755, 8484=>725, 8485=>578, 8486=>850, 8487=>769, 8488=>763, - 8489=>338, 8490=>775, 8491=>774, 8492=>928, 8493=>776, 8494=>854, 8495=>636, 8496=>738, 8497=>811, 8498=>683, 8499=>1193, 8500=>465, 8501=>794, 8502=>736, 8503=>503, 8504=>695, - 8505=>380, 8506=>945, 8507=>1348, 8508=>790, 8509=>737, 8510=>652, 8511=>845, 8512=>840, 8513=>775, 8514=>557, 8515=>637, 8516=>760, 8517=>830, 8518=>716, 8519=>678, 8520=>343, - 8521=>343, 8523=>872, 8526=>547, 8531=>1035, 8532=>1035, 8533=>1035, 8534=>1035, 8535=>1035, 8536=>1035, 8537=>1035, 8538=>1035, 8539=>1035, 8540=>1035, 8541=>1035, 8542=>1035, 8543=>615, - 8544=>372, 8545=>659, 8546=>945, 8547=>1099, 8548=>774, 8549=>1099, 8550=>1386, 8551=>1672, 8552=>1121, 8553=>771, 8554=>1120, 8555=>1407, 8556=>637, 8557=>734, 8558=>830, 8559=>995, - 8560=>343, 8561=>607, 8562=>872, 8563=>984, 8564=>652, 8565=>962, 8566=>1227, 8567=>1491, 8568=>969, 8569=>645, 8570=>969, 8571=>1233, 8572=>343, 8573=>593, 8574=>716, 8575=>1042, - 8576=>1289, 8577=>830, 8578=>1289, 8579=>734, 8580=>593, 8592=>838, 8593=>838, 8594=>838, 8595=>838, 8596=>838, 8597=>838, 8598=>838, 8599=>838, 8600=>838, 8601=>838, 8602=>838, - 8603=>838, 8604=>838, 8605=>838, 8606=>838, 8607=>838, 8608=>838, 8609=>838, 8610=>838, 8611=>838, 8612=>838, 8613=>838, 8614=>838, 8615=>838, 8616=>838, 8617=>838, 8618=>838, - 8619=>838, 8620=>838, 8621=>838, 8622=>838, 8623=>838, 8624=>838, 8625=>838, 8626=>838, 8627=>838, 8628=>838, 8629=>838, 8630=>838, 8631=>838, 8632=>838, 8633=>838, 8634=>838, - 8635=>838, 8636=>838, 8637=>838, 8638=>838, 8639=>838, 8640=>838, 8641=>838, 8642=>838, 8643=>838, 8644=>838, 8645=>838, 8646=>838, 8647=>838, 8648=>838, 8649=>838, 8650=>838, - 8651=>838, 8652=>838, 8653=>838, 8654=>838, 8655=>838, 8656=>838, 8657=>838, 8658=>838, 8659=>838, 8660=>838, 8661=>838, 8662=>838, 8663=>838, 8664=>838, 8665=>838, 8666=>838, - 8667=>838, 8668=>838, 8669=>838, 8670=>838, 8671=>838, 8672=>838, 8673=>838, 8674=>838, 8675=>838, 8676=>838, 8677=>838, 8678=>838, 8679=>838, 8680=>838, 8681=>838, 8682=>838, - 8683=>838, 8684=>838, 8685=>838, 8686=>838, 8687=>838, 8688=>838, 8689=>838, 8690=>838, 8691=>838, 8692=>838, 8693=>838, 8694=>838, 8695=>838, 8696=>838, 8697=>838, 8698=>838, - 8699=>838, 8700=>838, 8701=>838, 8702=>838, 8703=>838, 8704=>774, 8705=>696, 8706=>544, 8707=>683, 8708=>683, 8709=>856, 8710=>697, 8711=>697, 8712=>896, 8713=>896, 8714=>750, - 8715=>896, 8716=>896, 8717=>750, 8718=>636, 8719=>787, 8720=>787, 8721=>718, 8722=>838, 8723=>838, 8724=>696, 8725=>167, 8726=>696, 8727=>838, 8728=>626, 8729=>380, 8730=>667, - 8731=>667, 8732=>667, 8733=>669, 8734=>833, 8735=>838, 8736=>896, 8737=>896, 8738=>838, 8739=>500, 8740=>500, 8741=>500, 8742=>500, 8743=>812, 8744=>812, 8745=>812, 8746=>812, - 8747=>610, 8748=>929, 8749=>1295, 8750=>563, 8751=>977, 8752=>1313, 8753=>563, 8754=>563, 8755=>563, 8756=>696, 8757=>696, 8758=>294, 8759=>696, 8760=>838, 8761=>838, 8762=>838, - 8763=>838, 8764=>838, 8765=>838, 8766=>838, 8767=>838, 8768=>375, 8769=>838, 8770=>838, 8771=>838, 8772=>838, 8773=>838, 8774=>838, 8775=>838, 8776=>838, 8777=>838, 8778=>838, - 8779=>838, 8780=>838, 8781=>838, 8782=>838, 8783=>838, 8784=>838, 8785=>838, 8786=>838, 8787=>838, 8788=>1063, 8789=>1063, 8790=>838, 8791=>838, 8792=>838, 8793=>838, 8794=>838, - 8795=>838, 8796=>838, 8797=>838, 8798=>838, 8799=>838, 8800=>838, 8801=>838, 8802=>838, 8803=>838, 8804=>838, 8805=>838, 8806=>838, 8807=>838, 8808=>841, 8809=>841, 8810=>1047, - 8811=>1047, 8812=>500, 8813=>838, 8814=>838, 8815=>838, 8816=>838, 8817=>838, 8818=>838, 8819=>838, 8820=>838, 8821=>838, 8822=>838, 8823=>838, 8824=>838, 8825=>838, 8826=>838, - 8827=>838, 8828=>838, 8829=>838, 8830=>838, 8831=>838, 8832=>838, 8833=>838, 8834=>838, 8835=>838, 8836=>838, 8837=>838, 8838=>838, 8839=>838, 8840=>838, 8841=>838, 8842=>838, - 8843=>838, 8844=>812, 8845=>812, 8846=>812, 8847=>838, 8848=>838, 8849=>838, 8850=>838, 8851=>754, 8852=>754, 8853=>838, 8854=>838, 8855=>838, 8856=>838, 8857=>838, 8858=>838, - 8859=>838, 8860=>838, 8861=>838, 8862=>838, 8863=>838, 8864=>838, 8865=>838, 8866=>914, 8867=>914, 8868=>914, 8869=>914, 8870=>542, 8871=>542, 8872=>914, 8873=>914, 8874=>914, - 8875=>914, 8876=>914, 8877=>914, 8878=>914, 8879=>914, 8882=>838, 8883=>838, 8884=>838, 8885=>838, 8886=>1000, 8887=>1000, 8888=>838, 8889=>838, 8890=>542, 8891=>812, 8892=>812, - 8893=>812, 8896=>843, 8897=>843, 8898=>843, 8899=>843, 8900=>494, 8901=>380, 8902=>626, 8904=>1000, 8905=>1000, 8906=>1000, 8907=>1000, 8908=>1000, 8909=>838, 8918=>838, 8919=>838, - 8920=>1422, 8921=>1422, 8922=>838, 8923=>838, 8924=>838, 8925=>838, 8926=>838, 8927=>838, 8928=>838, 8929=>838, 8930=>838, 8931=>838, 8932=>838, 8933=>838, 8934=>838, 8935=>838, - 8936=>838, 8937=>838, 8938=>838, 8939=>838, 8940=>838, 8941=>838, 8946=>1158, 8947=>896, 8948=>750, 8949=>896, 8950=>896, 8951=>750, 8952=>896, 8953=>896, 8954=>1158, 8955=>896, - 8956=>750, 8957=>896, 8958=>750, 8959=>896, 8962=>716, 8966=>917, 8968=>457, 8969=>457, 8970=>457, 8971=>457, 8976=>838, 8977=>539, 8984=>928, 8985=>838, 8992=>610, 8993=>610, - 8997=>1000, 9000=>1443, 9085=>863, 9115=>500, 9116=>500, 9117=>500, 9118=>500, 9119=>500, 9120=>500, 9121=>500, 9122=>500, 9123=>500, 9124=>500, 9125=>500, 9126=>500, 9127=>750, - 9128=>750, 9129=>750, 9130=>750, 9131=>750, 9132=>750, 9133=>750, 9134=>610, 9166=>838, 9167=>945, 9250=>716, 9251=>716, 9312=>847, 9313=>847, 9314=>847, 9315=>847, 9316=>847, - 9317=>847, 9318=>847, 9319=>847, 9320=>847, 9321=>847, 9600=>769, 9601=>769, 9602=>769, 9603=>769, 9604=>769, 9605=>769, 9606=>769, 9607=>769, 9608=>769, 9609=>769, 9610=>769, - 9611=>769, 9612=>769, 9613=>769, 9614=>769, 9615=>769, 9616=>769, 9617=>769, 9618=>769, 9619=>769, 9620=>769, 9621=>769, 9622=>769, 9623=>769, 9624=>769, 9625=>769, 9626=>769, - 9627=>769, 9628=>769, 9629=>769, 9630=>769, 9631=>769, 9632=>945, 9633=>945, 9634=>945, 9635=>945, 9636=>945, 9637=>945, 9638=>945, 9639=>945, 9640=>945, 9641=>945, 9642=>678, - 9643=>678, 9644=>945, 9645=>945, 9646=>550, 9647=>550, 9648=>769, 9649=>769, 9650=>769, 9651=>769, 9652=>502, 9653=>502, 9654=>769, 9655=>769, 9656=>502, 9657=>502, 9658=>769, - 9659=>769, 9660=>769, 9661=>769, 9662=>502, 9663=>502, 9664=>769, 9665=>769, 9666=>502, 9667=>502, 9668=>769, 9669=>769, 9670=>769, 9671=>769, 9672=>769, 9673=>873, 9674=>494, - 9675=>873, 9676=>873, 9677=>873, 9678=>873, 9679=>873, 9680=>873, 9681=>873, 9682=>873, 9683=>873, 9684=>873, 9685=>873, 9686=>527, 9687=>527, 9688=>840, 9689=>970, 9690=>970, - 9691=>970, 9692=>387, 9693=>387, 9694=>387, 9695=>387, 9696=>769, 9697=>769, 9698=>769, 9699=>769, 9700=>769, 9701=>769, 9702=>639, 9703=>945, 9704=>945, 9705=>945, 9706=>945, - 9707=>945, 9708=>769, 9709=>769, 9710=>769, 9711=>1119, 9712=>945, 9713=>945, 9714=>945, 9715=>945, 9716=>873, 9717=>873, 9718=>873, 9719=>873, 9720=>769, 9721=>769, 9722=>769, - 9723=>830, 9724=>830, 9725=>732, 9726=>732, 9727=>769, 9728=>896, 9729=>1000, 9730=>896, 9731=>896, 9732=>896, 9733=>896, 9734=>896, 9735=>573, 9736=>896, 9737=>896, 9738=>888, - 9739=>888, 9740=>671, 9741=>1013, 9742=>1246, 9743=>1250, 9744=>896, 9745=>896, 9746=>896, 9747=>532, 9748=>896, 9749=>896, 9750=>896, 9751=>896, 9752=>896, 9753=>896, 9754=>896, - 9755=>896, 9756=>896, 9757=>609, 9758=>896, 9759=>609, 9760=>896, 9761=>896, 9762=>896, 9763=>896, 9764=>669, 9765=>746, 9766=>649, 9767=>784, 9768=>545, 9769=>896, 9770=>896, - 9771=>896, 9772=>710, 9773=>896, 9774=>896, 9775=>896, 9776=>896, 9777=>896, 9778=>896, 9779=>896, 9780=>896, 9781=>896, 9782=>896, 9783=>896, 9784=>896, 9785=>896, 9786=>896, - 9787=>896, 9788=>896, 9789=>896, 9790=>896, 9791=>614, 9792=>731, 9793=>731, 9794=>896, 9795=>896, 9796=>896, 9797=>896, 9798=>896, 9799=>896, 9800=>896, 9801=>896, 9802=>896, - 9803=>896, 9804=>896, 9805=>896, 9806=>896, 9807=>896, 9808=>896, 9809=>896, 9810=>896, 9811=>896, 9812=>896, 9813=>896, 9814=>896, 9815=>896, 9816=>896, 9817=>896, 9818=>896, - 9819=>896, 9820=>896, 9821=>896, 9822=>896, 9823=>896, 9824=>896, 9825=>896, 9826=>896, 9827=>896, 9828=>896, 9829=>896, 9830=>896, 9831=>896, 9832=>896, 9833=>472, 9834=>638, - 9835=>896, 9836=>896, 9837=>472, 9838=>357, 9839=>484, 9840=>748, 9841=>766, 9842=>896, 9843=>896, 9844=>896, 9845=>896, 9846=>896, 9847=>896, 9848=>896, 9849=>896, 9850=>896, - 9851=>896, 9852=>896, 9853=>896, 9854=>896, 9855=>896, 9856=>869, 9857=>869, 9858=>869, 9859=>869, 9860=>869, 9861=>869, 9862=>896, 9863=>896, 9864=>896, 9865=>896, 9866=>896, - 9867=>896, 9868=>896, 9869=>896, 9870=>896, 9871=>896, 9872=>896, 9873=>896, 9874=>896, 9875=>896, 9876=>896, 9877=>541, 9878=>896, 9879=>896, 9880=>896, 9881=>896, 9882=>896, - 9883=>896, 9884=>896, 9888=>896, 9889=>702, 9890=>838, 9891=>838, 9892=>838, 9893=>838, 9894=>838, 9895=>838, 9896=>838, 9897=>838, 9898=>838, 9899=>838, 9900=>838, 9901=>838, - 9902=>838, 9903=>838, 9904=>844, 9905=>838, 9906=>731, 9985=>838, 9986=>838, 9987=>838, 9988=>838, 9990=>838, 9991=>838, 9992=>838, 9993=>838, 9996=>838, 9997=>838, 9998=>838, - 9999=>838, 10000=>838, 10001=>838, 10002=>838, 10003=>838, 10004=>838, 10005=>838, 10006=>838, 10007=>838, 10008=>838, 10009=>838, 10010=>838, 10011=>838, 10012=>838, 10013=>838, 10014=>838, - 10015=>838, 10016=>838, 10017=>838, 10018=>838, 10019=>838, 10020=>838, 10021=>838, 10022=>838, 10023=>838, 10025=>838, 10026=>838, 10027=>838, 10028=>838, 10029=>838, 10030=>838, 10031=>838, - 10032=>838, 10033=>838, 10034=>838, 10035=>838, 10036=>838, 10037=>838, 10038=>838, 10039=>838, 10040=>838, 10041=>838, 10042=>838, 10043=>838, 10044=>838, 10045=>838, 10046=>838, 10047=>838, - 10048=>838, 10049=>838, 10050=>838, 10051=>838, 10052=>838, 10053=>838, 10054=>838, 10055=>838, 10056=>838, 10057=>838, 10058=>838, 10059=>838, 10061=>896, 10063=>896, 10064=>896, 10065=>896, - 10066=>896, 10070=>896, 10072=>838, 10073=>838, 10074=>838, 10075=>347, 10076=>347, 10077=>587, 10078=>587, 10081=>838, 10082=>838, 10083=>838, 10084=>838, 10085=>838, 10086=>838, 10087=>838, - 10088=>838, 10089=>838, 10090=>838, 10091=>838, 10092=>838, 10093=>838, 10094=>838, 10095=>838, 10096=>838, 10097=>838, 10098=>838, 10099=>838, 10100=>838, 10101=>838, 10102=>847, 10103=>847, - 10104=>847, 10105=>847, 10106=>847, 10107=>847, 10108=>847, 10109=>847, 10110=>847, 10111=>847, 10112=>838, 10113=>838, 10114=>838, 10115=>838, 10116=>838, 10117=>838, 10118=>838, 10119=>838, - 10120=>838, 10121=>838, 10122=>838, 10123=>838, 10124=>838, 10125=>838, 10126=>838, 10127=>838, 10128=>838, 10129=>838, 10130=>838, 10131=>838, 10132=>838, 10136=>838, 10137=>838, 10138=>838, - 10139=>838, 10140=>838, 10141=>838, 10142=>838, 10143=>838, 10144=>838, 10145=>838, 10146=>838, 10147=>838, 10148=>838, 10149=>838, 10150=>838, 10151=>838, 10152=>838, 10153=>838, 10154=>838, - 10155=>838, 10156=>838, 10157=>838, 10158=>838, 10159=>838, 10161=>838, 10162=>838, 10163=>838, 10164=>838, 10165=>838, 10166=>838, 10167=>838, 10168=>838, 10169=>838, 10170=>838, 10171=>838, - 10172=>838, 10173=>838, 10174=>838, 10208=>494, 10214=>487, 10215=>487, 10216=>457, 10217=>457, 10218=>721, 10219=>721, 10224=>838, 10225=>838, 10226=>838, 10227=>838, 10228=>1157, 10229=>1434, - 10230=>1434, 10231=>1434, 10232=>1434, 10233=>1434, 10234=>1434, 10235=>1434, 10236=>1434, 10237=>1434, 10238=>1434, 10239=>1434, 10240=>781, 10241=>781, 10242=>781, 10243=>781, 10244=>781, 10245=>781, - 10246=>781, 10247=>781, 10248=>781, 10249=>781, 10250=>781, 10251=>781, 10252=>781, 10253=>781, 10254=>781, 10255=>781, 10256=>781, 10257=>781, 10258=>781, 10259=>781, 10260=>781, 10261=>781, - 10262=>781, 10263=>781, 10264=>781, 10265=>781, 10266=>781, 10267=>781, 10268=>781, 10269=>781, 10270=>781, 10271=>781, 10272=>781, 10273=>781, 10274=>781, 10275=>781, 10276=>781, 10277=>781, - 10278=>781, 10279=>781, 10280=>781, 10281=>781, 10282=>781, 10283=>781, 10284=>781, 10285=>781, 10286=>781, 10287=>781, 10288=>781, 10289=>781, 10290=>781, 10291=>781, 10292=>781, 10293=>781, - 10294=>781, 10295=>781, 10296=>781, 10297=>781, 10298=>781, 10299=>781, 10300=>781, 10301=>781, 10302=>781, 10303=>781, 10304=>781, 10305=>781, 10306=>781, 10307=>781, 10308=>781, 10309=>781, - 10310=>781, 10311=>781, 10312=>781, 10313=>781, 10314=>781, 10315=>781, 10316=>781, 10317=>781, 10318=>781, 10319=>781, 10320=>781, 10321=>781, 10322=>781, 10323=>781, 10324=>781, 10325=>781, - 10326=>781, 10327=>781, 10328=>781, 10329=>781, 10330=>781, 10331=>781, 10332=>781, 10333=>781, 10334=>781, 10335=>781, 10336=>781, 10337=>781, 10338=>781, 10339=>781, 10340=>781, 10341=>781, - 10342=>781, 10343=>781, 10344=>781, 10345=>781, 10346=>781, 10347=>781, 10348=>781, 10349=>781, 10350=>781, 10351=>781, 10352=>781, 10353=>781, 10354=>781, 10355=>781, 10356=>781, 10357=>781, - 10358=>781, 10359=>781, 10360=>781, 10361=>781, 10362=>781, 10363=>781, 10364=>781, 10365=>781, 10366=>781, 10367=>781, 10368=>781, 10369=>781, 10370=>781, 10371=>781, 10372=>781, 10373=>781, - 10374=>781, 10375=>781, 10376=>781, 10377=>781, 10378=>781, 10379=>781, 10380=>781, 10381=>781, 10382=>781, 10383=>781, 10384=>781, 10385=>781, 10386=>781, 10387=>781, 10388=>781, 10389=>781, - 10390=>781, 10391=>781, 10392=>781, 10393=>781, 10394=>781, 10395=>781, 10396=>781, 10397=>781, 10398=>781, 10399=>781, 10400=>781, 10401=>781, 10402=>781, 10403=>781, 10404=>781, 10405=>781, - 10406=>781, 10407=>781, 10408=>781, 10409=>781, 10410=>781, 10411=>781, 10412=>781, 10413=>781, 10414=>781, 10415=>781, 10416=>781, 10417=>781, 10418=>781, 10419=>781, 10420=>781, 10421=>781, - 10422=>781, 10423=>781, 10424=>781, 10425=>781, 10426=>781, 10427=>781, 10428=>781, 10429=>781, 10430=>781, 10431=>781, 10432=>781, 10433=>781, 10434=>781, 10435=>781, 10436=>781, 10437=>781, - 10438=>781, 10439=>781, 10440=>781, 10441=>781, 10442=>781, 10443=>781, 10444=>781, 10445=>781, 10446=>781, 10447=>781, 10448=>781, 10449=>781, 10450=>781, 10451=>781, 10452=>781, 10453=>781, - 10454=>781, 10455=>781, 10456=>781, 10457=>781, 10458=>781, 10459=>781, 10460=>781, 10461=>781, 10462=>781, 10463=>781, 10464=>781, 10465=>781, 10466=>781, 10467=>781, 10468=>781, 10469=>781, - 10470=>781, 10471=>781, 10472=>781, 10473=>781, 10474=>781, 10475=>781, 10476=>781, 10477=>781, 10478=>781, 10479=>781, 10480=>781, 10481=>781, 10482=>781, 10483=>781, 10484=>781, 10485=>781, - 10486=>781, 10487=>781, 10488=>781, 10489=>781, 10490=>781, 10491=>781, 10492=>781, 10493=>781, 10494=>781, 10495=>781, 10502=>838, 10503=>838, 10506=>838, 10507=>838, 10560=>838, 10561=>838, - 10702=>838, 10703=>1046, 10704=>1046, 10705=>1000, 10706=>1000, 10707=>1000, 10708=>1000, 10709=>1000, 10731=>494, 10752=>1000, 10753=>1000, 10754=>1000, 10764=>1661, 10765=>563, 10766=>563, 10767=>563, - 10768=>563, 10769=>563, 10770=>563, 10771=>563, 10772=>563, 10773=>563, 10774=>563, 10775=>563, 10776=>563, 10777=>563, 10778=>563, 10779=>563, 10780=>563, 10877=>838, 10878=>838, 10879=>838, - 10880=>838, 10881=>838, 10882=>838, 10883=>838, 10884=>838, 10885=>838, 10886=>838, 10887=>838, 10888=>838, 10889=>838, 10890=>838, 10891=>838, 10892=>838, 10893=>838, 10894=>838, 10895=>838, - 10896=>838, 10897=>838, 10898=>838, 10899=>838, 10900=>838, 10901=>838, 10902=>838, 10903=>838, 10904=>838, 10905=>838, 10906=>838, 10907=>838, 10908=>838, 10909=>838, 10910=>838, 10911=>838, - 10912=>838, 10926=>838, 10927=>838, 10928=>838, 10929=>838, 10930=>838, 10931=>838, 10932=>838, 10933=>838, 10934=>838, 10935=>838, 10936=>838, 10937=>838, 10938=>838, 11001=>838, 11002=>838, - 11008=>838, 11009=>838, 11010=>838, 11011=>838, 11012=>838, 11013=>838, 11014=>838, 11015=>838, 11016=>838, 11017=>838, 11018=>838, 11019=>838, 11020=>838, 11021=>838, 11022=>838, 11023=>838, - 11024=>838, 11025=>838, 11026=>945, 11027=>945, 11028=>945, 11029=>945, 11030=>769, 11031=>769, 11032=>769, 11033=>769, 11034=>945, 11040=>869, 11041=>873, 11042=>873, 11043=>873, 11360=>637, - 11361=>360, 11362=>637, 11363=>733, 11364=>770, 11365=>675, 11366=>478, 11367=>956, 11368=>712, 11369=>775, 11370=>665, 11371=>725, 11372=>582, 11380=>652, 11381=>649, 11382=>516, 11383=>782, - 61960=>860, 62047=>720, 63173=>687, 64256=>810, 64257=>741, 64258=>741, 64259=>1115, 64260=>1116, 64261=>808, 64262=>1020, 64275=>1388, 64276=>1384, 64277=>1378, 64278=>1384, 64279=>1713, 64285=>372, - 64287=>692, 64288=>720, 64297=>838, 64298=>963, 64299=>963, 64300=>963, 64301=>963, 64302=>751, 64303=>751, 64304=>751, 64305=>731, 64306=>537, 64307=>684, 64308=>778, 64309=>467, 64310=>521, - 64312=>770, 64313=>467, 64314=>778, 64315=>750, 64316=>718, 64318=>856, 64320=>532, 64321=>855, 64323=>802, 64324=>777, 64326=>751, 64327=>803, 64328=>778, 64329=>963, 64330=>822, 64331=>372, - 64332=>731, 64333=>754, 64334=>777, 64338=>1005, 64339=>1059, 64340=>375, 64341=>408, 64342=>1005, 64343=>1059, 64344=>375, 64345=>408, 64346=>1005, 64347=>1059, 64348=>375, 64349=>408, 64350=>1005, - 64351=>1059, 64352=>375, 64353=>408, 64354=>1005, 64355=>1059, 64356=>375, 64357=>408, 64358=>1005, 64359=>1059, 64360=>375, 64361=>408, 64362=>1162, 64363=>1191, 64364=>655, 64365=>720, 64366=>1162, - 64367=>1191, 64368=>655, 64369=>720, 64370=>721, 64371=>721, 64372=>721, 64373=>721, 64374=>721, 64375=>721, 64376=>721, 64377=>721, 64378=>721, 64379=>721, 64380=>721, 64381=>721, 64382=>721, - 64383=>721, 64384=>721, 64385=>721, 64394=>576, 64395=>622, 64396=>576, 64397=>622, 64398=>1024, 64399=>1024, 64400=>582, 64401=>582, 64402=>1024, 64403=>1024, 64404=>582, 64405=>582, 64414=>854, - 64415=>900, 64473=>622, 64474=>627, 64488=>375, 64489=>408, 64508=>917, 64509=>1012, 64510=>375, 64511=>408, 65024=>0, 65025=>0, 65026=>0, 65027=>0, 65028=>0, 65029=>0, 65030=>0, - 65031=>0, 65032=>0, 65033=>0, 65034=>0, 65035=>0, 65036=>0, 65037=>0, 65038=>0, 65039=>0, 65136=>342, 65137=>342, 65138=>342, 65139=>346, 65140=>342, 65142=>342, 65143=>342, - 65144=>342, 65145=>342, 65146=>342, 65147=>342, 65148=>342, 65149=>342, 65150=>342, 65151=>342, 65152=>511, 65153=>343, 65154=>375, 65155=>343, 65156=>375, 65157=>622, 65158=>627, 65159=>343, - 65160=>375, 65161=>917, 65162=>917, 65163=>375, 65164=>408, 65165=>343, 65166=>375, 65167=>1005, 65168=>1059, 65169=>375, 65170=>408, 65171=>590, 65172=>606, 65173=>1005, 65174=>1059, 65175=>375, - 65176=>408, 65177=>1005, 65178=>1059, 65179=>375, 65180=>408, 65181=>721, 65182=>721, 65183=>721, 65184=>721, 65185=>721, 65186=>721, 65187=>721, 65188=>721, 65189=>721, 65190=>721, 65191=>721, - 65192=>721, 65193=>513, 65194=>578, 65195=>513, 65196=>578, 65197=>576, 65198=>622, 65199=>576, 65200=>622, 65201=>1380, 65202=>1414, 65203=>983, 65204=>1018, 65205=>1380, 65206=>1414, 65207=>983, - 65208=>1018, 65209=>1345, 65210=>1364, 65211=>966, 65212=>985, 65213=>1345, 65214=>1364, 65215=>966, 65216=>985, 65217=>1039, 65218=>1071, 65219=>942, 65220=>974, 65221=>1039, 65222=>1071, 65223=>942, - 65224=>974, 65225=>683, 65226=>683, 65227=>683, 65228=>564, 65229=>683, 65230=>683, 65231=>683, 65232=>564, 65233=>1162, 65234=>1191, 65235=>655, 65236=>720, 65237=>894, 65238=>901, 65239=>655, - 65240=>720, 65241=>917, 65242=>931, 65243=>582, 65244=>582, 65245=>868, 65246=>893, 65247=>375, 65248=>408, 65249=>733, 65250=>784, 65251=>619, 65252=>670, 65253=>854, 65254=>900, 65255=>375, - 65256=>408, 65257=>590, 65258=>606, 65259=>693, 65260=>660, 65261=>622, 65262=>627, 65263=>917, 65264=>1012, 65265=>917, 65266=>1012, 65267=>375, 65268=>408, 65269=>745, 65270=>759, 65271=>745, - 65272=>759, 65273=>745, 65274=>759, 65275=>745, 65276=>759, 65279=>0, 65533=>1113); -$enc=''; -$diff=''; -$file='DejaVuSans-Bold.z'; -$ctg='DejaVuSans-Bold.ctg.z'; -$originalsize=494260; -?> diff --git a/libraries/tcpdf/font/dejavuserif-bold.ctg.z b/libraries/tcpdf/font/dejavuserif-bold.ctg.z deleted file mode 100644 index 28b33e63eb7f6dd9e05dd7e0894811c22a5f2003..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3756 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 WKbDne_#-)KUH#sFtokww9svM4w|5@^ diff --git a/libraries/tcpdf/font/dejavuserif-bold.z b/libraries/tcpdf/font/dejavuserif-bold.z deleted file mode 100644 index af98fbe1e289d7168a7f108a6cc9b9ebc2344863..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 109155 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

    lRxAETcVisQmo2Ol5;JwHtwead2_5*3B z@3cOR+OP1+{L+1n!rwd2GaG{|YCef+$Dg4gvy;DCGgx~sXhk`{&gfBl@jxOfd_v#( z?fpyk>upqh#&^W7bZ49D=|8@;{RngXb1m%S?5ID-Qa`?)essO9dfnGaKc4b_Jj?s> zj5%M``8A#SG9vp;l za{2cqzmG@t-+bA(!@VYP`Hw&C>U+<(KPvXK+wT9zN26|+hTZR(neR78)uct$q}l!t zW(jpd{>kst{oTLg`}t?}Mca3Th`isea?e_`?h)%F+xPRn-`lKs@2$Z5dE)P@ z_Pp5pTI*v)ppD(^`sc}$?^&-G>i6v`-?R6@Ugz%Z;z#=5i{)3pp7nhj@5iv~kJn~D za_@emTYY5q-9xjtR$P|eUY&nSAipN#RQ2PsjsIRO*}hLvZmvlGxo7tue5*Lz7EztD ze)~2>xtrQ@`zmf$S2)M)DLAydA~GiCe7r^d;_`rqPdvRaToPFMV_9=*&A8~TjIrGf_ zt?*e>!~KeB^0TdV{o=%WO+W79{dg<;Nav#|S9>4bTN_^WJx;mL%Cc(hj_2=U@7ZQQdUts8y}P@Q z+}-?BIe7OTW!1vzw`-=0mGAmmzOM7|$7p?D9^!-@UEkH&@dAs(-H0N4nEKSKqz1S6_5<{9WVP)!Uz&ZLFSu zW2;(R#nu}uk8*Fh@zCu34T0-%oA2-bwq?gL-Pq0XF>giptp47yx~${vJB9rF>f3hi zyM67*mf4rStbOEFUb60vKycpeD|#EhdTlJVwSTE*{&UU@jjqm{HHBUxchYMR9ubwV!RsHTm7zV`#-+#TF=soH|N#bhL^s*{w(hGwf`Hc zMT^&;-g|Cs{*G|N@=JTKJh=Z{^O;!DXT5Egce-A$(J*B08j`CaIl z*fVp>-}CRDe&Vl3-r24858{sAxqf%G#WsU&5AKB@+x716MZ@j?Z`?k1@6o;err*AO zeRN~{@qKS^o$s@Kee1sL@4oE+_inu3_5FQst$w)3z7NH&?@!;Ge)sqFJ?nRUkN>#u z<-Pr{ZC~H}f8}@b_kYvx#qapO|Jy&U@DKAo|2wwz|GD3{V;u87|Fa99a{Fmn`GNJ5 z!k@025Po{~-C5aBx31gk{O*M2&ft9t&rgb<6895-s<$&cKQKDPA)=1n!< zv27xIk<&dz=I`@PL~j4DSb1S>{t4xGf0x+IJbn7}C0XrC$GC#WF;m3vTJWE4kNqw9 i^TfSHTuZFgUWJ~LEiQGsyMLbd|J*zE3|p+XiU9yJJW3(} diff --git a/libraries/tcpdf/font/dejavuserif.ctg.z b/libraries/tcpdf/font/dejavuserif.ctg.z deleted file mode 100644 index 28b33e63eb7f6dd9e05dd7e0894811c22a5f2003..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3756 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 WKbDne_#-)KUH#sFtokww9svM4w|5@^ diff --git a/libraries/tcpdf/font/dejavuserif.php b/libraries/tcpdf/font/dejavuserif.php deleted file mode 100644 index b969bfe8a..000000000 --- a/libraries/tcpdf/font/dejavuserif.php +++ /dev/null @@ -1,134 +0,0 @@ -928,'Descent'=>-236,'CapHeight'=>928,'Flags'=>32,'FontBBox'=>'[-770 -401 1679 1242]','ItalicAngle'=>0,'StemV'=>70,'MissingWidth'=>600); -$up=-42; -$ut=44; -$cw=array( - 0=>600, 32=>318, 33=>402, 34=>460, 35=>838, 36=>636, 37=>950, 38=>890, 39=>275, 40=>390, 41=>390, 42=>500, 43=>838, 44=>318, 45=>338, 46=>318, - 47=>337, 48=>636, 49=>636, 50=>636, 51=>636, 52=>636, 53=>636, 54=>636, 55=>636, 56=>636, 57=>636, 58=>337, 59=>337, 60=>838, 61=>838, 62=>838, - 63=>536, 64=>1000, 65=>722, 66=>735, 67=>765, 68=>802, 69=>730, 70=>694, 71=>799, 72=>872, 73=>395, 74=>401, 75=>747, 76=>664, 77=>1024, 78=>875, - 79=>820, 80=>673, 81=>820, 82=>753, 83=>685, 84=>667, 85=>843, 86=>722, 87=>1028, 88=>712, 89=>660, 90=>695, 91=>390, 92=>337, 93=>390, 94=>838, - 95=>500, 96=>500, 97=>596, 98=>640, 99=>560, 100=>640, 101=>592, 102=>370, 103=>640, 104=>644, 105=>320, 106=>310, 107=>606, 108=>320, 109=>948, 110=>644, - 111=>602, 112=>640, 113=>640, 114=>478, 115=>513, 116=>402, 117=>644, 118=>565, 119=>856, 120=>564, 121=>565, 122=>527, 123=>636, 124=>337, 125=>636, 126=>838, - 8364=>636, 1027=>719, 8218=>318, 402=>370, 8222=>518, 8230=>1000, 8224=>500, 8225=>500, 710=>500, 8240=>1342, 352=>685, 8249=>400, 338=>1137, 1036=>774, 381=>695, 1039=>872, - 8216=>318, 8217=>318, 8220=>511, 8221=>511, 8226=>590, 8211=>500, 8212=>1000, 732=>500, 8482=>1000, 353=>513, 8250=>400, 339=>989, 1116=>625, 382=>527, 376=>660, 160=>318, - 161=>402, 162=>636, 163=>636, 164=>636, 165=>636, 166=>337, 167=>500, 168=>500, 169=>1000, 170=>475, 171=>612, 172=>838, 173=>338, 174=>1000, 175=>500, 176=>500, - 177=>838, 178=>401, 179=>401, 180=>500, 181=>650, 182=>636, 183=>318, 184=>500, 185=>401, 186=>470, 187=>612, 188=>969, 189=>969, 190=>969, 191=>536, 192=>722, - 193=>722, 194=>722, 195=>722, 196=>722, 197=>722, 198=>1001, 199=>765, 200=>730, 201=>730, 202=>730, 203=>730, 204=>395, 205=>395, 206=>395, 207=>395, 208=>807, - 209=>875, 210=>820, 211=>820, 212=>820, 213=>820, 214=>820, 215=>838, 216=>820, 217=>843, 218=>843, 219=>843, 220=>843, 221=>660, 222=>676, 223=>668, 224=>596, - 225=>596, 226=>596, 227=>596, 228=>596, 229=>596, 230=>940, 231=>560, 232=>592, 233=>592, 234=>592, 235=>592, 236=>320, 237=>320, 238=>320, 239=>320, 240=>602, - 241=>644, 242=>602, 243=>602, 244=>602, 245=>602, 246=>602, 247=>838, 248=>602, 249=>644, 250=>644, 251=>644, 252=>644, 253=>565, 254=>640, 255=>565, 256=>722, - 257=>596, 258=>722, 259=>596, 260=>722, 261=>596, 262=>765, 263=>560, 264=>765, 265=>560, 266=>765, 267=>560, 268=>765, 269=>560, 270=>802, 271=>640, 272=>807, - 273=>640, 274=>730, 275=>592, 276=>730, 277=>592, 278=>730, 279=>592, 280=>730, 281=>592, 282=>730, 283=>592, 284=>799, 285=>640, 286=>799, 287=>640, 288=>799, - 289=>640, 290=>799, 291=>640, 292=>872, 293=>644, 294=>872, 295=>644, 296=>395, 297=>320, 298=>395, 299=>320, 300=>395, 301=>320, 302=>395, 303=>320, 304=>395, - 305=>320, 306=>801, 307=>533, 308=>401, 309=>310, 310=>747, 311=>606, 312=>606, 313=>664, 314=>320, 315=>664, 316=>320, 317=>664, 318=>400, 319=>671, 320=>465, - 321=>669, 322=>324, 323=>875, 324=>644, 325=>875, 326=>644, 327=>875, 328=>644, 329=>866, 330=>875, 331=>644, 332=>820, 333=>602, 334=>820, 335=>602, 336=>820, - 337=>602, 340=>753, 341=>478, 342=>753, 343=>478, 344=>753, 345=>478, 346=>685, 347=>513, 348=>685, 349=>513, 350=>685, 351=>513, 354=>667, 355=>402, 356=>667, - 357=>402, 358=>667, 359=>402, 360=>843, 361=>644, 362=>843, 363=>644, 364=>843, 365=>644, 366=>843, 367=>644, 368=>843, 369=>644, 370=>843, 371=>644, 372=>1028, - 373=>856, 374=>660, 375=>565, 377=>695, 378=>527, 379=>695, 380=>527, 383=>370, 384=>640, 385=>735, 386=>735, 387=>640, 388=>735, 389=>640, 390=>765, 391=>765, - 392=>560, 393=>807, 394=>802, 395=>735, 396=>640, 397=>602, 398=>730, 399=>820, 400=>636, 401=>694, 403=>799, 404=>712, 405=>932, 406=>395, 407=>395, 408=>747, - 409=>606, 410=>320, 411=>634, 412=>948, 413=>875, 414=>644, 415=>820, 416=>820, 417=>602, 418=>1040, 419=>807, 420=>673, 421=>640, 422=>753, 423=>685, 424=>513, - 425=>707, 426=>324, 427=>402, 428=>667, 429=>402, 430=>667, 431=>843, 432=>644, 433=>829, 434=>760, 435=>738, 436=>663, 437=>695, 438=>527, 439=>564, 440=>564, - 441=>564, 443=>636, 444=>687, 445=>564, 446=>536, 448=>295, 449=>492, 450=>459, 451=>295, 452=>1497, 453=>1329, 454=>1167, 455=>1065, 456=>974, 457=>630, 458=>1276, - 459=>1185, 460=>954, 461=>722, 462=>596, 463=>395, 464=>320, 465=>820, 466=>602, 467=>843, 468=>644, 469=>843, 470=>644, 471=>843, 472=>644, 473=>843, 474=>644, - 475=>843, 476=>644, 477=>592, 478=>722, 479=>596, 480=>722, 481=>596, 482=>1001, 483=>940, 484=>848, 485=>640, 486=>799, 487=>640, 488=>747, 489=>606, 490=>820, - 491=>602, 492=>820, 493=>602, 494=>564, 495=>564, 496=>320, 497=>1497, 498=>1329, 499=>1167, 500=>799, 501=>640, 502=>1154, 504=>875, 505=>644, 506=>722, 507=>596, - 508=>1001, 509=>940, 510=>820, 511=>602, 512=>722, 513=>596, 514=>722, 515=>596, 516=>730, 517=>592, 518=>730, 519=>592, 520=>395, 521=>320, 522=>395, 523=>320, - 524=>820, 525=>602, 526=>820, 527=>602, 528=>753, 529=>478, 530=>753, 531=>478, 532=>843, 533=>644, 534=>843, 535=>644, 536=>685, 537=>513, 538=>667, 539=>402, - 542=>872, 543=>644, 545=>814, 548=>695, 549=>527, 550=>722, 551=>596, 552=>730, 553=>592, 554=>820, 555=>602, 556=>820, 557=>602, 558=>820, 559=>602, 560=>820, - 561=>602, 562=>660, 563=>565, 564=>500, 565=>832, 566=>494, 567=>310, 568=>960, 569=>960, 570=>722, 571=>765, 572=>560, 573=>664, 574=>667, 575=>513, 576=>527, - 577=>583, 578=>464, 581=>722, 592=>596, 593=>640, 594=>640, 595=>640, 596=>560, 597=>560, 598=>647, 599=>683, 600=>592, 601=>592, 602=>843, 603=>518, 604=>509, - 605=>773, 606=>613, 607=>315, 608=>683, 609=>640, 610=>544, 611=>712, 612=>564, 613=>644, 614=>644, 615=>644, 616=>320, 617=>392, 618=>320, 619=>380, 620=>454, - 621=>363, 622=>704, 623=>948, 624=>948, 625=>948, 626=>644, 627=>694, 628=>646, 629=>602, 630=>790, 631=>647, 632=>602, 633=>501, 634=>501, 635=>551, 636=>478, - 637=>478, 638=>453, 639=>453, 640=>594, 641=>594, 642=>513, 643=>271, 644=>370, 645=>487, 646=>324, 647=>402, 648=>402, 649=>644, 650=>620, 651=>608, 652=>565, - 653=>856, 654=>565, 655=>655, 656=>597, 657=>560, 658=>564, 659=>560, 660=>536, 661=>536, 662=>536, 663=>513, 664=>820, 665=>563, 666=>613, 667=>654, 668=>667, - 669=>366, 670=>606, 671=>646, 672=>683, 673=>536, 674=>536, 675=>996, 676=>1033, 677=>998, 678=>809, 679=>598, 680=>782, 681=>894, 682=>646, 683=>676, 684=>598, - 685=>443, 686=>781, 687=>767, 688=>433, 689=>430, 690=>264, 691=>347, 692=>347, 693=>430, 694=>392, 695=>585, 696=>423, 697=>278, 699=>318, 700=>318, 701=>318, - 702=>307, 703=>307, 704=>280, 705=>281, 711=>500, 712=>275, 713=>500, 716=>275, 720=>337, 721=>337, 722=>307, 723=>307, 726=>329, 728=>500, 729=>500, 730=>500, - 731=>500, 733=>500, 734=>417, 736=>447, 737=>243, 738=>337, 739=>424, 740=>281, 741=>602, 742=>602, 743=>602, 744=>602, 745=>602, 750=>484, 768=>0, 769=>0, - 770=>0, 771=>0, 772=>0, 773=>0, 774=>0, 775=>0, 776=>0, 777=>0, 778=>0, 779=>0, 780=>0, 781=>0, 782=>0, 783=>0, 784=>0, 785=>0, - 786=>0, 787=>0, 788=>0, 789=>0, 790=>0, 791=>0, 792=>0, 793=>0, 794=>0, 795=>0, 796=>0, 797=>0, 798=>0, 799=>0, 800=>0, 801=>0, - 802=>0, 803=>0, 804=>0, 805=>0, 806=>0, 807=>0, 808=>0, 809=>0, 810=>0, 811=>0, 812=>0, 813=>0, 814=>0, 815=>0, 816=>0, 817=>0, - 818=>0, 819=>0, 820=>0, 821=>0, 822=>0, 823=>0, 824=>0, 825=>0, 826=>0, 827=>0, 828=>0, 829=>0, 830=>0, 831=>0, 835=>0, 847=>0, - 856=>0, 865=>0, 884=>278, 885=>278, 890=>500, 894=>337, 900=>500, 901=>500, 902=>722, 903=>318, 904=>900, 905=>1039, 906=>562, 908=>835, 910=>897, 911=>853, - 912=>392, 913=>722, 914=>735, 915=>694, 916=>722, 917=>730, 918=>695, 919=>872, 920=>820, 921=>395, 922=>747, 923=>722, 924=>1024, 925=>875, 926=>704, 927=>820, - 928=>872, 929=>673, 931=>707, 932=>667, 933=>660, 934=>820, 935=>712, 936=>877, 937=>829, 938=>395, 939=>660, 940=>675, 941=>518, 942=>599, 943=>392, 944=>608, - 945=>675, 946=>578, 947=>598, 948=>602, 949=>518, 950=>542, 951=>599, 952=>602, 953=>392, 954=>625, 955=>634, 956=>650, 957=>608, 958=>551, 959=>602, 960=>657, - 961=>588, 962=>560, 963=>683, 964=>553, 965=>608, 966=>700, 967=>606, 968=>784, 969=>815, 970=>392, 971=>608, 972=>602, 973=>608, 974=>815, 976=>583, 977=>715, - 978=>687, 979=>874, 980=>687, 981=>682, 982=>815, 983=>624, 984=>820, 985=>602, 986=>765, 987=>560, 988=>694, 989=>463, 990=>590, 991=>660, 992=>782, 993=>577, - 1008=>624, 1009=>588, 1010=>560, 1011=>310, 1012=>820, 1013=>560, 1014=>560, 1015=>676, 1016=>640, 1017=>765, 1018=>1024, 1019=>708, 1020=>588, 1021=>765, 1022=>765, 1023=>765, - 1024=>754, 1025=>709, 1026=>799, 1028=>765, 1029=>685, 1030=>395, 1031=>395, 1032=>401, 1033=>1084, 1034=>1118, 1035=>872, 1037=>903, 1038=>723, 1040=>757, 1041=>735, 1042=>735, - 1043=>662, 1044=>813, 1045=>730, 1046=>1124, 1047=>623, 1048=>872, 1049=>872, 1050=>774, 1051=>834, 1052=>1024, 1053=>872, 1054=>820, 1055=>872, 1056=>673, 1057=>765, 1058=>667, - 1059=>723, 1060=>830, 1061=>712, 1062=>872, 1063=>773, 1064=>1141, 1065=>1141, 1066=>794, 1067=>984, 1068=>674, 1069=>765, 1070=>1193, 1071=>808, 1072=>596, 1073=>602, 1074=>563, - 1075=>524, 1076=>616, 1077=>592, 1078=>920, 1079=>545, 1080=>667, 1081=>667, 1082=>625, 1083=>635, 1084=>778, 1085=>667, 1086=>602, 1087=>667, 1088=>640, 1089=>560, 1090=>553, - 1091=>588, 1092=>783, 1093=>564, 1094=>643, 1095=>661, 1096=>930, 1097=>930, 1098=>636, 1099=>796, 1100=>544, 1101=>560, 1102=>871, 1103=>631, 1104=>592, 1105=>592, 1106=>624, - 1107=>524, 1108=>560, 1109=>513, 1110=>320, 1111=>320, 1112=>310, 1113=>843, 1114=>860, 1115=>644, 1117=>667, 1118=>588, 1119=>656, 1122=>762, 1123=>603, 1138=>820, 1139=>552, - 1140=>859, 1141=>678, 1164=>690, 1165=>492, 1168=>672, 1169=>529, 1170=>694, 1171=>538, 1172=>728, 1173=>614, 1174=>1124, 1175=>920, 1176=>636, 1177=>537, 1178=>774, 1179=>606, - 1182=>774, 1183=>606, 1184=>891, 1185=>668, 1186=>872, 1187=>690, 1188=>1139, 1189=>852, 1190=>1205, 1191=>941, 1194=>765, 1195=>560, 1196=>667, 1197=>553, 1198=>660, 1199=>565, - 1202=>712, 1203=>564, 1204=>1079, 1205=>899, 1206=>749, 1207=>690, 1210=>749, 1211=>644, 1216=>395, 1217=>1124, 1218=>920, 1219=>747, 1220=>606, 1223=>872, 1224=>667, 1227=>749, - 1228=>667, 1231=>320, 1232=>757, 1233=>596, 1234=>757, 1235=>596, 1236=>1001, 1237=>940, 1238=>730, 1239=>592, 1240=>820, 1241=>592, 1242=>820, 1243=>592, 1244=>1124, 1245=>920, - 1246=>623, 1247=>545, 1248=>564, 1249=>564, 1250=>872, 1251=>667, 1252=>872, 1253=>667, 1254=>820, 1255=>602, 1256=>820, 1257=>602, 1258=>820, 1259=>602, 1260=>765, 1261=>560, - 1262=>723, 1263=>588, 1264=>723, 1265=>588, 1266=>723, 1267=>588, 1268=>773, 1269=>661, 1270=>662, 1271=>524, 1272=>984, 1273=>796, 7426=>940, 7432=>509, 7433=>320, 7444=>989, - 7446=>602, 7447=>602, 7453=>737, 7454=>948, 7455=>948, 7491=>386, 7492=>247, 7493=>400, 7494=>618, 7495=>400, 7496=>400, 7497=>387, 7498=>387, 7499=>340, 7500=>340, 7501=>400, - 7502=>175, 7503=>365, 7504=>613, 7505=>399, 7506=>385, 7507=>346, 7508=>385, 7509=>385, 7510=>400, 7511=>247, 7512=>399, 7513=>464, 7514=>613, 7515=>373, 7543=>640, 7547=>372, - 7557=>320, 7579=>400, 7580=>346, 7581=>346, 7582=>385, 7583=>340, 7584=>222, 7585=>229, 7586=>400, 7587=>399, 7588=>234, 7589=>244, 7590=>234, 7591=>234, 7592=>230, 7593=>175, - 7594=>175, 7595=>367, 7596=>613, 7597=>613, 7598=>407, 7599=>404, 7600=>399, 7601=>385, 7602=>385, 7603=>328, 7604=>211, 7605=>247, 7606=>399, 7607=>389, 7609=>376, 7610=>373, - 7611=>331, 7612=>331, 7613=>331, 7614=>364, 7615=>385, 7680=>722, 7681=>596, 7682=>735, 7683=>640, 7684=>735, 7685=>640, 7686=>735, 7687=>640, 7688=>765, 7689=>560, 7690=>802, - 7691=>640, 7692=>802, 7693=>640, 7694=>802, 7695=>640, 7696=>802, 7697=>640, 7698=>802, 7699=>640, 7700=>730, 7701=>592, 7702=>730, 7703=>592, 7704=>730, 7705=>592, 7706=>730, - 7707=>592, 7710=>694, 7711=>370, 7712=>799, 7713=>640, 7714=>872, 7715=>644, 7716=>872, 7717=>644, 7718=>872, 7719=>644, 7720=>872, 7721=>644, 7722=>872, 7723=>644, 7724=>395, - 7725=>320, 7728=>747, 7729=>606, 7730=>747, 7731=>606, 7732=>747, 7733=>606, 7734=>664, 7735=>320, 7736=>664, 7737=>320, 7738=>664, 7739=>320, 7740=>664, 7741=>320, 7742=>1024, - 7743=>948, 7744=>1024, 7745=>948, 7746=>1024, 7747=>948, 7748=>875, 7749=>644, 7750=>875, 7751=>644, 7752=>875, 7753=>644, 7754=>875, 7755=>644, 7760=>820, 7761=>602, 7762=>820, - 7763=>602, 7764=>673, 7765=>640, 7766=>673, 7767=>640, 7768=>753, 7769=>478, 7770=>753, 7771=>478, 7772=>753, 7773=>478, 7774=>753, 7775=>478, 7776=>685, 7777=>513, 7778=>685, - 7779=>513, 7784=>685, 7785=>513, 7786=>667, 7787=>402, 7788=>667, 7789=>402, 7790=>667, 7791=>402, 7792=>667, 7793=>402, 7794=>843, 7795=>644, 7796=>843, 7797=>644, 7798=>843, - 7799=>644, 7800=>843, 7801=>644, 7802=>843, 7803=>644, 7804=>722, 7805=>565, 7806=>722, 7807=>565, 7808=>1028, 7809=>856, 7810=>1028, 7811=>856, 7812=>1028, 7813=>856, 7814=>1028, - 7815=>856, 7816=>1028, 7817=>856, 7818=>712, 7819=>564, 7820=>712, 7821=>564, 7822=>660, 7823=>565, 7824=>695, 7825=>527, 7826=>695, 7827=>527, 7828=>695, 7829=>527, 7830=>644, - 7831=>402, 7832=>856, 7833=>565, 7834=>903, 7835=>513, 7840=>722, 7841=>596, 7842=>722, 7843=>596, 7852=>722, 7853=>596, 7854=>722, 7855=>596, 7856=>722, 7857=>596, 7858=>722, - 7859=>596, 7860=>722, 7861=>596, 7862=>722, 7863=>596, 7864=>730, 7865=>592, 7866=>730, 7867=>592, 7868=>730, 7869=>592, 7878=>730, 7879=>592, 7880=>395, 7881=>320, 7882=>395, - 7883=>320, 7884=>820, 7885=>602, 7886=>820, 7887=>602, 7896=>820, 7897=>602, 7908=>843, 7909=>644, 7910=>843, 7911=>644, 7922=>660, 7923=>565, 7924=>660, 7925=>565, 7926=>660, - 7927=>565, 7928=>660, 7929=>565, 7936=>675, 7937=>675, 7938=>675, 7939=>675, 7940=>675, 7941=>675, 7942=>675, 7943=>675, 7944=>722, 7945=>722, 7946=>869, 7947=>869, 7948=>734, - 7949=>763, 7950=>722, 7951=>722, 7952=>537, 7953=>537, 7954=>537, 7955=>537, 7956=>537, 7957=>537, 7960=>853, 7961=>841, 7962=>1067, 7963=>1077, 7964=>1008, 7965=>1035, 7968=>599, - 7969=>599, 7970=>599, 7971=>599, 7972=>599, 7973=>599, 7974=>599, 7975=>599, 7976=>998, 7977=>992, 7978=>1212, 7979=>1224, 7980=>1159, 7981=>1183, 7982=>1098, 7983=>1095, 7984=>392, - 7985=>392, 7986=>392, 7987=>392, 7988=>392, 7989=>392, 7990=>392, 7991=>392, 7992=>521, 7993=>512, 7994=>735, 7995=>738, 7996=>679, 7997=>706, 7998=>624, 7999=>615, 8000=>602, - 8001=>602, 8002=>602, 8003=>602, 8004=>602, 8005=>602, 8008=>820, 8009=>859, 8010=>1120, 8011=>1127, 8012=>937, 8013=>964, 8016=>608, 8017=>608, 8018=>608, 8019=>608, 8020=>608, - 8021=>608, 8022=>608, 8023=>608, 8025=>851, 8027=>1079, 8029=>1044, 8031=>953, 8032=>815, 8033=>815, 8034=>815, 8035=>815, 8036=>815, 8037=>815, 8038=>815, 8039=>815, 8040=>829, - 8041=>870, 8042=>1131, 8043=>1137, 8044=>946, 8045=>976, 8046=>938, 8047=>970, 8048=>675, 8049=>675, 8050=>537, 8051=>537, 8052=>599, 8053=>599, 8054=>392, 8055=>392, 8056=>602, - 8057=>602, 8058=>608, 8059=>608, 8060=>815, 8061=>815, 8064=>675, 8065=>675, 8066=>675, 8067=>675, 8068=>675, 8069=>675, 8070=>675, 8071=>675, 8072=>722, 8073=>722, 8074=>869, - 8075=>869, 8076=>734, 8077=>763, 8078=>722, 8079=>722, 8080=>599, 8081=>599, 8082=>599, 8083=>599, 8084=>599, 8085=>599, 8086=>599, 8087=>599, 8088=>998, 8089=>992, 8090=>1212, - 8091=>1224, 8092=>1159, 8093=>1183, 8094=>1098, 8095=>1095, 8096=>815, 8097=>815, 8098=>815, 8099=>815, 8100=>815, 8101=>815, 8102=>815, 8103=>815, 8104=>829, 8105=>870, 8106=>1131, - 8107=>1137, 8108=>946, 8109=>976, 8110=>938, 8111=>970, 8112=>675, 8113=>675, 8114=>675, 8115=>675, 8116=>675, 8118=>675, 8119=>675, 8120=>722, 8121=>722, 8122=>722, 8123=>722, - 8124=>722, 8125=>500, 8126=>500, 8127=>500, 8128=>500, 8129=>500, 8130=>599, 8131=>599, 8132=>599, 8134=>599, 8135=>599, 8136=>912, 8137=>900, 8138=>1063, 8139=>1039, 8140=>872, - 8141=>500, 8142=>500, 8143=>500, 8144=>392, 8145=>392, 8146=>392, 8147=>392, 8150=>392, 8151=>392, 8152=>395, 8153=>395, 8154=>588, 8155=>562, 8157=>500, 8158=>500, 8159=>500, - 8160=>608, 8161=>608, 8162=>608, 8163=>608, 8164=>588, 8165=>588, 8166=>608, 8167=>608, 8168=>660, 8169=>660, 8170=>921, 8171=>897, 8172=>790, 8173=>500, 8174=>500, 8175=>500, - 8178=>815, 8179=>815, 8180=>815, 8182=>815, 8183=>815, 8184=>961, 8185=>835, 8186=>984, 8187=>853, 8188=>829, 8189=>500, 8190=>500, 8192=>500, 8193=>1000, 8194=>500, 8195=>1000, - 8196=>330, 8197=>250, 8198=>167, 8199=>636, 8200=>318, 8201=>200, 8202=>100, 8203=>0, 8204=>0, 8205=>0, 8206=>0, 8207=>0, 8208=>338, 8209=>338, 8210=>636, 8213=>1000, - 8215=>500, 8219=>318, 8223=>511, 8227=>590, 8228=>334, 8229=>667, 8234=>0, 8235=>0, 8236=>0, 8237=>0, 8238=>0, 8239=>200, 8241=>1734, 8252=>527, 8253=>536, 8254=>500, - 8263=>976, 8264=>753, 8265=>753, 8287=>222, 8288=>0, 8289=>0, 8290=>0, 8291=>0, 8298=>0, 8299=>0, 8300=>0, 8301=>0, 8302=>0, 8303=>0, 8304=>401, 8308=>401, - 8309=>401, 8310=>401, 8311=>401, 8312=>401, 8313=>401, 8319=>433, 8320=>401, 8321=>401, 8322=>401, 8323=>401, 8324=>401, 8325=>401, 8326=>401, 8327=>401, 8328=>401, 8329=>401, - 8358=>660, 8367=>1057, 8369=>706, 8372=>780, 8373=>636, 8462=>644, 8470=>946, 8486=>829, 8490=>747, 8491=>722, 8531=>969, 8532=>969, 8533=>969, 8534=>969, 8535=>969, 8536=>969, - 8537=>969, 8538=>969, 8539=>969, 8540=>969, 8541=>969, 8542=>969, 8543=>568, 8592=>838, 8593=>838, 8594=>838, 8595=>838, 8706=>517, 8710=>698, 8711=>698, 8719=>796, 8721=>714, - 8722=>838, 8725=>167, 8729=>318, 8730=>637, 8733=>677, 8734=>833, 8735=>838, 8736=>838, 8743=>732, 8744=>732, 8745=>732, 8746=>732, 8747=>521, 8748=>852, 8749=>1182, 8770=>838, - 8771=>838, 8776=>838, 8800=>838, 8801=>838, 8804=>838, 8805=>838, 8962=>764, 8968=>390, 8969=>390, 8970=>390, 8971=>390, 8976=>838, 8977=>513, 8984=>1000, 8985=>838, 8992=>521, - 8993=>521, 8997=>1000, 9000=>1443, 9085=>919, 9134=>521, 9167=>945, 9251=>764, 9600=>769, 9601=>769, 9602=>769, 9603=>769, 9604=>769, 9605=>769, 9606=>769, 9607=>769, 9608=>769, - 9609=>769, 9610=>769, 9611=>769, 9612=>769, 9613=>769, 9614=>769, 9615=>769, 9616=>769, 9617=>769, 9618=>769, 9619=>769, 9620=>769, 9621=>769, 9622=>769, 9623=>769, 9624=>769, - 9625=>769, 9626=>769, 9627=>769, 9628=>769, 9629=>769, 9630=>769, 9631=>769, 9632=>945, 9633=>945, 9634=>945, 9635=>945, 9636=>945, 9637=>945, 9638=>945, 9639=>945, 9640=>945, - 9641=>945, 9642=>678, 9643=>678, 9644=>945, 9645=>945, 9646=>550, 9647=>550, 9648=>769, 9649=>769, 9650=>769, 9651=>769, 9652=>502, 9653=>502, 9654=>769, 9655=>769, 9656=>502, - 9657=>502, 9658=>769, 9659=>769, 9660=>769, 9661=>769, 9662=>502, 9663=>502, 9664=>769, 9665=>769, 9666=>502, 9667=>502, 9668=>769, 9669=>769, 9670=>769, 9671=>769, 9672=>769, - 9673=>873, 9674=>494, 9675=>873, 9676=>873, 9677=>873, 9678=>873, 9679=>873, 9680=>873, 9681=>873, 9682=>873, 9683=>873, 9684=>873, 9685=>873, 9686=>527, 9687=>527, 9688=>791, - 9689=>970, 9690=>970, 9691=>970, 9692=>387, 9693=>387, 9694=>387, 9695=>387, 9696=>873, 9697=>873, 9698=>769, 9699=>769, 9700=>769, 9701=>769, 9702=>590, 9703=>945, 9704=>945, - 9705=>945, 9706=>945, 9707=>945, 9708=>769, 9709=>769, 9710=>769, 9711=>1119, 9712=>945, 9713=>945, 9714=>945, 9715=>945, 9716=>873, 9717=>873, 9718=>873, 9719=>873, 9720=>769, - 9721=>769, 9722=>769, 9723=>830, 9724=>830, 9725=>732, 9726=>732, 9727=>769, 9728=>896, 9784=>896, 9785=>896, 9786=>896, 9787=>896, 9788=>896, 9791=>614, 9792=>731, 9793=>731, - 9794=>896, 9795=>896, 9796=>896, 9797=>896, 9798=>896, 9799=>896, 9824=>896, 9825=>896, 9826=>896, 9827=>896, 9828=>896, 9829=>896, 9830=>896, 9831=>896, 9833=>472, 9834=>638, - 9835=>896, 9836=>896, 9837=>472, 9838=>357, 9839=>484, 10208=>494, 10216=>390, 10217=>390, 10731=>494, 10764=>1513, 10765=>521, 10766=>521, 11026=>945, 11027=>945, 11028=>945, 11029=>945, - 11030=>769, 11031=>769, 11032=>769, 11033=>769, 11034=>945, 63173=>602, 63185=>500, 63188=>500, 64256=>811, 64257=>667, 64258=>667, 64259=>1040, 64260=>1030, 64261=>771, 64262=>933, 65024=>0, - 65025=>0, 65026=>0, 65027=>0, 65028=>0, 65029=>0, 65030=>0, 65031=>0, 65032=>0, 65033=>0, 65034=>0, 65035=>0, 65036=>0, 65037=>0, 65038=>0, 65039=>0, 65533=>1025); -$enc=''; -$diff=''; -$file='DejaVuSerif.z'; -$ctg='DejaVuSerif.ctg.z'; -$originalsize=212332; -?> diff --git a/libraries/tcpdf/font/dejavuserif.z b/libraries/tcpdf/font/dejavuserif.z deleted file mode 100644 index e4ddcd49373d480e012af590cd97783d8c916626..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 116258 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Ξ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

    RjvQ!8vn(_|D80x@OsMs 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 z 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 SxBq^R{@dRE&phMK5itN3^dLC^ diff --git a/libraries/tcpdf/font/dejavuserifb.php b/libraries/tcpdf/font/dejavuserifb.php deleted file mode 100644 index 1e14fe181..000000000 --- a/libraries/tcpdf/font/dejavuserifb.php +++ /dev/null @@ -1,134 +0,0 @@ -939,'Descent'=>-236,'CapHeight'=>939,'Flags'=>32,'FontBBox'=>'[-836 -423 1796 1235]','ItalicAngle'=>0,'StemV'=>120,'MissingWidth'=>600); -$up=-42; -$ut=44; -$cw=array( - 0=>600, 32=>348, 33=>439, 34=>521, 35=>838, 36=>696, 37=>950, 38=>903, 39=>306, 40=>473, 41=>473, 42=>523, 43=>838, 44=>348, 45=>415, 46=>348, - 47=>365, 48=>696, 49=>696, 50=>696, 51=>696, 52=>696, 53=>696, 54=>696, 55=>696, 56=>696, 57=>696, 58=>369, 59=>369, 60=>838, 61=>838, 62=>838, - 63=>586, 64=>1000, 65=>776, 66=>845, 67=>796, 68=>867, 69=>762, 70=>710, 71=>854, 72=>945, 73=>468, 74=>473, 75=>869, 76=>703, 77=>1107, 78=>914, - 79=>871, 80=>752, 81=>871, 82=>831, 83=>722, 84=>744, 85=>872, 86=>776, 87=>1123, 88=>776, 89=>714, 90=>730, 91=>473, 92=>365, 93=>473, 94=>838, - 95=>500, 96=>500, 97=>648, 98=>699, 99=>609, 100=>699, 101=>636, 102=>430, 103=>699, 104=>727, 105=>380, 106=>362, 107=>693, 108=>380, 109=>1058, 110=>727, - 111=>667, 112=>699, 113=>699, 114=>527, 115=>563, 116=>462, 117=>727, 118=>581, 119=>861, 120=>596, 121=>581, 122=>568, 123=>643, 124=>364, 125=>643, 126=>838, - 8364=>696, 1027=>690, 8218=>348, 402=>430, 8222=>575, 8230=>1000, 8224=>523, 8225=>523, 710=>500, 8240=>1385, 352=>722, 8249=>400, 338=>1180, 1036=>910, 381=>730, 1039=>945, - 8216=>348, 8217=>348, 8220=>575, 8221=>575, 8226=>639, 8211=>500, 8212=>1000, 732=>500, 8482=>1000, 353=>563, 8250=>400, 339=>1028, 1116=>722, 382=>568, 376=>714, 160=>348, - 161=>439, 162=>696, 163=>696, 164=>636, 165=>696, 166=>364, 167=>523, 168=>500, 169=>1000, 170=>487, 171=>625, 172=>838, 173=>415, 174=>1000, 175=>500, 176=>500, - 177=>838, 178=>438, 179=>438, 180=>500, 181=>732, 182=>636, 183=>348, 184=>500, 185=>438, 186=>500, 187=>625, 188=>1043, 189=>1043, 190=>1043, 191=>586, 192=>776, - 193=>776, 194=>776, 195=>776, 196=>776, 197=>776, 198=>1034, 199=>796, 200=>762, 201=>762, 202=>762, 203=>762, 204=>468, 205=>468, 206=>468, 207=>468, 208=>874, - 209=>914, 210=>871, 211=>871, 212=>871, 213=>871, 214=>871, 215=>838, 216=>871, 217=>872, 218=>872, 219=>872, 220=>872, 221=>714, 222=>757, 223=>760, 224=>648, - 225=>648, 226=>648, 227=>648, 228=>648, 229=>648, 230=>975, 231=>609, 232=>636, 233=>636, 234=>636, 235=>636, 236=>380, 237=>380, 238=>380, 239=>380, 240=>667, - 241=>727, 242=>667, 243=>667, 244=>667, 245=>667, 246=>667, 247=>838, 248=>667, 249=>727, 250=>727, 251=>727, 252=>727, 253=>581, 254=>699, 255=>581, 256=>776, - 257=>648, 258=>776, 259=>648, 260=>776, 261=>648, 262=>796, 263=>609, 264=>796, 265=>609, 266=>796, 267=>609, 268=>796, 269=>609, 270=>867, 271=>699, 272=>874, - 273=>699, 274=>762, 275=>636, 276=>762, 277=>636, 278=>762, 279=>636, 280=>762, 281=>636, 282=>762, 283=>636, 284=>854, 285=>699, 286=>854, 287=>699, 288=>854, - 289=>699, 290=>854, 291=>699, 292=>945, 293=>727, 294=>945, 295=>727, 296=>468, 297=>380, 298=>468, 299=>380, 300=>468, 301=>380, 302=>468, 303=>380, 304=>468, - 305=>380, 306=>942, 307=>751, 308=>473, 309=>362, 310=>869, 311=>693, 312=>693, 313=>703, 314=>380, 315=>703, 316=>380, 317=>703, 318=>508, 319=>703, 320=>557, - 321=>710, 322=>385, 323=>914, 324=>727, 325=>914, 326=>727, 327=>914, 328=>727, 329=>1008, 330=>914, 331=>727, 332=>871, 333=>667, 334=>871, 335=>667, 336=>871, - 337=>667, 340=>831, 341=>527, 342=>831, 343=>527, 344=>831, 345=>527, 346=>722, 347=>563, 348=>722, 349=>563, 350=>722, 351=>563, 354=>744, 355=>462, 356=>744, - 357=>462, 358=>744, 359=>462, 360=>872, 361=>727, 362=>872, 363=>727, 364=>872, 365=>727, 366=>872, 367=>727, 368=>872, 369=>727, 370=>872, 371=>727, 372=>1123, - 373=>861, 374=>714, 375=>581, 377=>730, 378=>568, 379=>730, 380=>568, 383=>430, 384=>699, 385=>845, 386=>854, 387=>699, 388=>854, 389=>699, 390=>796, 391=>796, - 392=>609, 393=>874, 394=>867, 395=>854, 396=>699, 397=>667, 398=>762, 399=>871, 400=>696, 401=>710, 403=>854, 404=>771, 405=>1043, 406=>468, 407=>468, 408=>869, - 409=>693, 410=>380, 411=>701, 412=>1058, 413=>914, 414=>727, 415=>871, 416=>871, 417=>667, 418=>1200, 419=>943, 420=>752, 421=>699, 422=>831, 423=>722, 424=>563, - 425=>707, 426=>331, 427=>462, 428=>744, 429=>462, 430=>744, 431=>872, 432=>727, 433=>890, 434=>890, 435=>714, 436=>708, 437=>730, 438=>568, 439=>568, 440=>568, - 441=>568, 443=>696, 444=>754, 445=>568, 446=>536, 448=>295, 449=>492, 450=>459, 451=>295, 452=>1597, 453=>1435, 454=>1267, 455=>1176, 456=>1065, 457=>742, 458=>1387, - 459=>1276, 460=>1089, 461=>776, 462=>648, 463=>468, 464=>380, 465=>871, 466=>667, 467=>872, 468=>727, 469=>872, 470=>727, 471=>872, 472=>727, 473=>872, 474=>727, - 475=>872, 476=>727, 477=>636, 478=>776, 479=>648, 480=>776, 481=>648, 482=>1034, 483=>975, 484=>896, 485=>699, 486=>854, 487=>699, 488=>869, 489=>693, 490=>871, - 491=>667, 492=>871, 493=>667, 494=>568, 495=>568, 496=>380, 497=>1597, 498=>1435, 499=>1267, 500=>854, 501=>699, 502=>1221, 504=>914, 505=>727, 506=>776, 507=>648, - 508=>1034, 509=>975, 510=>871, 511=>667, 512=>776, 513=>648, 514=>776, 515=>648, 516=>762, 517=>636, 518=>762, 519=>636, 520=>468, 521=>380, 522=>468, 523=>380, - 524=>871, 525=>667, 526=>871, 527=>667, 528=>831, 529=>527, 530=>831, 531=>527, 532=>872, 533=>727, 534=>872, 535=>727, 536=>722, 537=>563, 538=>744, 539=>462, - 542=>945, 543=>727, 545=>791, 548=>730, 549=>568, 550=>776, 551=>648, 552=>762, 553=>636, 554=>871, 555=>667, 556=>871, 557=>667, 558=>871, 559=>667, 560=>871, - 561=>667, 562=>714, 563=>581, 564=>573, 565=>922, 566=>564, 567=>362, 568=>1031, 569=>1031, 570=>776, 571=>796, 572=>609, 573=>703, 574=>744, 575=>563, 576=>568, - 577=>660, 578=>547, 581=>776, 592=>648, 593=>699, 594=>699, 595=>699, 596=>609, 597=>609, 598=>699, 599=>730, 600=>636, 601=>636, 602=>907, 603=>608, 604=>562, - 605=>907, 606=>720, 607=>387, 608=>699, 609=>699, 610=>626, 611=>712, 612=>627, 613=>727, 614=>727, 615=>727, 616=>380, 617=>380, 618=>380, 619=>409, 620=>514, - 621=>380, 622=>795, 623=>1058, 624=>1058, 625=>1058, 626=>727, 627=>727, 628=>712, 629=>667, 630=>1061, 631=>749, 632=>667, 633=>571, 634=>571, 635=>571, 636=>527, - 637=>527, 638=>452, 639=>487, 640=>801, 641=>801, 642=>563, 643=>331, 644=>430, 645=>540, 646=>331, 647=>492, 648=>462, 649=>727, 650=>679, 651=>694, 652=>641, - 653=>907, 654=>635, 655=>727, 656=>568, 657=>568, 658=>568, 659=>568, 660=>536, 661=>536, 662=>536, 663=>545, 664=>871, 665=>695, 666=>720, 667=>626, 668=>732, - 669=>384, 670=>740, 671=>646, 672=>699, 673=>536, 674=>536, 675=>1117, 676=>1179, 677=>1117, 678=>911, 679=>715, 680=>909, 681=>1039, 682=>790, 683=>795, 684=>662, - 685=>443, 686=>613, 687=>717, 688=>521, 689=>519, 690=>313, 691=>414, 692=>414, 693=>480, 694=>527, 695=>662, 696=>485, 697=>302, 699=>348, 700=>348, 701=>348, - 702=>366, 703=>366, 704=>313, 705=>313, 711=>500, 712=>282, 713=>500, 716=>282, 720=>369, 721=>369, 722=>366, 723=>366, 726=>392, 728=>500, 729=>500, 730=>500, - 731=>500, 733=>500, 734=>417, 736=>458, 737=>292, 738=>395, 739=>475, 740=>313, 741=>484, 742=>484, 743=>484, 744=>484, 745=>484, 750=>553, 768=>0, 769=>0, - 770=>0, 771=>0, 772=>0, 773=>0, 774=>0, 775=>0, 776=>0, 777=>0, 778=>0, 779=>0, 780=>0, 781=>0, 782=>0, 783=>0, 784=>0, 785=>0, - 786=>0, 787=>0, 788=>0, 789=>0, 790=>0, 791=>0, 792=>0, 793=>0, 794=>0, 795=>0, 796=>0, 797=>0, 798=>0, 799=>0, 800=>0, 801=>0, - 802=>0, 803=>0, 804=>0, 805=>0, 806=>0, 807=>0, 808=>0, 809=>0, 810=>0, 811=>0, 812=>0, 813=>0, 814=>0, 815=>0, 816=>0, 817=>0, - 818=>0, 819=>0, 820=>0, 821=>0, 822=>0, 823=>0, 824=>0, 825=>0, 826=>0, 827=>0, 828=>0, 829=>0, 830=>0, 831=>0, 835=>0, 847=>0, - 856=>0, 865=>0, 884=>302, 885=>302, 890=>500, 894=>369, 900=>500, 901=>500, 902=>776, 903=>348, 904=>947, 905=>1118, 906=>662, 908=>887, 910=>953, 911=>911, - 912=>484, 913=>776, 914=>845, 915=>710, 916=>776, 917=>762, 918=>730, 919=>945, 920=>871, 921=>468, 922=>869, 923=>776, 924=>1107, 925=>914, 926=>704, 927=>871, - 928=>944, 929=>752, 931=>707, 932=>744, 933=>714, 934=>871, 935=>776, 936=>913, 937=>890, 938=>468, 939=>714, 940=>770, 941=>608, 942=>727, 943=>484, 944=>694, - 945=>770, 946=>664, 947=>660, 948=>667, 949=>608, 950=>592, 951=>727, 952=>667, 953=>484, 954=>750, 955=>701, 956=>732, 957=>694, 958=>592, 959=>667, 960=>732, - 961=>665, 962=>609, 963=>737, 964=>673, 965=>694, 966=>905, 967=>658, 968=>941, 969=>952, 970=>484, 971=>694, 972=>667, 973=>694, 974=>952, 976=>667, 977=>849, - 978=>764, 979=>969, 980=>764, 981=>941, 982=>952, 983=>655, 984=>871, 985=>667, 986=>796, 987=>609, 988=>710, 989=>527, 990=>590, 991=>660, 992=>796, 993=>667, - 1008=>655, 1009=>665, 1010=>609, 1011=>362, 1012=>871, 1013=>609, 1014=>609, 1015=>757, 1016=>699, 1017=>796, 1018=>1107, 1019=>860, 1020=>692, 1021=>796, 1022=>796, 1023=>796, - 1024=>762, 1025=>762, 1026=>901, 1028=>795, 1029=>722, 1030=>468, 1031=>468, 1032=>473, 1033=>1202, 1034=>1262, 1035=>963, 1037=>945, 1038=>812, 1040=>814, 1041=>854, 1042=>845, - 1043=>690, 1044=>889, 1045=>762, 1046=>1312, 1047=>721, 1048=>945, 1049=>945, 1050=>910, 1051=>884, 1052=>1107, 1053=>945, 1054=>871, 1055=>944, 1056=>752, 1057=>796, 1058=>744, - 1059=>812, 1060=>949, 1061=>776, 1062=>966, 1063=>913, 1064=>1268, 1065=>1293, 1066=>957, 1067=>1202, 1068=>825, 1069=>795, 1070=>1287, 1071=>882, 1072=>648, 1073=>667, 1074=>695, - 1075=>613, 1076=>667, 1077=>636, 1078=>1010, 1079=>638, 1080=>742, 1081=>742, 1082=>722, 1083=>705, 1084=>869, 1085=>732, 1086=>667, 1087=>732, 1088=>699, 1089=>609, 1090=>620, - 1091=>640, 1092=>902, 1093=>596, 1094=>739, 1095=>732, 1096=>1075, 1097=>1082, 1098=>767, 1099=>1002, 1100=>679, 1101=>609, 1102=>1025, 1103=>739, 1104=>636, 1105=>636, 1106=>719, - 1107=>613, 1108=>609, 1109=>563, 1110=>380, 1111=>380, 1112=>362, 1113=>968, 1114=>995, 1115=>727, 1117=>742, 1118=>640, 1119=>732, 1122=>880, 1123=>703, 1138=>871, 1139=>652, - 1140=>916, 1141=>749, 1164=>792, 1165=>664, 1168=>700, 1169=>618, 1170=>710, 1171=>637, 1172=>868, 1173=>716, 1174=>1312, 1175=>1010, 1176=>721, 1177=>638, 1178=>947, 1179=>744, - 1182=>910, 1183=>693, 1184=>999, 1185=>733, 1186=>966, 1187=>739, 1188=>1187, 1189=>980, 1190=>1345, 1191=>1059, 1194=>796, 1195=>609, 1196=>744, 1197=>620, 1198=>714, 1199=>581, - 1202=>866, 1203=>649, 1204=>1250, 1205=>997, 1206=>928, 1207=>739, 1210=>910, 1211=>727, 1216=>468, 1217=>1312, 1218=>1010, 1219=>869, 1220=>693, 1223=>945, 1224=>732, 1227=>913, - 1228=>732, 1231=>380, 1232=>814, 1233=>648, 1234=>814, 1235=>648, 1236=>1034, 1237=>975, 1238=>762, 1239=>636, 1240=>871, 1241=>636, 1242=>871, 1243=>636, 1244=>1312, 1245=>1010, - 1246=>721, 1247=>638, 1248=>568, 1249=>568, 1250=>945, 1251=>742, 1252=>945, 1253=>742, 1254=>871, 1255=>667, 1256=>871, 1257=>667, 1258=>871, 1259=>667, 1260=>795, 1261=>609, - 1262=>812, 1263=>640, 1264=>812, 1265=>640, 1266=>812, 1267=>640, 1268=>913, 1269=>732, 1270=>690, 1271=>613, 1272=>1202, 1273=>1002, 7426=>940, 7432=>509, 7433=>320, 7444=>989, - 7446=>667, 7447=>667, 7453=>737, 7454=>948, 7455=>948, 7491=>466, 7492=>466, 7493=>498, 7494=>657, 7495=>499, 7496=>498, 7497=>444, 7498=>444, 7499=>412, 7500=>412, 7501=>498, - 7502=>300, 7503=>523, 7504=>729, 7505=>473, 7506=>467, 7507=>427, 7508=>467, 7509=>467, 7510=>499, 7511=>371, 7512=>520, 7513=>434, 7514=>729, 7515=>491, 7543=>640, 7547=>380, - 7557=>380, 7579=>498, 7580=>427, 7581=>427, 7582=>467, 7583=>412, 7584=>383, 7585=>373, 7586=>498, 7587=>522, 7588=>300, 7589=>307, 7590=>300, 7591=>300, 7592=>370, 7593=>368, - 7594=>321, 7595=>430, 7596=>682, 7597=>729, 7598=>588, 7599=>587, 7600=>472, 7601=>467, 7602=>522, 7603=>400, 7604=>387, 7605=>371, 7606=>520, 7607=>475, 7609=>489, 7610=>491, - 7611=>412, 7612=>527, 7613=>412, 7614=>452, 7615=>467, 7680=>776, 7681=>648, 7682=>845, 7683=>699, 7684=>845, 7685=>699, 7686=>845, 7687=>699, 7688=>796, 7689=>609, 7690=>867, - 7691=>699, 7692=>867, 7693=>699, 7694=>867, 7695=>699, 7696=>867, 7697=>699, 7698=>867, 7699=>699, 7700=>762, 7701=>636, 7702=>762, 7703=>636, 7704=>762, 7705=>636, 7706=>762, - 7707=>636, 7710=>710, 7711=>430, 7712=>854, 7713=>699, 7714=>945, 7715=>727, 7716=>945, 7717=>727, 7718=>945, 7719=>727, 7720=>945, 7721=>727, 7722=>945, 7723=>727, 7724=>468, - 7725=>380, 7728=>869, 7729=>693, 7730=>869, 7731=>693, 7732=>869, 7733=>693, 7734=>703, 7735=>380, 7736=>703, 7737=>380, 7738=>703, 7739=>380, 7740=>703, 7741=>380, 7742=>1107, - 7743=>1058, 7744=>1107, 7745=>1058, 7746=>1107, 7747=>1058, 7748=>914, 7749=>727, 7750=>914, 7751=>727, 7752=>914, 7753=>727, 7754=>914, 7755=>727, 7760=>871, 7761=>667, 7762=>871, - 7763=>667, 7764=>752, 7765=>699, 7766=>752, 7767=>699, 7768=>831, 7769=>527, 7770=>831, 7771=>527, 7772=>831, 7773=>527, 7774=>831, 7775=>527, 7776=>722, 7777=>563, 7778=>722, - 7779=>563, 7784=>722, 7785=>563, 7786=>744, 7787=>462, 7788=>744, 7789=>462, 7790=>744, 7791=>462, 7792=>744, 7793=>462, 7794=>872, 7795=>727, 7796=>872, 7797=>727, 7798=>872, - 7799=>727, 7800=>872, 7801=>727, 7802=>872, 7803=>727, 7804=>776, 7805=>581, 7806=>776, 7807=>581, 7808=>1123, 7809=>861, 7810=>1123, 7811=>861, 7812=>1123, 7813=>861, 7814=>1123, - 7815=>861, 7816=>1123, 7817=>861, 7818=>776, 7819=>596, 7820=>776, 7821=>596, 7822=>714, 7823=>581, 7824=>730, 7825=>568, 7826=>730, 7827=>568, 7828=>730, 7829=>568, 7830=>727, - 7831=>462, 7832=>861, 7833=>581, 7834=>1014, 7835=>563, 7840=>776, 7841=>648, 7842=>776, 7843=>648, 7852=>776, 7853=>648, 7854=>776, 7855=>648, 7856=>776, 7857=>648, 7858=>776, - 7859=>648, 7860=>776, 7861=>648, 7862=>776, 7863=>648, 7864=>762, 7865=>636, 7866=>762, 7867=>636, 7868=>762, 7869=>636, 7878=>762, 7879=>636, 7880=>468, 7881=>380, 7882=>468, - 7883=>380, 7884=>871, 7885=>667, 7886=>871, 7887=>667, 7896=>871, 7897=>667, 7908=>872, 7909=>727, 7910=>872, 7911=>727, 7922=>714, 7923=>581, 7924=>714, 7925=>581, 7926=>714, - 7927=>581, 7928=>714, 7929=>581, 7936=>770, 7937=>770, 7938=>770, 7939=>770, 7940=>770, 7941=>770, 7942=>770, 7943=>770, 7944=>776, 7945=>776, 7946=>978, 7947=>978, 7948=>832, - 7949=>849, 7950=>776, 7951=>776, 7952=>608, 7953=>608, 7954=>608, 7955=>608, 7956=>608, 7957=>608, 7960=>917, 7961=>909, 7962=>1169, 7963=>1169, 7964=>1093, 7965=>1120, 7968=>727, - 7969=>727, 7970=>727, 7971=>727, 7972=>727, 7973=>727, 7974=>727, 7975=>727, 7976=>1100, 7977=>1094, 7978=>1358, 7979=>1361, 7980=>1279, 7981=>1308, 7982=>1197, 7983=>1194, 7984=>484, - 7985=>484, 7986=>484, 7987=>484, 7988=>484, 7989=>484, 7990=>484, 7991=>484, 7992=>629, 7993=>617, 7994=>878, 7995=>881, 7996=>799, 7997=>831, 7998=>723, 7999=>714, 8000=>667, - 8001=>667, 8002=>667, 8003=>667, 8004=>667, 8005=>667, 8008=>900, 8009=>935, 8010=>1240, 8011=>1237, 8012=>1035, 8013=>1066, 8016=>694, 8017=>694, 8018=>694, 8019=>694, 8020=>694, - 8021=>694, 8022=>694, 8023=>694, 8025=>922, 8027=>1186, 8029=>1133, 8031=>1019, 8032=>952, 8033=>952, 8034=>952, 8035=>952, 8036=>952, 8037=>952, 8038=>952, 8039=>952, 8040=>931, - 8041=>963, 8042=>1268, 8043=>1274, 8044=>1054, 8045=>1088, 8046=>1023, 8047=>1060, 8048=>770, 8049=>770, 8050=>608, 8051=>608, 8052=>727, 8053=>727, 8054=>484, 8055=>484, 8056=>667, - 8057=>667, 8058=>694, 8059=>694, 8060=>952, 8061=>952, 8064=>770, 8065=>770, 8066=>770, 8067=>770, 8068=>770, 8069=>770, 8070=>770, 8071=>770, 8072=>776, 8073=>776, 8074=>978, - 8075=>978, 8076=>832, 8077=>849, 8078=>776, 8079=>776, 8080=>727, 8081=>727, 8082=>727, 8083=>727, 8084=>727, 8085=>727, 8086=>727, 8087=>727, 8088=>1100, 8089=>1094, 8090=>1358, - 8091=>1361, 8092=>1279, 8093=>1308, 8094=>1197, 8095=>1194, 8096=>952, 8097=>952, 8098=>952, 8099=>952, 8100=>952, 8101=>952, 8102=>952, 8103=>952, 8104=>931, 8105=>963, 8106=>1268, - 8107=>1274, 8108=>1054, 8109=>1088, 8110=>1023, 8111=>1060, 8112=>770, 8113=>770, 8114=>770, 8115=>770, 8116=>770, 8118=>770, 8119=>770, 8120=>776, 8121=>776, 8122=>811, 8123=>776, - 8124=>776, 8125=>500, 8126=>500, 8127=>500, 8128=>500, 8129=>500, 8130=>727, 8131=>727, 8132=>727, 8134=>727, 8135=>727, 8136=>1000, 8137=>947, 8138=>1191, 8139=>1118, 8140=>945, - 8141=>500, 8142=>500, 8143=>500, 8144=>484, 8145=>484, 8146=>484, 8147=>484, 8150=>484, 8151=>484, 8152=>468, 8153=>468, 8154=>714, 8155=>662, 8157=>500, 8158=>500, 8159=>500, - 8160=>694, 8161=>694, 8162=>694, 8163=>694, 8164=>665, 8165=>665, 8166=>694, 8167=>694, 8168=>714, 8169=>714, 8170=>1019, 8171=>953, 8172=>910, 8173=>500, 8174=>500, 8175=>500, - 8178=>952, 8179=>952, 8180=>952, 8182=>952, 8183=>952, 8184=>1069, 8185=>887, 8186=>1101, 8187=>911, 8188=>890, 8189=>500, 8190=>500, 8192=>500, 8193=>1000, 8194=>500, 8195=>1000, - 8196=>330, 8197=>250, 8198=>167, 8199=>696, 8200=>348, 8201=>200, 8202=>100, 8203=>0, 8204=>0, 8205=>0, 8206=>0, 8207=>0, 8208=>415, 8209=>415, 8210=>696, 8213=>1000, - 8215=>500, 8219=>348, 8223=>575, 8227=>639, 8228=>348, 8229=>674, 8234=>0, 8235=>0, 8236=>0, 8237=>0, 8238=>0, 8239=>200, 8241=>1820, 8252=>629, 8253=>586, 8254=>500, - 8263=>1082, 8264=>856, 8265=>856, 8287=>222, 8288=>0, 8289=>0, 8290=>0, 8291=>0, 8298=>0, 8299=>0, 8300=>0, 8301=>0, 8302=>0, 8303=>0, 8304=>438, 8308=>438, - 8309=>438, 8310=>438, 8311=>438, 8312=>438, 8313=>438, 8319=>519, 8320=>438, 8321=>438, 8322=>438, 8323=>438, 8324=>438, 8325=>438, 8326=>438, 8327=>438, 8328=>438, 8329=>438, - 8358=>696, 8367=>1155, 8369=>790, 8372=>876, 8373=>696, 8462=>727, 8470=>1087, 8486=>890, 8490=>869, 8491=>776, 8531=>1035, 8532=>1035, 8533=>1035, 8534=>1035, 8535=>1035, 8536=>1035, - 8537=>1035, 8538=>1035, 8539=>1035, 8540=>1035, 8541=>1035, 8542=>1035, 8543=>615, 8592=>838, 8593=>838, 8594=>838, 8595=>838, 8706=>534, 8710=>753, 8711=>753, 8719=>842, 8721=>753, - 8722=>838, 8725=>167, 8729=>348, 8730=>657, 8733=>672, 8734=>833, 8735=>838, 8736=>838, 8743=>812, 8744=>812, 8745=>812, 8746=>812, 8747=>579, 8748=>1000, 8749=>1391, 8770=>838, - 8771=>838, 8776=>838, 8800=>838, 8801=>838, 8804=>838, 8805=>838, 8962=>834, 8968=>473, 8969=>473, 8970=>473, 8971=>473, 8976=>838, 8977=>539, 8984=>928, 8985=>838, 8992=>579, - 8993=>579, 8997=>1000, 9000=>1443, 9085=>1008, 9134=>579, 9167=>945, 9251=>834, 9600=>769, 9601=>769, 9602=>769, 9603=>769, 9604=>769, 9605=>769, 9606=>769, 9607=>769, 9608=>769, - 9609=>769, 9610=>769, 9611=>769, 9612=>769, 9613=>769, 9614=>769, 9615=>769, 9616=>769, 9617=>769, 9618=>769, 9619=>769, 9620=>769, 9621=>769, 9622=>769, 9623=>769, 9624=>769, - 9625=>769, 9626=>769, 9627=>769, 9628=>769, 9629=>769, 9630=>769, 9631=>769, 9632=>945, 9633=>945, 9634=>945, 9635=>945, 9636=>945, 9637=>945, 9638=>945, 9639=>945, 9640=>945, - 9641=>945, 9642=>678, 9643=>678, 9644=>945, 9645=>945, 9646=>550, 9647=>550, 9648=>769, 9649=>769, 9650=>769, 9651=>769, 9652=>502, 9653=>502, 9654=>769, 9655=>769, 9656=>502, - 9657=>502, 9658=>769, 9659=>769, 9660=>769, 9661=>769, 9662=>502, 9663=>502, 9664=>769, 9665=>769, 9666=>502, 9667=>502, 9668=>769, 9669=>769, 9670=>769, 9671=>769, 9672=>769, - 9673=>873, 9674=>494, 9675=>873, 9676=>873, 9677=>873, 9678=>873, 9679=>873, 9680=>873, 9681=>873, 9682=>873, 9683=>873, 9684=>873, 9685=>873, 9686=>527, 9687=>527, 9688=>791, - 9689=>970, 9690=>970, 9691=>970, 9692=>387, 9693=>387, 9694=>387, 9695=>387, 9696=>873, 9697=>873, 9698=>769, 9699=>769, 9700=>769, 9701=>769, 9702=>590, 9703=>945, 9704=>945, - 9705=>945, 9706=>945, 9707=>945, 9708=>769, 9709=>769, 9710=>769, 9711=>1119, 9712=>945, 9713=>945, 9714=>945, 9715=>945, 9716=>873, 9717=>873, 9718=>873, 9719=>873, 9720=>769, - 9721=>769, 9722=>769, 9723=>830, 9724=>830, 9725=>732, 9726=>732, 9727=>769, 9728=>896, 9784=>896, 9785=>896, 9786=>896, 9787=>896, 9788=>896, 9791=>614, 9792=>731, 9793=>731, - 9794=>896, 9795=>896, 9796=>896, 9797=>896, 9798=>896, 9799=>896, 9824=>896, 9825=>896, 9826=>896, 9827=>896, 9828=>896, 9829=>896, 9830=>896, 9831=>896, 9833=>472, 9834=>638, - 9835=>896, 9836=>896, 9837=>472, 9838=>357, 9839=>484, 10208=>494, 10216=>457, 10217=>457, 10731=>494, 10764=>1782, 10765=>610, 10766=>610, 11026=>945, 11027=>945, 11028=>945, 11029=>945, - 11030=>769, 11031=>769, 11032=>769, 11033=>769, 11034=>945, 63173=>667, 63185=>500, 63188=>500, 64256=>930, 64257=>727, 64258=>727, 64259=>1126, 64260=>1123, 64261=>871, 64262=>971, 65024=>0, - 65025=>0, 65026=>0, 65027=>0, 65028=>0, 65029=>0, 65030=>0, 65031=>0, 65032=>0, 65033=>0, 65034=>0, 65035=>0, 65036=>0, 65037=>0, 65038=>0, 65039=>0, 65533=>1113); -$enc=''; -$diff=''; -$file='DejaVuSerif-Bold.z'; -$ctg='DejaVuSerif-Bold.ctg.z'; -$originalsize=203488; -?> diff --git a/libraries/tcpdf/fonts/README.TXT b/libraries/tcpdf/fonts/README.TXT new file mode 100644 index 000000000..22215fad7 --- /dev/null +++ b/libraries/tcpdf/fonts/README.TXT @@ -0,0 +1,3 @@ +This folder contains fonts descriptions for TCPDF. +All fonts names must be in lowercase. +Please read the documentation on subfolders for copyright, license and other information. diff --git a/libraries/tcpdf/fonts/courier.php b/libraries/tcpdf/fonts/courier.php new file mode 100644 index 000000000..d6ab661c0 --- /dev/null +++ b/libraries/tcpdf/fonts/courier.php @@ -0,0 +1,33 @@ +600,1=>600,2=>600,3=>600,4=>600,5=>600,6=>600,7=>600,8=>600,9=>600, +10=>600,11=>600,12=>600,13=>600,14=>600,15=>600,16=>600,17=>600,18=>600,19=>600, +20=>600,21=>600,22=>600,23=>600,24=>600,25=>600,26=>600,27=>600,28=>600,29=>600, +30=>600,31=>600,32=>600,33=>600,34=>600,35=>600,36=>600,37=>600,38=>600,39=>600, +40=>600,41=>600,42=>600,43=>600,44=>600,45=>600,46=>600,47=>600,48=>600,49=>600, +50=>600,51=>600,52=>600,53=>600,54=>600,55=>600,56=>600,57=>600,58=>600,59=>600, +60=>600,61=>600,62=>600,63=>600,64=>600,65=>600,66=>600,67=>600,68=>600,69=>600, +70=>600,71=>600,72=>600,73=>600,74=>600,75=>600,76=>600,77=>600,78=>600,79=>600, +80=>600,81=>600,82=>600,83=>600,84=>600,85=>600,86=>600,87=>600,88=>600,89=>600, +90=>600,91=>600,92=>600,93=>600,94=>600,95=>600,96=>600,97=>600,98=>600,99=>600, +100=>600,101=>600,102=>600,103=>600,104=>600,105=>600,106=>600,107=>600,108=>600, +109=>600,110=>600,111=>600,112=>600,113=>600,114=>600,115=>600,116=>600,117=>600, +118=>600,119=>600,120=>600,121=>600,122=>600,123=>600,124=>600,125=>600,126=>600, +127=>600,128=>600,129=>600,130=>600,131=>600,132=>600,133=>600,134=>600,135=>600, +136=>600,137=>600,138=>600,139=>600,140=>600,141=>600,142=>600,143=>600,144=>600, +145=>600,146=>600,147=>600,148=>600,149=>600,150=>600,151=>600,152=>600,153=>600, +154=>600,155=>600,156=>600,157=>600,158=>600,159=>600,160=>600,161=>600,162=>600, +163=>600,164=>600,165=>600,166=>600,167=>600,168=>600,169=>600,170=>600,171=>600, +172=>600,173=>600,174=>600,175=>600,176=>600,177=>600,178=>600,179=>600,180=>600, +181=>600,182=>600,183=>600,184=>600,185=>600,186=>600,187=>600,188=>600,189=>600, +190=>600,191=>600,192=>600,193=>600,194=>600,195=>600,196=>600,197=>600,198=>600, +199=>600,200=>600,201=>600,202=>600,203=>600,204=>600,205=>600,206=>600,207=>600, +208=>600,209=>600,210=>600,211=>600,212=>600,213=>600,214=>600,215=>600,216=>600, +217=>600,218=>600,219=>600,220=>600,221=>600,222=>600,223=>600,224=>600,225=>600, +226=>600,227=>600,228=>600,229=>600,230=>600,231=>600,232=>600,233=>600,234=>600, +235=>600,236=>600,237=>600,238=>600,239=>600,240=>600,241=>600,242=>600,243=>600, +244=>600,245=>600,246=>600,247=>600,248=>600,249=>600,250=>600,251=>600,252=>600, +253=>600,254=>600,255=>600); +// --- EOF --- diff --git a/libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/AUTHORS b/libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/AUTHORS new file mode 100644 index 000000000..61f23e329 --- /dev/null +++ b/libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/AUTHORS @@ -0,0 +1,48 @@ +abysta at yandex.ru +Adrian Schroeter +Andrey Valentinovich Panov +Ben Laenen +Besarion Gugushvili +Bhikkhu Pesala +Clayborne Arevalo +Dafydd Harries +Danilo Segan +Davide Viti +David Jez +David Lawrence Ramsey +Denis Jacquerye +Dwayne Bailey +Eugeniy Meshcheryakov +Gee Fung Sit +Heikki Lindroos +James Cloos +James Crippen +John Karp +Keenan Pepper +Lars Naesbye Christensen +Mashrab Kuvatov +Max Berger +Mederic Boquien +Michael Everson +MihailJP +Misu Moldovan +Nguyen Thai Ngoc Duy +Nicolas Mailhot +Ognyan Kulev +Ondrej Koala Vacha +Peter Cernak +Remy Oudompheng +Roozbeh Pournader +Sahak Petrosyan +Sander Vesik +Stepan Roh +Stephen Hartke +Steve Tinney +Tavmjong Bah +Thomas Henlich +Tim May +Valentin Stoykov +Vasek Stodulka +Wesley Transue + +$Id: AUTHORS 2404 2010-07-30 17:13:05Z noct_dreamer $ diff --git a/libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/BUGS b/libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/BUGS new file mode 100644 index 000000000..49b36de55 --- /dev/null +++ b/libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/BUGS @@ -0,0 +1,3 @@ +See http://dejavu.sourceforge.net/wiki/index.php/Bugs + +$Id: BUGS 80 2004-11-13 13:12:02Z src $ diff --git a/libraries/tcpdf/font/LICENSE b/libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/LICENSE similarity index 97% rename from libraries/tcpdf/font/LICENSE rename to libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/LICENSE index 7684811e8..254e2cc42 100644 --- a/libraries/tcpdf/font/LICENSE +++ b/libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/LICENSE @@ -1,4 +1,5 @@ -Fonts are (c) Bitstream (see below). DejaVu changes are in public domain. Glyphs imported from Arev fonts are (c) Tavmjung Bah (see below) +Fonts are (c) Bitstream (see below). DejaVu changes are in public domain. +Glyphs imported from Arev fonts are (c) Tavmjong Bah (see below) Bitstream Vera Fonts Copyright ------------------------------ @@ -94,3 +95,5 @@ be used in advertising or otherwise to promote the sale, use or other dealings in this Font Software without prior written authorization from Tavmjong Bah. For further information, contact: tavmjong @ free . fr. + +$Id: LICENSE 2133 2007-11-28 02:46:28Z lechimp $ diff --git a/libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/NEWS b/libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/NEWS new file mode 100644 index 000000000..51b0e9fbb --- /dev/null +++ b/libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/NEWS @@ -0,0 +1,1250 @@ +Changes from 2.31 to 2.32 + +* added to Sans: Latin small letter p with stroke (U+1D7D), Latin capital letter p with stroke through descender (U+A750), Latin small letter p with stroke through descender (U+A751), Latin capital letter thorn with stroke (U+A764), Latin small letter thorn with stroke (U+A765), Latin capital letter thorn with stroke through descender (U+A766), Latin small letter thorn with stroke through descender (U+A767), Latin capital letter q with stroke through descender (U+A756), Latin small letter q with stroke through descender (U+A757), Latin capital letter p with flourish (U+A752), Latin small letter p with flourish (U+A753) (by Ben Laenen) +* add new Indian rupee symbol (U+20B9) to Sans, Serif and Mono (although standardization in Unicode not complete yet, UTC did assign this code point) (by Ben Laenen) +* Sans: adjusted U+0E3F, U+20AB, U+20AD-U+20AE, U+20B1, U+20B5, U+20B8 to have them take up the same width as digits (by Gee Fung Sit 薛至峰) +* added U+23E8 to Sans (by Thomas Henlich) +* fixed numerous bugs (#22579, #28189, #28977, N'Ko in Windows, fixed U+FB4F, anchors for U+0332-U+0333, made extensions in Misc. Technical connect, and other small fixes) (by Gee Fung Sit 薛至峰) +* added looptail g as stylistic variant to Serif (by Gee Fung Sit 薛至峰) +* added the remaining precomposed characters in Latin Extended Additional in Serif (by Gee Fung Sit 薛至峰) +* added Georgian Mkhedruli (U+10D0-U+10FC) to Sans ExtraLight (by Besarion Gugushvili) +* fix spacing in hinting of U+042E (Ю) in Mono (by Ben Laenen) +* replaced U+2650 and minor changes to U+2640-U+2642, U+2699, U+26A2-U+26A5, U+26B2-U+26B5, U+26B8 in Sans (by Gee Fung Sit 薛至峰) +* added U+1E9C-U+1E9D, U+1EFA-U+1EFB, U+2028-U+2029, U+20B8, U+2150-U+2152, U+2189, U+26C0-U+26C3, U+A722-U+A725, U+1F030-U+1F093 to Sans (by Gee Fung Sit 薛至峰) +* added U+1E9C-U+1E9E, U+1EFA-U+1EFB, U+2028-U+2029, U+20B8, U+2181-U+2182, U+2185 U+A722-U+A725, to Sans ExtraLight (by Gee Fung Sit 薛至峰) +* added U+20B8, U+22A2-U+22A5, U+A722-U+A725 to Mono (by Gee Fung Sit 薛至峰) +* added U+02CD, U+01BF, U+01F7, U+0222-U+0223, U+0243-U+0244, U+0246-U+024F, U+2150-U+2152, U+2189, U+239B-U+23AD and U+A73D to Serif (by Gee Fung Sit 薛至峰) + +Changes from 2.30 to 2.31 + +* fixed bug where Serif Condensed Italic wouldn't get proper subfamily tags (by + Ben Laenen) +* added math operators U+2234-U+2237 to Mono (by Ben Laenen) +* removed buggy instructions of U+032D (by Eugeniy Meshcheryakov) +* added U+2C70, U+2C7E, U+2C7F to Sans and Sans Mono (by Denis Jacquerye) +* added U+2C7D to Sans Mono (by Denis Jacquerye) +* added U+2C6D, U+2C70-2C73, U+2C7E-2C7F to Serif (by Denis Jacquerye) +* added extremas to alpha U+03B1 in Serif-Italic (by Denis Jacquerye) +* added U+4A4, U+4A5 to Mono (by Andrey V. Panov) +* added Arabic letters U+0657, U+0670, U+0688-U+0690, U+0693-U+0694, + U+0696-U+0697, U+0699-U+06A0, U+06A2-U+06A3, U+06A5, U+06A7-U+06A8, + U+06AA-U+06AE, U+06B0-U+06B4, U+06B6-U+06B9, U+06BB-U+06BE and their + contextual forms to Sans (by MihailJP) +* added U+A78D LATIN CAPITAL LETTER TURNED H for coming Unicode 6.0 (by Denis + Jacquerye) + +Changes from 2.29 to 2.30 + +* added U+0462-U+0463 to Mono (by Denis Jacquerye) +* corrected U+1E53 in Serif (by Gee Fung Sit) +* added U+1E4C-U+1E4D to Mono and Serif (by Gee Fung Sit) +* added U+1E78-U+1E79 to Mono (by Gee Fung Sit) +* fixed missing diacritics in Latin Extended Additional in Sans ExtraLight + (moved stacked diacritics out of PUA in the process) (by Gee Fung Sit) +* fixed anchors on U+1E78 in Serif (by Gee Fung Sit) +* added U+1DC4-U+1DC9 to Serif (by Denis Jacquerye) +* renamed above-mark to above-mark in Serif-Italic (by Denis Jacquerye) +* added U+1DC4-U+1DC9 to context class for dotless substitution (by Denis + Jacquerye) +* changed Doubleacute to Doublegrave in Sans ExtraLight (by Gee Fung Sit) +* removed redundant reference in U+01FB in Sans Oblique (by Gee Fung Sit) +* added U+A726-U+A727 to Mono (Denis Jacquerye) +* changed U+04BE and U+04BF according to recommedations of Sasha Ankwab in Sans + (by Andrey V. Panov) +* remove "Symbol Charset" from set of codepages in Sans (by Eugeniy + Meshcheryakov) + +Changes from 2.28 to 2.29 + +* modified U+10FB in Sans to be a mirror image of U+2056, since U+10FB is not + Georgian-specific (by Roozbeh Pournader) +* added U+2B1F, U+2B24, U+2B53, U+2B54 in Sans (by Roozbeh Pournader) +* fixed TUR opentype language tag to TRK in Serif (bug 19825) (by Ben Laenen) +* early implementation of Abkhaz letter U+0524-U+0525 in Sans + (by Michael Everson and abysta) +* flipped U+1D538 in Sans (by Gee Fung Sit) +* added U+26B3-U+26B8, U+1D7D8-U+1D7E1 in Sans (by Gee Fung Sit) +* corrected U+1D7A9 in Sans Bold Oblique (by Gee Fung Sit) +* Fixed U+0649 to be dual-joining in Sans Mono (by Roozbeh Pournader) +* Remove unnecessary 'isol' feature from Sans Mono (by Roozbeh Pournader) +* Remove 'cmap' mappings for U+066E, U+066F, U+067C, U+067D, U+0681, U+0682, + U+0685, U+0692, U+06A1, U+06B5, U+06BA, U+06C6, U+06CE, and U+06D5 + in Sans Mono (bug 20323) (by Roozbeh Pournader) +* add half brackets (U+2E22 - U+2E25, by Steve Tinney) + +Changes from 2.27 to 2.28 + +* added U+A789, U+A78A in Sans and Sans Mono (by Denis Jacquerye) +* modified U+02D6, U+02D7, U+02EE in Sans and Sans Mono (by Denis Jacquerye) +* added U+1E9E (German capital ß) to Sans and Serif (by Denis Jacquerye) +* adjusted width of U+01B7-U+01B9 in Serif Italic (by Denis Jacquerye) +* modified U+021C, U+021D in Sans (by Denis Jacquerye) +* added U+021C, U+021D in Mono (by Denis Jacquerye) +* added U+F428 (Georgian Nuskhuri "f") in private use area (by Besarion + Gugushvili) +* updated Georgian mkhedruli (U+10D0-U+10FA) with new version (by Besarion + Gugushvili) +* updated Georgian asomtavruli (U+10A0-U+10C5) with new version (by Besarion + Gugushvili) +* added Georgian nuskhuri (U+2D00-U+2D25) (by Besarion Gugushvili) +* added Georgian mtavruli in private use area (U+F400-U+F426) (by Besarion + Gugushvili) +* added mark anchors above to Cyrillic U+0430-U+0438, U+043A-U+044F, + U+0454-U+0455 in Mono (by Ben Laenen) +* modified/moved up U+0318-U+0319, U+031C-U+031F, U+0329-U+032A, U+032C-U+032D, + U+0339-U+033B, U+0348 and U+0353 in Sans to prevent cut-off (by Gee Fung Sit) +* added U+035A to Sans (by Gee Fung Sit) +* updated fontconfig files (by Nicolas Mailhot) +* added U+2032-2037 to Mono (by Denis Jacquerye) +* added Ogham to Sans ExtraLight (by Gee Fung Sit) +* added U+2C6F, U+2C79, U+2C7C-2C7D to Mono (by Gee Fung Sit) +* added U+210F to Serif and Sans ExtraLight (by Gee Fung Sit) +* changed U+210F to a more common glyph in Sans and Mono (by Gee Fung Sit) + +Changes from 2.26 to 2.27 + +* added some of Michael Everson's new Cyrillic glyphs to Sans (by Wesley + Transue) +* removed blank glyph at U+05EF from Sans Bold Oblique (by Gee Fung Sit) +* small adjustments to existing tone bars in Sans and Mono (by Gee Fung Sit) +* added U+0372-U+0373, U+0376-U+0377, U+03CF, U+A668-U+A66E, U+A708-U+A711, + U+A71B-U+A71F to Sans (by Gee Fung Sit) +* copied U+02E5-U+02E9 over from Sans to fix inconsistencies in Serif (by Gee + Fung Sit) +* added U+021C-U+021D, U+0370-U+0371, U+037B-U+037D, U+0470-U+0471, + U+0510-U+0515, U+051A-U+051D, U+1E9F, U+2C64, U+2C6E-U+2C6F, U+2C79, + U+2C7C-U+2C7D, U+A644-U+A647, U+A650-U+A651, U+A654-U+A657, U+A708-U+A716, + U+A71B-U+A71F to Serif (by Gee Fung Sit) +* added U+A708-U+A716, U+A71B-U+A71F to Mono (by Gee Fung Sit) +* added anchors to U+017F (Å¿) and fixed U+1E9B (ẛ) in Serif (by Gee Fung Sit) +* made U+0325 smaller in Sans Bold and Serif to match Sans Book (by Gee Fung + Sit) +* fixes to U+02F3 (moved up), U+228F-U+2294 (more square-like) and + U+22CE-U+22CF (stroke width) in Sans (by Gee Fung Sit) +* replaced U+2202 ∂ (Sans and Mono) and U+221D âˆ, U+221E ∞ (Sans) with glyphs + from Arev (with small changes) (by Gee Fung Sit) +* added U+22B0-U+22B1, U+22C7, U+22D0-U+22D5 from Arev to Sans to complete the + block (by Gee Fung Sit) +* added U+0514-U+0515 to Sans ExtraLight (by Gee Fung Sit) +* skewed U+A78C in all Oblique/Italic fonts (by Gee Fung Sit) +* moved U+2215 to U+2044 in Sans and Serif and replaced U+2215 with reference + to U+002F in all fonts (by Gee Fung Sit) +* added U+2C6E to Mono (by Denis Jacquerye) +* added U+A782 and U+A783 in Sans (by Wesley Transue) +* added U+0244, U+024C-024D, U+2C64 in Sans Mono (by Denis Jacquerye) +* modified U+01AE in Sans Mono (by Denis Jacquerye) +* added U+2C7A to all fonts (by Gee Fung Sit) +* italicized/small changes to U+2C76 in Serif (Bold) Italic (by Gee Fung Sit) +* improved outlines of U+2C68, U+2C6A, U+2C6C in Serif (Bold) Italic (by Gee + Fung Sit) +* rounded U+2C77 at the bottom in Serif (by Gee Fung Sit) +* added joining behavior for tone letters (U+02E5-U+02E9) in Sans (bug #15669) + (by Gee Fung Sit) +* fixed outline of y.alt in Sans Regular (by Denis Jacquerye) +* changed references of U+1D5A8, U+1D5C5, U+1D5DC, U+1D5F9, U+1D610, U+1D62D, + U+1D644 and U+1D661 to stylistic alternates to have a better distinction (by + Gee Fung Sit) +* hinted I.alt in Sans Regular (by Gee Fung Sit) +* added U+0487, completing Cyrillic block (by Gee Fung Sit) +* extended the bar of U+0463 to the right and moved the anchor (by Gee Fung + Sit) +* added anchors to glyphs in Cyrillic block (by Gee Fung Sit) +* added (preliminary) hints to tone letter forms (U+02E5.5, U+02E9.1, stem) in + Sans Book (by Gee Fung Sit) + +Changes from 2.25 to 2.26 + +- added glyphs for Cyrillic-B to Sans (by Wesley Transue) +- added U+0370-U+0371 to Sans (by Wesley Transue) +- added U+019C, U+01A2-U+01A3, U+01A6, U+01E4-U+01E5, U+024C-U+024D, U+0285, + U+0290, U+02A0, U+0370-U+0371, U+03F1, U+03FC to Sans ExtraLight (by Wesley + Transue) +- added U+20A0-U+20A5, U+20A7-U+20B3, U+2105, U+210D, U+210F, U+2115, U+2117, + U+2119-U+211A, U+211D, U+2124, U+212E, U+2200-U+2204 to Mono (by Heikki + Lindroos) +- added U+01BA and U+01BF to Mono (by Heikki Lindroos) +- merged OpenType "aalt" feature in Latin in Sans (by Denis Jacquerye) +- added alternative shape for y in Sans (by Denis Jacquerye) +- added saltillo (U+A78B-U+A78C) to all faces (by James Cloos) +- changed U+047C-U+047D to references instead of outlines in Sans (by Wesley + Transue) +- added Latin letter tresillo U+A72A-U+A72B to Sans (by Wesley Transue) +- added U+A734-U+A737 to Sans (by Wesley Transue) +- added U+2053 to Serif and fixed it bug:9425 in Sans (by Gee Fung Sit) +- removed problematic hints for U+0423 bug:10025 (by Gee Fung Sit) +- added U+27C5-U+27C6 bug:10255 to all faces (by Gee Fung Sit) +- fixed width of U+2016 in Sans Oblique (by Gee Fung Sit) +- added U+2016, U+2032-U+2038, U+2042, U+2045-U+2046, U+204B-U+204F, + U+2051-U+2052, U+2057 to Serif (by Gee Fung Sit) +- made U+2140 bigger to match other n-ary operators (by Gee Fung Sit) +- added U+0606-U+0607, U+0609-U+060A to Sans (by Gee Fung Sit) +- added U+221B-U+221C to Mono (by Gee Fung Sit) +- small adjustments to U+221B-U+221C in Sans and Serif (by Gee Fung Sit) +- update U+04B4-U+04B5 in Serif (by Andrey V. Panov) +- increased max-storage value from maxp table to 153 (by Andrey V. Panov) +- added U+0472-U+0473, U+0510-U+0511, U+051A-U+051D, U+0606-U+0607, + U+0609-U+060A, U+1E26-U+1E27, U+1E54-U+1E55, U+1E7C-U+1E7D, U+1E8C-U+1E8D, + U+1E90-U+1E91, U+1E97-U+1E99, U+1E9F, U+1EAC-U+1EAD, U+1EB6-U+1EB7, + U+1EC6-U+1EC7, U+1ED8-U+1EDD, U+1EE0-U+1EE3, U+1EE8-U+1EEB, U+1EEE-U+1EF1 to + Mono (by Gee Fung Sit) +- added locl rules for S/T cedilla for Romanian and Moldavian so they get + rendered as S/T with comma accent (see Redhat bug #455981) (by Ben Laenen) +- removed ligature rule from Armenian U+0587 bug:16113 (by Gee Fung Sit) + +Changes from 2.24 to 2.25 + +- moved/added U+2E18 (by Gee Fung Sit) +- added empty glyph for U+2064 in Sans and Serif (by Gee Fung Sit) +- added U+22CE-U+22CF to Sans (by Gee Fung Sit) +- Sans Oblique and Bold Oblique, Serif: reverted digits hinting instructions back to before revision 1590, which fixed mistaken debian bug #471024. This fixes Debian bug #411308. The original bug was in freetype not in the fonts (by Denis Jacquerye) +- added U+A726-U+A729, U+A730-U+A733, U+A738-U+A73F, U+A746-U+A74B, U+A74E-U+A74F, U+A780-U+A781, U+A7FB-U+A7FF to Sans (by Gee Fung Sit) +- added Macedonian italic glyph shape for U+0453 in Serif (by Ben Laenen) +- changed descenders in U+0446, U+0449, U+0497, U+04A3, U+04AD (by Andrey V. Panov) +- updated main SFD files to SplineFontDB 3.0 (Denis Jacquerye and Gee Fung Sit) +- moved U+0561 2 up since it wasn't aligned with the baseline well (by Ben Laenen) +- added U+2E2E to Sans (by Gee Fung Sit) +- replaced U+2699 with simpler version in Sans (by Gee Fung Sit) +- added a lot of hinting instructions to Latin Extended B, Greek and Coptic glyphs Sans Book (by Wesley Transue) +- differentiated U+2219 from U+22C5 and adjusted affected references in Sans and Mono (by Gee Fung Sit) +- made Hebrew narrower in Sans Bold and Sans Bold Oblique (by Denis Jacquerye) +- added Kurdish and Chuvash letters from Unicode 5.1 Cyrillic Extended block (by Wesley Transue) +- added U+1E9F, U+A644-U+A647, U+A64C-U+A64D, U+A650-U+A651, U+A654-U+A655, U+A712U+A716 to Sans (by Gee Fung Sit) +- added several glyphs to Sans ExtraLight (by Gee Fung Sit) +- added hinting instructions to U+046A-U+046B, U+0508-U+0509, U+050B, U+0512-U+0513 in Sans Book (by Wesley Transue) +- corrected width of U+027E in Sans Book (by Gee Fung Sit) +- added U+2C79, U+2C7B-U+2C7D to Sans (by Gee Fung Sit) +- added a bunch of glyphs+small corrections to Sans Light (by Gee Fung Sit) +- added U+0496, U+0497, U+04B0, U+04B1 (by Andrey V. Panov) +- updated U+0493, U+049B, U+04B3, U+04B7, U+04F7 (by Andrey V. Panov) +- further improvements in extended Cyrillic (by Andrey V. Panov) + +Changes from 2.23 to 2.24 + +- instructions for U+05C0 ×€, U+05C3 ׃, U+05F3 ׳, and U+05F4 ×´ in DejaVu + Sans. (by Wesley Transue) +- instructions for U+2116 in Sans (by Andrey V. Panov) +- Unicode 5.1 update: moved U+F208 to U+2C6D, U+F25F to U+2C71, added + U+2C6E-U+2C6F, U+2C72-U+2C73, updated outline of U+2C71 in Sans. (by + Denis Jacquerye) +- updated and instructed U+0401 in Sans (by Andrey V. Panov) +- fixed the bug in Sans faces where U+02EC ˬ faced the wrong direction. + Also, added a few more glyph instructions. (by Wesley Transue) +- removed OS2Sub and OS2Strike that weren't intentional in Sans + ExtraLight. (by Denis Jacquerye) +- updated instructions for U+401, U+44F in Serif Book. (by Andrey V. + Panov) +- instructions for U+02C4 Ë„, U+02C5 Ë…, U+03D8 Ϙ, U+03D9 Ï™, U+0494 Ò”, and + U+0495 Ò• in Sans Book. (by Wesley Transue) +- instructions for U+01A6 Ʀ, U+0238 ȸ, U+0239 ȹ, U+02EC ˬ, and U+05C6 ׆ + in Sans Book. (by Wesley Transue) +- DejaVuSans.sfd DejaVuSerif.sfd: updated instructions for U+447 and + U+451 using code generated with xgridfit (by Andrey V. Panov) +- instructions for a few glyphs in the Latin Extended-B Block, Greek + Block, Cyrillic Block, and N'Ko block. (by Wesley Transue) +- updated sfdnormalize.pl, and SFD files to new SFD format with empty + lines. (by Denis Jacquerye) + +Changes from 2.22 to 2.23 + +- fixed bug which made Condensed fonts appear instead of normal width ones +- added U+20DB, U+20DC, and U+20E1 to Sans (by Roozbeh Pournader) +- added hinting instructions to U+01A7, U+01AA-U+01AC, U+01AE-U+01AF, + U+01BC-U+01BD, U+01BF, U+01F7, U+0277, U+027F, U+0285-U+0286, U+0297, U+02AF, + U+02B4-U+02B5, U+02BD, U+030D, U+0311, U+0329, U+04A0-U+04A1 in Sans Book (by + Wesley Transue) +- modified hinting instructions of U+04A2 in Sans Book (by Wesley Transue) +- added hinting instructions to U+237D, U+2423 in Mono Book and Mono Bold (by + Wesley Transue) +- added mathematical alphanumeric symbols to all styles (by Max Berger) +- added Unicode 5.1 U+2E18 as U+2E18.u51 (not yet usable) to Sans (by Roozbeh + Pournader) +- dereferenced all glyphs with mixed references and outlines (by Denis + Jacquerye) +- removed non-zero width from U+0344 in Sans (by Denis Jacquerye) + +Changes from 2.21 to 2.22 + +- directory structure has changed, we now use the Makefile +- modified Armenian U+0565 in Sans (by ÕÕ¡Õ°Õ¡Õ¯ ÕŠÕ¥Õ¿Ö€Õ¸Õ½ÕµÕ¡Õ¶) +- added double struck letters and numbers U+2102, U+210D, U+2115, + U+2119-U+211A, U+211D, U+2124, U+213C-U+2140, U+2145-U+2149, U+1D538-U+1D539, + U+1D53B-U+1D53E, U+1D540-U+1D544, U+1D546, U+1D54A-U+1D550, U+1D552-U+1D56B, + U+1D7D8-U+1D7E1 to Serif (by Stephen Hartke) +- added letterlike symbols U+2103, U+2109, U+2127, U+214B, U+2141-U+2144 to + Serif (by Ben Laenen) +- fixed outline direction of U+2143 in Sans Bold/Bold Oblique (by Ben Laenen) +- added arrow set in Serif: arrows: U+2194-U+21FF; dingbats: U+27A1; + supplemental arrows A: U+27F0-U+27FF; supplemental arrows B: U+2900-U+2975, + U+297A; miscellaneous symbols and arrows: U+2B00-U+2B11 (by Ben Laenen) +- added U+0180, U+01DE, U+01E0-01E1, U+022A, U+022C, U+0230, U+1E08-U+1E09, + U+1E10-U+1E11, U+1EB0-U+1EB1 to Mono (by Denis Jacquerye) +- adjusted U+01D5, U+01D7, U+01D9, U+1DB in Mono (by Denis Jacquerye) +- added Ogham in Sans (by Wesley Transue) +- added Yijing Hexagram Symbols in Sans (by Wesley Transue) +- hinting instructions added to Cyrillic U+0460, U+04A6-U+04A7, U+04AC-U+04AD, + U+04C7-U+04C8, U+04F6-U+04F7, U+04FA-U+04FB, U+050C-U+050D in Sans Book (by + Wesley Transue) +- adjusted Cyrillic letters U+042A, U+044A, U+044C, U+0459-U+045B, U+0462, + U+048C-U+048D in Serif (by Andrey V. Panov) +- hinting instructions added to Lao U+0EB7 in Sans (by Wesley Transue) +- added Roman numerals and Claudian letter U+2160-U+2184 in Serif (by Ben + Laenen) +- added U+FFF9-U+FFFD to Sans, Serif and Mono (by Lars Næsbye Christensen) +- added mathematical symbols to Serif: U+2200, U+2203-U+2204, U+2213-U+2214, + U+2217-U+2218, U+2223-U+2226, U+2250-U+2255, U+2295-U+22AF, U+22C5 (by Ben + Laenen) +- modified bullet symbol U+2219 in Serif (by Ben Laenen) + +Changes from 2.20 to 2.21 + +- added U+FE20-U+FE23 (half diacritics) to Sans (by Denis Jacquerye) +- added anchor "half" to position right half of double marks, U+FE21 or U+FE23 + to Sans (by Denis Jacquerye) +- shifted U+0360 up to avoid collision with some outlines in Sans (by Denis + Jacquerye) +- added anchor above-mark anchor to U+035D, U+035E, U+0360, U+0361 in Sans (by + Denis Jacquerye) +- added instructions for ff, ffi, ffl ligatures in Serif Bold (by Eugeniy + Meshcheryakov) +- added instructions to some N'Ko glyphs (by Wesley Transue) +- added instructions to some Lao glyphs (by Wesley Transue) +- cleaning up 'liga' Standard Ligature in Latin, in Sans and Sans Mono (by + Denis Jacquerye) +- added U+046A, U+046B (big yus) in Serif (by Andrey V. Panov) +- added box drawing symbols to Sans and Serif (by Lars Næsbye Christensen) +- added Makefile to improve font and packages generating (by Nicolas Mailhot) + +Changes from 2.19 to 2.20 + +- removed TeX and TeXData tags from all sfd files (by Eugeniy Meshcheryakov) +- removed all 'frac' lookups (by Eugeniy Meshcheryakov) +- fixed duplicate glyph names (by Eugeniy Meshcheryakov) +- removed standard ligatures with U+00B7 in Mono (by Eugeniy Meshcheryakov) +- use reference to U+002D in U+00AD in Sans Oblique, and adjust instructions + (by Eugeniy Meshcheryakov) +- updated Cyrillic in Sans Extra Light (by Andrey V. Panov) +- added instructions to N'Ko U+07C1-U+07C6, U+07CA, U+07CE-U+07CF, U+07D1, + U+07D3-U+07D4, U+07D8, U+07DB and U+07EB in Sans (by Wesley Transue) +- added instructions to Lao U+0E8A, U+0E95, U+0E97, U+EA5, U+0EB4 and U+0EB5 + (by Wesley Transue) +- adjusted instructions for Hebrew glyphs (by Denis Jacquerye) +- added instructions for U+0265 in Sans Bold (by Denis Jacquerye) +- fix U+1D68 in Sans: it had the shape of delta, where it should be a rho (by + Ben Laenen) +- remove U+1D5C glyph in Sans Oblique (it was empty) (by Ben Laenen) +- fix instructions of U+01AD in Sans Bold (by Ben Laenen) +- fix instructions of U+042D in Serif (by Ben Laenen) +- remove buggy instructions of U+2328 in Serif (by Ben Laenen) +- corrected width of U+2C75-U+2C76 in Sans Bold and Serif Bold (by Gee Fung Sit) +- added U+2C75-U+2C77 to Mono (by Gee Fung Sit) + +Changes from 2.18 to 2.19 + +- fixed misplaced symbols (U+2325,2326) in Sans Oblique (by John Karp) +- added Mark to Base anchors: 'cedilla' for combining cedilla and + 'above-legacy' for stacking above precomposed glyphs (just a,e,i,o,u with + macron for now) in Sans (by Denis Jacquerye). +- added contextual substitution for Case and Dotless forms in all Sans variants + (by Denis Jacquerye). +- renamed 'ccmp' lookups for RTL and Basic (LGC, etc.) (by Denis Jacquerye) +- added anchor 'cedilla' for vowels in Sans. (by Denis Jacquerye) +- extended contextual dotless and case substitutions to handle both below and + above diacritics (by Denis Jacquerye) +- renamed Dotless and Case Form GSUB lookups in Sans with meaningful names (by + Denis Jacquerye) + +Changes from 2.17 to 2.18 + +- Re-encoded the source files for Full Unicode (by Ben Laenen) +- Re-enabled the "ff", "fl", "fi", "ffl", "ffi" ligatures by default in Serif + (by Ben Laenen) +- Disabled the "fi", "ffi" ligatures for languages with dotless i in Serif (by + Ben Laenen) +- added Tifinagh to Sans Book and Bold, U+2D30-U+2D65, U+2D6F, partially hinted + in Sans Book. (by Denis Jacquerye) +- added Tai Xuan Jing Symbols (U+1D300-1D356) to Sans (by Remy Oudompheng) +- added double-struck letters (U+1D538-U+1D56B minus reserved code points) to + Sans (by Gee Fung Sit) +- added U+22EE-U+22F1 to Sans (by Gee Fung Sit) +- added U+2C67-U+2C6C, U+2C75-U+2C77 to Serif (by Gee Fung Sit) +- italicized various glyphs in Latin Extended-B, IPA Extensions, Spacing + Modifier Letters, Phonetic Extension (Supplement) and Super- and Subscripts + in Serif Oblique fonts (by Gee Fung Sit) +- modified outlines, bearings of Hebrew U+05D6, U+05D8, U+05DB, U+05DE, U+05E0, + U+05E1, U+05E2, U+05EA in Sans Book and Oblique, adjusted hinting in Book + based on Yotam Benshalom's comments. (by Denis Jacquerye) +- added Braille Patterns (U+2800-U+28FF) to Serif fonts (by Gee Fung Sit) +- added N'Ko to Sans Book and Bold: U+07C0-U+07E7, U+07EB-U+07F5, U+07F8-U+07FA + (by Eugeniy Meshcheryakov) +- added U+0ED8 (Lao digit 8) to Sans (by Remy Oudompheng) +- added Lao diacritics U+0EB0-0EB9, U+0EBB-0EBC, U+0EC8-0ECD to Mono (by Remy + Oudompheng) +- renamed Serif [Bold] Oblique, make it Italic (by Eugeniy Meshcheryakov) +- added U+29FA-U+29FB to Sans and Sans Mono (by Gee Fung Sit) +- swapped glyphs for Eng U+014A from Sami Eng to African Eng, the latter being + more common (by Denis Jacquerye) +- swapped ae U+00E6 and ae.alt in Serif Italics fonts, thus fixing #8213 (by + Denis Jacquerye) +- minor improvements to Misc. Symbols in Sans (by Gee Fung Sit) +- minor improvements and additions to Sans ExtraLight (by Gee Fung Sit) +- improved instructions for various Cyrillic letters (by Eugeniy Meshcheryakov) +- fixed hinting of theta and chi in Sans Book (by Ben Laenen) +- added Georgian Mkhedruli to Sans, Serif and Mono, ASumtavruli to Sans and + Serif (by Besarion Gugushvili) + +Changes from 2.16 to 2.17 + +- Sans fonts: fix position for certain combinations of Arabic fatha, kasra, + shadda, damma, kasratan, dammatan, fathatan and hamza (by Ben Laenen) +- added 'ae.alt' to Serif Oblique fonts, with design matching shape of italic + 'a' instead of slanted 'a', see bug #8213 (by Denis Jacquerye) +- added super- and subscripts to Serif and Mono: U+1D2C-U+1D2E, U+1D30-U+1D3C, + U+1D3E-U+1D42, U+1D62-U+1D65, U+1D78, U+2071, U+207A-U+207E, U+208A-U+208E, + U+2090-U+2094 (by Gee Fung Sit) + +Changes from 2.15 to 2.16 + +- fixed hinting instructions for digits in DejaVu Sans Oblique, Bold Oblique, + and Serif Book to not change glyph width (by Eugeniy Meshcheryakov) +- added instructions for U+0404, U+0411, U+0413, U+0414, U+0417-U+041B, U+041F, + U+0423, U+0424, U+0426-U+0429, U+042C, U+042E, U+042F, U+0490 in Serif Bold + (by Eugeniy Meshcheryakov) +- added U+0220 and Eng.alt to Serif fonts (by Denis Jacquerye) +- added U+232C, U+2394, U+23E3 to Sans fonts (by John Karp) +- added U+230C-U+230F, U+231C-U+231F to Sans fonts, fixing bug:9547 + (by John Karp) +- adjusted dot below, dot above, dieresis above, dieresis below in Sans fonts + (by Denis Jacquerye) +- added U+2300, U+2301, U+2303, U+2304, U+2305, U+2307, U+2326, U+2327, U+232B, + arrow.base to Sans fonts (by John Karp) +- adjusted dot and dieresis below and above in Serif fonts (by Denis Jacquerye) +- added U+1E1C-U+1E1D to Serif fonts (by Denis Jacquerye) +- added U+22BE, U+22BF (by Wesley Transue) +- added U+2324; modified U+2325: more standard proportions, and matches U+2324 + and U+2387; added U+2387 : flipped U+2325 with standard arrowhead + (by John Karp) +- added Lao digits U+0ED0-0ED7, U+0ED9 (by Remy Oudompheng) +- added to Mono in Arabic block : U+060C, U+0615, U+061B, U+061F, + U+0621-U+063A, U+0640-0655, U+065A, U+0660-066F, U+0674, U+0679-0687, U+0691, + U+0692, U+0698, U+06A1, U+06A4, U+06A9, U+06AF, U+06B5, U+06BA, U+06BE, + U+06C6, U+06CC, U+06CE, U+06D5, U+06F0-06F9 (by Remy Oudompheng) +- added to Mono in Arabic Presentations Forms-A : U+FB52-FB81, U+FB8A-FB95, + U+FB9E, U+FB9F, U+FBAA-FBAD, U+FBE8, U+FBE9, U+FBFC-FBFF (by Remy Oudompheng) +- added to Mono in Arabic Presentations Forms-B : U+FE70-FE74, U+FE76-FEFC, + U+FEFF (by Remy Oudompheng) +- added U+05BA, U+05BE, U+05F3, U+05F4, U+FB1E, U+FB21-U+FB28, U+FB4F to Sans + (by Eugeniy Meshcheryakov) +- added U+2102 to Mono (by Eugeniy Meshcheryakov) +- added U+2983-U+2984 to Sans (by Gee Fung Sit) +- added U+2A2F to Sans, Serif and Mono (by Gee Fung Sit) +- added U+2373-2375, U+237A to Sans (by John Karp) +- converted kern pairs to kern classes with Tavmjong Bah's scripts + (by Denis Jacquerye) +- set ScriptLang of kerning classes to just latn because of Pango bug + (by Denis Jacquerye) +- added DNK to ScriptLang latn otherwise it is excluded, and SRB and MDK to + cyrl (by Denis Jacquerye) +- removed flag 0x80 in generate.pe, otherwise it generates kerning tables some + systems don't like; thus loosing Apple tables (by Denis Jacquerye) +- removed ligature for precomposed legacy characters of Sans Oblique fonts + (by Denis Jacquerye) +- added bearings to en dash U+2013, em dash U+2014 and figure dash U+2012 + by making dashes shorter, preserving character width (by Denis Jacquerye) +- reduced U+031C, U+0325 (ring below), U+0339 to be entirely visible; + added instructions in Sans Book; changed U+1e00-U+1e01 to use new ring below + (by Denis Jacquerye) +- adjusted circumflex below on U+1E12-U+1E13, U+1E18-U+1E19, U+1E3C-U+1E3D, + U+1E4A-U+1E4B, U+1E70-U+1E71, U+1E76-U+1E77 in Sans fonts (by Denis Jacquerye) +- Added U+0ED4, U+0ED5 to DejaVu Sans (by Remy Oudompheng) +- Lao-specific anchors (by Remy Oudompheng) +- added alternate I to match the small capital in Sans (by Gee Fung Sit) + +Changes from 2.14 to 2.15 + +- improved hinting in Sans Oblique to deal with some spacing and inconsistency + issues (by Ben Laenen) +- added anchors to Mono Book, and added GPOS rules for combining diacritics to + show up as zero width glyphs (by Ben Laenen) +- removed U+F21C (PUA), it was copy of U+2C64 from Latin Extended C (by Eugeniy + Meshcheryakov) +- added U+27E6-U+27E7 to Sans (by Gee Fung Sit) +- added U+1407, U+1409, U+140C-U+141B, U+141D-U+1425, U+1427-U+142E, + U+1435-U+1438, U+143A-U+1449, U+1452, U+1454, U+1457-U+1465, U+1467-U+146A, + U+1471, U+1474-U+1482, U+1484-U+1488, U+148F, U+1492, U+14A0, U+14A2, U+14A9, + U+14AC-U+14BA, U+14BC, U+14BD, U+14C6, U+14C9-U+14CF, U+14D1, U+14D2, U+14D9, + U+14DC-U+14E9, U+14EC, U+14F3, U+14F6-U+1504, U+1506, U+1507, U+1510-U+1525, + U+152C, U+152F-U+153D, U+1540, U+1541, U+154E, U+154F, U+1552, U+155B, U+155C, + U+1568, U+1569, U+1574-U+157B, U+157D, U+15A7-U+15AE, U+1646, U+1647 (by + Eugeniy Meshcheryakov) +- fixed several contours to not intersect, use horizontal or vertical tangents, + use integer coordinates, etc in Sans Book (by Denis Jacquerye) +- added U+0496-U+0497 in Serif (by Andrey V. Panov) + +Changes from 2.13 to 2.14 + +- added Philippine peso glyph U+20B1 (by Clayborne Arevalo) +- made U+2012 have the same width as digits, according to Unicode 5.0, + page 206 (by Roozbeh Pournader) +- made all of the "above" combining characters remove the dot of "i", + "j", etc (Soft_Dotted characters), according to Unicode 5.0, + page 228 (by Roozbeh Pournader) +- made U+012F, U+03F3, U+0456, U+0458, U+1E2D, and U+1ECB (all fonts + except Mono), U+0249, U+2148, and U+2149 (Sans and Sans Condensed), + U+0268 (Sans ExtraLight, Serif and Serif Condensed), and U+029D (Serif + and Serif Condensed) respect the Soft_Dotted property (by Roozbeh + Pournader) +- added U+223E, U+223F, U+2240, U+22C2, U+22C3 to Sans (by Remy Oudompheng) +- added U+203D to Serif (by Gee Fung Sit) +- added zero-width glyphs for U+2061-U+2063 to Sans and Serif (by Gee + Fung Sit) +- changed isolated forms of Arabic waw (U+0648, U+0624 and U+06C6) (bug #9432) + (by Ben Laenen) +- added Lao consonants U+0E81, U+0E82, U+0E84, U+0E87, U+0E88, U+0E8A, + U+0E8D, U+0E94-0E97, U+0E99-0E9F, U+0EA1-0EA3, U+0EA5, U+0EA7, U+0EAA, + U+0EAB, U+0EAD-0EAF to Sans Mono (by Remy Oudompheng) +- added U+0200-U+0217, U+0226-U+0229, U+02F3, U+1E00-U+1E07, + U+1E0A-U+1E0B, U+1E18-U+1E1F, U+1E22-U+1E23, U+1E28-U+1E2D, + U+1E3A-U+1E3B, U+1E40, U+1E48-U+1E49, U+1E56, U+1E58-U+1E59, + U+1E5E-U+1E5F, U+1E60, U+1E68-U+1E6B, U+1E6E-U+1E6F, U+1E72-U+1E77, + U+1E86-U+1E8B, U+1E92-U+1E96, U+1EA0-U+1EA1, U+1EF4-U+1EF5 to Mono + (by Ben Laenen) +- renamed uppercase variants of diacritics (macron, breve, double grave, + double acute, inverted breve, dot above) to "uni03XX.case" in Mono + (by Ben Laenen) +- moved uppercase variants of diacritics up in Mono so they properly + vertically align on capitals (by Ben Laenen) +- precomposed glyphs with macron, breve, double grave, double acute, + inverted breve, dot above, macron below, breve below, inverted breve + below, dot below, cedilla, caron below, circumflex below, diaeresis + below, tilde below now reference to combining diacritics instead of + space modifiers in Mono (by Ben Laenen) +- made ring below (U+0325), and half rings below (U+031C and U+0339) + smaller in Mono (by Ben Laenen) +- added U+205F to all fonts (by Roozbeh Pournader) +- added U+035E-U+035F to Sans (by Roozbeh Pournader) +- added empty glyphs for U+034F, U+202A-U+202E, U+2060, U+206A-206F, + U+FE00-U+FE0F to non-Mono fonts (by Roozbeh Pournader) +- added U+2101, U+2107-U+2108, U+210B, U+210C, U+2110, U+2112, U+211B, + U+211F, U+2123, U+2125, U+2128-U+2129, U+212C-U+212D, U+212F, + U+2130-U+2131, U+2133, U+2136-U+213A, U+2141-U+2144, U+2B00-U+2B11, + U+2B20-U+2B23 to Sans (by John Karp) +- reshaped omega (U+03C9) in Mono (by Ben Laenen) +- added U+2205, U+22C6, U+2300-U+2301, U+2303-U+2306, U+230C-U+230F, + U+2312-U+2315, U+231C-U+231F, U+2335, U+2337-U+233E, U+2341-U+2344, + U+2347-U+2348, U+234B-U+234D, U+2349-U+2350, U+2352-U+2354, + U+2357-U+2359, U+235A-U+235C, U+235E-U+2360, U+2363-U+2365, + U+2368-U+2369, U+236B-U+2370, U+2373-U+237A, U+2380-U+2383, + U+2388-U+238B, U+2395 in Mono (by Ben Laenen) + +Changes from 2.12 to 2.13 + +- adjusted U+0198B, U+01B3-U+01B4 in Sans, hinted U+01B4 in Sans Book + (by Denis Jacquerye) +- added U+27F0-U+27FF, U+2906-U+2907, U+290A-U+290B, U+2940-U+2941 to Sans + (by Denis Jacquerye) +- added U+01E6-U+01E9, U+01EE-U+01EF, U+01F4-U+01F5, U+01FC-U+01FF, + U+021E-U+021F, U+0245, U+02BD, U+02C9, U+1E9B, U+2045-U+2046, U+2213, U+22C5, + U+22EF to Sans Mono (by Roozbeh Pournader) +- added U+04FA-U+04FD to Sans (by Michael Everson) +- removed U+2329 and U+232A because of their CJK properties, added U+27E8 + and U+27E9 in their stead, fixing part of bug #9038 (by Roozbeh Pournader) +- corrected and improvised U+0466-U+0469, U+046E-U+0471, U+047C-U+047D, U+0482, + U+0484-U+0486, U+0492-U+0493, U+04B0-U+04B1, U+050C-U+050D, and U+204A + in Sans (by Michael Everson) +- added instructions for U+0402, U+0409, U+040A, U+040B, U+044D, U+040F, + U+0452, U+0459-U+045B, U+045F to Sans Book (by Eugeniy Meshcheryakov) +- made italic shape for U+431, U+432, U+437, U+43B, U+43C, U+43D, U+444, U+447, + U+44D, U+44F, U+459, U+45A in SerifOblique and SerifBoldOblique + (by Andrey V. Panov) +- modified U+024C to match glyph in Unicode chart, fixing bug #9039 + (by Denis Jacquerye) +- made some canonically equivalent characters share the same glyph: + U+02B9 = U+0374, U+0343 = U+0313, and U+0387 = U+00B7 also adjusting U+02BA + to look like double U+02B9, fixing parts of bug #9038 (by Roozbeh Pournader) +- changed shapes for U+0478 and U+0479 in Sans to those in the Unicode charts, + based on a recent decision by Unicode Technical Committee to only use + the digraph form (by Michael Everson) +- adjusted width of NBSP U+00A0 and NNBSP U+202F, fixing bug #8401 + (by Denis Jacquerye) +- fixed several contours to not intersect, use horizontal or vertical tangents, + use integer coordinates, etc (by Roozbeh Pournader and Denis Jacquerye) +- added U+1402, U+1430, U+144D, U+146C, U+148A, U+14A4, U+14C1, U+14D4, U+14EE, + U+1527, U+1545, U+157E, U+158E, U+15AF to Sans (by Eugeniy Meshcheryakov) +- enlarged width of U+459 and U+45A in Serif (by Andrey V. Panov) +- made traditional shape for U+452, U+45B (by Andrey V. Panov) +- added euro sign U+20AC to Sans ExtraLight, making fontconfig recognize + the font as supporting English (by Denis Jacquerye) + +Changes from 2.11 to 2.12 + +- added U+0180 to Serif (by Denis Jacquerye) +- improved and/or hinted Armenian letters U+0542, U+0546, U+0562, + U+0563, U+0564, U+0577, U+0582 in Sans (by Ben Laenen) +- added U+4FE-U+4FF, U+512-U+513, U+2114, U+214E, U+26B2 to Sans + (by Gee Fung Sit) +- adjusted U+0496-U+0497, U+049A-U+04A1 in Sans to match U+0416, + U+041A, U+0436 and U+043A (by Gee Fung Sit) +- Mathematical Operators in Sans: changed U+22C0-U+22C1 to match + other n-ary operators, adjusted U+2203-U+2204, changed U+2220 in + Sans to match the style of U+2221 (by Gee Fung Sit) +- added U+1401, U+1403-U+1406, U+140A, U+140B, U+1426, U+142F, + U+1431-U+1434, U+1438, U+1439, U+1449, U+144A, U+144C, + U+144E-U+1451, U+1455, U+1456, U+1466, U+146B, U+146D-U+1470, + U+1472, U+1473, U+1483, U+1489, U+148B-U+148E, U+1490, U+1491, + U+14A1, U+14A3, U+14A5-U+14A8, U+14AA, U+14AB, U+14BB, U+14C0, + U+14C2-U+14C5, U+14C7, U+14C8, U+14D0, U+14D3, U+14D5-U+14D8, + U+14DA, U+14DB, U+14EA, U+14ED, U+14EF-U+14F2, U+14F4, U+14F5, + U+1405, U+1526, U+1528-U+152B, U+152D, U+152E, U+153E, + U+1542-U+1544, U+1546-U+154D, U+1550, U+1553, U+1555-U+155A, + U+1567, U+156A, U+157C, U+157F-U+1585, U+158A-U+158D, + U+158F-U+1596, U+15A0-U+15A6, U+15DE, U+15E1, U+166E-U+1676 to + Sans (by Eugeniy Meshcheryakov) +- re-enabled Latin ligatures fi, ffi, fl, ffl and ff in Sans + (by Ben Laenen) +- made italic shape for U+436, U+44A, U+44B, U+44C, U+44E, U+45F, + U+463 in SerifOblique and SerifBoldOblique (by Andrey V. Panov) +- fixed sub- and superscript metrics in Condensed Sans (bug #8848) + (by Ben Laenen) +- added U+474, U+475 in Serif (by Andrey V. Panov) +- hinted Greek glyphs U+03B7, U+30B8, U+03B9, U+03C1, U+03C3, + U+03C6 in Mono Book (by Ben Laenen) + +Changes from 2.10 to 2.11 + +- added instructions for Hebrew glyphs (Sans Book, by Eugeniy + Meshcheryakov) +- changed U+01A6 (Latin Yr) after bug #8212, in Sans, Serif and + Sans Mono fonts (by Denis Jacquerye). +- removed instruction for U+2600-U+26A1 (by Mederic Boquien) +- added U+202F and set width of U+00A0 (nobreakingspace) to the + same as U+0020, space (by Denis Jacquerye). +- added and improved instructions for various Cyrillic letters + (by Eugeniy Meshcheryakov) +- Changed U+416, U+42F, U+427 (non-Bold), U+436, U+447 (non-Bold), + U+44F, U+437 (Bold), corrected U+40F, U+414, U+424, U+426, U+429, + U+434, U+438 (Bold), U+446, U+449, U+44D (non-Bold), U+45F in + Sans Mono (by Andrey V. Panov) +- made small corrections to Cyrillic, most appreciable to U+409, + U+413, U+41B, U+427 and U+433, U+434, U+43B, U+447, U+459 + (upright fonts) to Serif (by Andrey V. Panov) +- adjusted bearings of U+410, U+416, U+41A, U+42F, U+436, U+43A, + U+443, U+44F in Serif (by Andrey V. Panov) +- enlarged width of U+44A, U+44B, U+44C, U+463 in Serif + (by Andrey V. Panov) +- added ligature "iacute" as "afii10103" (U+456) "acutecomb" in + Serif (by Andrey V. Panov) +- made italic shape to U+446, U+448, U+449 in Serif (by Andrey V. + Panov) +- added "afii10831" (U+F6C7), "afii10832" (U+F6C8) in Serif (by + Andrey V. Panov) +- new minimum version of fontforge is 20061014 (by Ben Laenen) + +Changes from 2.9 to 2.10: + +- added U+0242, U+024A-U+024B, U+024E-U+024F, U+037C-U+037D, U+0E3F, + U+1D2C-U+1D2E, U+1D30-U+1D42, U+1D5D-U+1D6A, U+1D78, U+1DB8, + U+2090-U+2094, U+20D0-U+20D1, U+2C60-U+2C66, U+2C6B-U+2C6C, U+2C74 and + U+FB29 to Sans (by Gee Fung Sit) +- added Lao glyphs : U+0E81-0E82, U+E084, U+0E87-0E88, U+0E8A, U+0E8D, + U+0E94-0E97, U+0E99-0E9F, U+0EA1-0EA3, U+0EA5, U+0EA7, U+0EAA-0EAB, + U+0EAD-0EB9, U+0EBB-0EBD, U+0EC0-0EC4, U+0EC6, U+0EC8-0ECD, U+0EDC-0EDD + (by Remy Oudompheng) +- fixed U+0193 not showing in Windows (bug #7897) (by Ben Laenen) +- changes to U+222B-222D in Sans Mono (by Remy Oudompheng) +- ported the three remaining currency symbols from Arev (U+20B0, + U+20B2-U+20B3), and replaced one (U+20AF) in Sans (by Lars Naesbye + Christensen) +- corrected U+20A5 in Sans (by Gee Fung Sit) +- merged Double-Struck Letters from Arev: U+2102, U+210D, U+2115, + U+2119-U+211A, U+2124, U+213C-U+2140 (by Gee Fung Sit) +- added U+2308-U+230B and U+2329-U+232A to Sans Mono and Serif faces, + fixed incorrect direction of U+2329 in Sans faces, and improved + U+2308-U+230B in Sans faces per Ben Laenen's suggestions (by David + Lawrence Ramsey) +- added U+06D5 and final form of it (needed for Kurdish) (by Ben Laenen) +- added two special glyphs U+F000 and U+F001 in Sans Book that show the + current ppem size (horizontal and vertical) (by Ben Laenen) +- added U+2318 and U+2325 to Sans Mono faces, based on the Sans versions + (by David Lawrence Ramsey) +- added U+2B14-U+2B1A to all faces except Sans ExtraLight (by David + Lawrence Ramsey) +- respaced all Geometric Shapes characters in Serif faces to match those + in Sans faces again, respaced U+23CF in Sans, Sans ExtraLight, and + Serif faces to match U+25A0 (or Sans in Sans ExtraLight's case) again, + and respaced U+2B12-U+2B13 in Sans and Serif faces to match U+25A1 + again (by David Lawrence Ramsey) +- corrected width of Modifier Small Letters U+1D43-1D5B in Sans Oblique + and U+1D9B-U+1DBF in Sans Oblique and Sans Bold Oblique (by Gee Fung Sit) +- added a bunch of glyphs to Sans ExtraLight (see SVN for details) (by + Gee Fung Sit) +- adjusted Cyrillic descenders in Sans ExtraLight to sync with Sans (by + Gee Fung Sit) +- added U+0242, U+0245 to Serif (by Gee Fung Sit) +- replaced the SHPIX routines which gave them bad spacing at certain + sizes in FreeType for A, V, Z, v and z in Sans Bold (by Ben Laenen) + +Changes from 2.8 to 2.9: + +- DejaVuSansExtraLight.sfd: changed family name from "DejaVu Sans" to + "DejaVu Sans Light" (in case we add a Light weight variant), so legacy + apps that understand only 4 styles are happy. (by Denis Jacquerye) +- added Name ID 16, aka preferred family name, and Name ID 17, aka + preferred style name, so contemporary apps that understand more that 4 + styles can use big fonts families "DejaVu Sans" and "DejaVu Serif". For + those, Extralight and Condensed are just styles not different families. + (by Denis Jacquerye) +- added U+22B6-22BD, U+22C0-22C1, U+22D6-22D7 to Sans. (by Remy Oudompheng) +- added U+037B, U+2184, U+2C67-U+2C6A and U+2C75-U+2C77 to Sans (by Gee + Fung Sit) +- adjusted asteriskmath (U+2217) for consistency with other mathematical + operators in Sans (by Ben Laenen) +- hinted some Armenian capitals in Sans Book (by Ben Laenen) +- added U+0246 - U+0249 (by Ben Laenen) +- BUGFIX : swapped U+224E and U+224F, in Sans, Sans Condensed and Sans Mono + (by Remy Oudompheng) +- adjusted U+20B5 (by Mederic Boquien) +- swapped U+21DA and U+21DB which were in wrong order (by Heikki Lindroos) +- added U+222E-2233, U+239B-23AD, U+2A00-2A02, U+2A0F-2A1C to Sans (by Remy + Oudompheng) +- added U+239B-23AD to Mono (by Remy Oudompheng) +- added U+2024-2025 to Serif (by Mederic Boquien) +- added U+222C-222D, U+2A0C-2A0E to Serif (by Remy Oudompheng) +- added U+2190-21FF to Mono (by Heikki Lindroos) +- added Hebrew glyphs - U+05B0-U+05BD, U+05BF-U+05C3, U+05C6, U+05C7, + U+05D0-U+05EA, U+05F0-U+05F2, U+FB1F, U+FB20, U+FB2A-U+FB36, + U+FB38-U+FB3C, U+FB3E, U+FB40, U+FB41, U+FB43, U+FB44, U+FB46-U+FB4E (by + Gee Fung Sit and Eugeniy Meshcheryakov) +- adjustments for Cyrillic in Sans (by Andrey V. Panov) +- made italic shape for U+0434, U+0456, U+0457 in SerifOblique and Serif + Bold Oblique (by Andrey V. Panov) + +Changes from 2.7 to 2.8: + +- fixed instructions for U+0423, U+0427, U+0447, U+0448 in Serif, so they + look good at large sizes too (by Eugeniy Meshcheryakov) +- added U+FB00 and U+FB03 to U+FB06 to Serif typefaces (by Heikki Lindroos) +- added U+26B0-U+26B1, U+2701-U+2704, U+2706-U+2709, U+270C-U+2727, U+2729 + to U+274B, U+274D, U+274F to U+2752, U+2756, U+2758-U+275E, U+2761 to + U+2775 (by Heikki Lindroos) +- added and improved instructions for Cyrillic letters in Mono and Serif + (Book, by Eugeniy Meshcheryakov) +- rotated U+26B0 (was too small in mono) (by Gee Fung Sit) +- adjusted U+1EDA-U+1EDD, U+1EE8-U+1EEB, capitals using capital specific + accent and moved diacritics to match position on U+00F2 (ograve), etc. + (by Denis Jacquerye) +- added U+20D6, U+20D7 to Sans (by Gee Fung Sit) +- made Armenian ligatures discretionary since the Firefox ligature problem + still isn't fixed (by Ben Laenen) +- moved Armenian hyphen U+058A to a higher position (bug #7436) (by Ben + Laenen) +- hinted Greek glyphs in Sans Bold (by Ben Laenen) +- enabled Arabic lam-alif ligatures when diacritics are used (by Ben Laenen) + +Changes from 2.6 to 2.7: + +- added glyphs needed for Kurdish: U+0695, U+06B5, U+06C6, U+06CE and their + init/medi/fina forms in Sans (by Ben Laenen) +- added U+02CD, U+01F8 - U+01F9, U+1E3E - U+1E3F, U+1E30 - U+1E35, U+1EBC - + U+1EBD, U+1EF8 - U+1EF9 (includes glyphs needed for Yoruba, Maori, Guarani + and Twi) (by Ben Laenen) +- added U+22C8-22CC, U+29CE-29D5, U+2A7D-2AA0, U+2AAE-2ABA, U+2AF9-2AFA to + Sans (by Remy Oudompheng) +- adjusted diacritics on Vietnamese, Pinyin and other characters: + U+01A0-U+01A1, U+01AF-U+01B0, U+01D5-U+01DC, U+01DE-01E1, U+01FA-U+01FB + U+022A-U+022D, U+0230-U+0231, U+1E14-U+1E17, U+1E4C-U+1E53, U+1E78-U+1E7B, + U+1EA4-U+1EF1 in Sans (Book, Bold and Oblique) (by Denis Jacquerye) +- added basic arrows U+2190-U+2193 in Serif, which completes MES-1 compliance + for Serif (by Ben Laenen) +- added U+01E4, U+01E5, U+01FA, U+01FB, U+02BD, U+02C9 and U+02EE to Serif + (by Ben Laenen) +- fixed U+0209 in Serif Bold Oblique (by Ben Laenen) +- adjusted Box Drawing block characters U+2500-257F in Mono to fit character + cell, shifting them up by 416 (Denis Jacquerye) +- redid U+0194 in Sans (by Ben Laenen) +- added U+2217-2218, U+2295-22A1 to Mono (by Remy Oudompheng) +- added U+0462 to Serif (by Andrey V. Panov) +- added U+226C, U+228C-228E, U+2293-2294, U+22F2-22FF to Sans (by Remy + Oudompheng) +- adjusted U+2208-220D in Sans (by Remy Oudompheng) +- improved some Cyrillic glyphs in Mono (by Andrey V. Panov), rewritten + instructions for changed glyphs (by Eugeniy Meshcheryakov) +- added U+1E0E-1E0F, U+1E8E-1E8F to Mono fonts (by Denis Jacquerye). (bug + #7166) +- renamed 'Dotabove' to 'Dotaccent' in Mono Sans Oblique to match other fonts + (by Denis Jacquerye). +- added U+200B-U+200F in Sans faces and Serif faces, U+200B and U+200C were + in Sans already (by Lars Naesbye Christensen) +- added U+2601-U+262F, U+263D, U+263E, U+2648-U+265F, U+2668, U+2670-U+268B, + U+2690-U+269C, U+26A0, U+26A1, U+2794, U+2798-U+27AF, U+27B1-U+27BE to Mono + (by Heikki Lindroos) +- replaced the references with unshifted ones for both κ U+03BA and к U+043A + in Mono Book (by Denis Jacquerye) +- fixing glyph for U+04ED in Mono Book, consisted only of dieresis (by Andrey + V. Panov). + +Changes from 2.5 to 2.6: + +- redid U+2032 - U+2037, U+2057 based on Arev in Sans (by Gee Fung Sit) +- added U+0195, corrected U+039E, U+204B in Sans ExtraLight (by Gee Fung Sit) +- added instructions for some Cyrillic letters in Sans Bold (by Eugeniy + Meshcheryakov) +- added vulgar fractions U+2153-U+215F for Serif, made with references (by + Lars Naesbye Christensen) +- added U+228F-2292, U+2299-22AF, U+22B2-22B5, U+22CD, U+22D8-22ED to Sans + (by Remy Oudompheng) +- added U+2208-220D, U+2238-223D, U+2278-2281, U+228A-228B, U+228F-2292, + U+22CD, U+22DA-22E9 to Mono (by Remy Oudompheng) +- fixed misplaced dot in U+2250 in Mono (by Remy Oudompheng) +- added instructions for some Cyrillic letters in Mono Book and Bold(by + Eugeniy Meshcheryakov) +- minor changes to U+2241, U+2261-2263, U+22A4, U+22A5 in Sans (by Remy + Oudompheng) +- added hinting instructions to lowercase Armenian glyphs in Sans Book (by + Ben Laenen) +- changed U+2208, U+220B to match U+2209 and U+220C in Sans Bold (by Remy + Oudompheng) +- added Braille patterns U+2800-U+28FF to Sans (by Mederic Boquien) +- added instructions for some Cyrillic letters in Serif Book (by Eugeniy + Meshcheryakov) +- renamed BoldOblique fonts to Bold Oblique in TTF Name as originally in + Bitstream Vera fonts (by Denis Jacquerye) +- added hinting instructions to some Latin-B Extended and IPA characters in + Sans Book (by Denis Jacquerye and Ben Laenen) +- adjusted bearings, replaced diacritics, hinted hook and horn for + Vietnamese in Sans Book (by Denis Jacquerye) +- made FAX, TM, TEL, etc. discritionary ligatures in Sans and Serif fonts + (by Denis Jacquerye) +- removed ligatures of precomposed characters in Sans and Serif fonts (by + Denis Jacquerye) +- added U+F208, U+F20A, U+F215-F217, U+F21A-F21B, U+F25F in PUA (from SIL's + PUA, probably in Unicode 5.0): U+0243, U+0244, U+0245, U+024C, U+024D, + U+2C64, (U+2C6D), (U+2C71) +- modified some glyphs in Serif Oblique to make them more italic (by Denis + Jacquerye) + +Changes from 2.4 to 2.5: + +- fixed excessive kerning bug that occurs with Pango (by Denis Jacquerye) +- added U+20AF to Sans and Serif (by Lars Naesbye Christensen) +- regenerated Condensed faces (by Ben Laenen) +- added U+035C-U+035D to Sans, fixed U+0361 (by Denis Jacquerye) +- integrated 255 characters from Arev fonts: Latin Extended-B, Spacing + Modifiers, Combining Diacritical Marks, Cyrillic, Cyrillic supplement, + General Punctuation, Letterlike Symbols, Arrows, Mathematical Operators, + Miscellaneous Technical, Dingbats, Alphabetic Presentation Forms (by Denis + Jacquerye) +- added basic Cyrillic and basic Greek to Sans ExtraLight (by Denis Jacquerye) +- added U+0498, U+049A, U+04AA, U+04AB, U+04AF to Serif (by Eugeniy + Meshcheryakov) +- added U+0494, U+0495, U+0498, U+0499, U+04AA, U+04AB, U+04C3, U+04C4, + U+04C7, U+04C8 to Mono (by Eugeniy Meshcheryakov) +- adjusted weight of U+0256, U+0257, U+0260, U+0272, U+0273, U+0277, U+029B, + U+02A0 and modifed U+028B and U+027A in Mono (by Denis Jacquerye) +- added U+2000-200A to Mono (by Denis Jacquerye) +- added vulgar fractions U+2153 - U+215F to Mono (by Gee Fung Sit) +- adapted metrics of Arabic glyphs so they stay above cut-off height in Sans + (by Ben Laenen) +- fixed mkmk anchors for Arabic diacritics so they stack properly in Sans (by + Ben Laenen) +- fixed weight of lowercase upsilon in Sans Bold, make small adjustment to + lowercase omega in Sans (by Ben Laenen) +- added U+210E (by Mederic Boquien) +- unslanted U+2201, U+221B and U+221C in Sans Oblique (by Mederic Boquien) +- added several mathematical relation symbols to Sans and Mono (U+2241-224C, + U+2250-2255, U+2260-2269, U+226E-2277, U+2282-2287) modified U+223C to match + other tildes, and U+2282-2284 to have the same shape. (by Remy Oudompheng) +- made U+2234-U+2237 refer to U+2219 instead of U+00B7 in Sans (by Mederic + Boquien) +- added U+2238-223B, U+226A-226B, U+2278-2281, U+2288-228B to Sans (by Remy + Oudompheng) +- unslanted and changed reference of U+22C5 from U+00B7 to U+2219 in Sans (by + Mederic Boquien) +- added U+224D-225F, U+226D, U+22C6 to Sans and unslanted U+2219 in Sans + Oblique. (by Remy Oudompheng) +- added U+224D-225F, U+226D to Mono, shifted U+2266-2269 higher upwards and + unslanted U+2219 in Oblique. (by Remy Oudompheng) +- merged Coptic glyphs from Arev 0.2 (by Lars Naesbye Christensen) +- fixed and adjusted various Cyrillic glyphs in Serif (by Andrey V. Panov) +- made fi, fl... ligatures discretionary ligatures (by Ben Laenen) + +Changes from 2.3 to 2.4: + +- added U+04A2, U+04A3, U+04AC - U+04AF, U+04BA, U+04BB, U+04C0 - + U+04C2, U+04CB, U+04CD, U+04D8 - U+04DF, U+04E2 - U+04E5, U+04E8 - U+04F5, + U+04F6 - U+04F9 to Mono (by Eugeniy Meshcheryakov) +- added U+048C, U+048D, U+0494, U+0495, U+049E - U+04A7, U+04AC - + U+04AE, U+04B4- U+04B7, U+04BA, U+04BB, U+04C0 - U+04C4, U+04C7, U+04C8, + U+04CB, U+04CC, U+04D8 - U+04DF, U+04E2 - U+04E5, U+04EC - U+04F9 to Serif + (by Eugeniy Meshcheryakov) +- added U+2134 to Sans (by Gee Fung Sit) +- added U+2080 - U+2089 to all faces (by Gee Fung Sit) +- several minor corrections to Sans (by Gee Fung Sit) +- major corrections to Sans Condensed (by Gee Fung Sit) +- corrected Superscripts and Subscripts in Sans (by Gee Fung Sit) +- corrected anchors of U+0316-U+0319 (by Denis Jacquerye) +- Verajja integrated (by Stepan Roh) +- copied U+2328, U+2600, U+2639-U+263C, U+263F-U+2647, U+2660-U+2667, + and U+2669-U+266F from Sans to Serif, and copied scaled-down versions of + them to Sans Mono (by David Lawrence Ramsey) +- added U+20B4 to all faces (by Eugeniy Meshcheryakov) +- added more minor positional adjustments to U+2638 in all faces to + match the other miscellaneous symbols in Verajja, and rescale it in Sans + Mono so that it looks better (by David Lawrence Ramsey) +- added U+2242, U+2243 and U+22A4 (by Mederic Boquien) +- corrected U+2245 in Sans (by Mederic Boquien) +- added U+0221, U+0234-0236 (by Denis Jacquerye) +- added in Arabic block to Sans: U+060C, U+0615, U+061B, U+061F, U+0621 +- U+063A, U+0640 - U+0655, U+0660 - U+066F, U+0679 - U+0687, U+0698, U+06A1, + U+06A9, U+06AF, U+06BA, U+06BF, U+06CC, U+06F0 - U+06F9 (by Ben Laenen) +- added in Arabic Presentation Forms A to Sans: U+FB52 - U+FB81, U+FB8A +- U+FB95, U+FB9E - U+FB9F, U+FBE8 - U+FBE9, U+FBFC - U+FBFF (by Ben Laenen) +- added complete Arabic Presentation Forms B to Sans: U+FE70 - U+FE74, + U+FE76 - U+FEFC, U+FEFF (by Ben Laenen) +- added complete Greek Extended block to Mono (by Ben Laenen) +- modified Greek capitals with tonos in Mono (by Ben Laenen) +- added U+01C4-01CC, U+01D5, U+01DE, U+01E0-U+01E1, U+01E6-U+01E9, + U+01EE-U+01F5, U+01F8-U+0217, U+021E-U+021F, U+0226-U+022A, U+022C to Serif + (by Denis Jacquerye) +- adjusted U+043B and U+044F in Serif (by Denis Jacquerye) +- added U+2000-U+200A (by Denis Jacquerye) +- added U+1E00-U+1E0B, U+1E0E-U+1E11, U+1E14-U+1E1C, U+1E1E-U+1E23, + U+1E26-U+1E2D, U+1E30-U+1E35, U+1E3A-U+1E3B, U+1E3E-U+1E40, U+1E48-U+1E49, + U+1E50-U+1E56, U+1E58-U+1E59, U+1E5E-U+1E60, U+1E68-U+1E6B, U+1E6E-U+1E6F, + U+1E72-U+1E7D, U+1E86-U+1E9B, U+1EA0-U+1EA3, U+1EAC-U+1EB7, U+1EBA-U+1EBD, + U+1EC6-U+1ECF, U+1ED8-U+1ED9, U+1EE6-U+1EE7, U+1EF4-U+1EF9 to Serif (by + Denis Jacquerye) +- added U+048E, U+048F, U+049C-U+049F, U+04B8, U+04B9, U+04BC-U+04BF, + U+04C3, U+04C4 to Sans (by Eugeniy Meshcheryakov) +- added DejaVu Sans Extra Light (by Denis Jacquerye) +- Adjusted underline position for (hopefully) improved legibility in + Sans, Serif, Mono (Tim May) +- added auto-generated DejaVu LGC (by Stepan Roh) + +Changes from 2.2 to 2.3: + +- fixed bug U+042B and U+044B behave badly in Sans Bold or Oblique (by + Keenan Pepper) +- added and improved TrueType instructions and related settings (by + Keenan Pepper) +- added U+04D0-U+04D7, U+04E6, U+04E7 to Mono (by Eugeniy Meshcheryakov) +- added U+048A - U+048D, U+0498, U+0499, U+04AA, U+04AB, U+04B0, U+04B1, + U+04C0, U+04C9, U+04CA, U+04CE, U+04CD, U+04DA, U+04DB, U+04DE, U+04DF, + U+04E2 - U+04E5, U+04EC - U+04F8, U+04F9 to Sans (by Eugeniy Meshcheryakov) +- added U+04E0, U+04E1 to all faces (by Eugeniy Meshcheryakov) +- added Greek Extended to Sans and Serif: U+1F00-U+1F15, U+1F18-U+1F1D, + U+1F20-U+1F45, U+1F48-U+1F4D, U+1F50-U+1F57, U+1F59, U+1F5B, U+1F5D, + U+1F5F-U+1F7D, U+1F80-U+1FB4, U+1FB6-U+1FC4, U+1FC6-U+1FD3, U+1FD6-U+1FDB, + U+1FDD-U+1FEF, U+1FF2-U+1FF4, U+1FF6-U+1FFE (by Ben Laenen) +- added Greek variant letterforms, archaic letters and symbols to Mono: + U+03D0-U+03E1, U+03F0-U+03FF (by Ben Laenen) +- added Armenian block and Armenian ligatures to Sans (U+0531 - U+0556, + U+0559 - U+055F, U+0561 - U+0587, U+0589 - U+058A, U+FB13 - U+FB17) (by Ben + Laenen) +- redid some Greek characters in Sans and Mono to make them look better + and to correct some errors (by Ben Laenen) +- added U+27E0 to all faces (by David Lawrence Ramsey) +- added underscore (U+005F) consistency fixes: extended the Sans Mono + and Sans Mono Oblique underscores to touch both horizontal edges, and + reduced the height of the Sans Bold Oblique underscore to match the Sans + Bold underscore (by David Lawrence Ramsey) +- added underscore (U+005F) derivatives and consistency fixes for them: + made U+0332 a reference to underscore at Denis Jacquerye's suggestion; made + U+0333 two references to underscore; made U+033F two references to U+203E; + added U+2017 as two references to underscore, and made U+0333 a reference to + it; and added U+203E as a reference to underscore, and made U+0305 a + reference to it (by David Lawrence Ramsey) +- added U+201B, U+2220, U+2320-U+2321, U+23AE, U+23CF, all remaining + Geometric Shapes glyphs (U+25A0-U+25C9, U+25CB-U+25D7, U+25D9-U+25E5, + U+25E7-U+25FF), and U+2B12-U+2B13 to all faces (by David Lawrence Ramsey) +- added minor positional adjustments to U+2638 in all faces (by David + Lawrence Ramsey) +- added U+201F to Sans Mono and Serif faces (by David Lawrence Ramsey) +- added U+01B7, U+01F6, U+0464 - U+0465, U+2160 - U+2180, U+2183, + U+220A, U+220D, U+2329, U+232A, U+2422, U+27E8 - U+27EB, U+2680 - U+2685 to + Sans (by Gee Fung Sit ???) +- added U+2116 to Sans and Serif (by Gee Fung Sit) +- changed florin sign U+0192 in Sans (by Gee Fung Sit) +- added anchor points to some glyphs (by Denis Jacquerye) +- adjusted height of IPA superscripts U+02B0-02B8, U+02C0-02C1, + U+02E0-02E4, U+207F to match with height of U+00B2 (by Denis Jacquerye) +- added U+0184-U+0185, U+019C, U+019F, U+01A0-U+01A3, U+01A6, U+01AA, + U+01AF-U+01B0, U+01B2-U+01B4, U+01B7-U+01B8, U+01BC-U+01BC, U+0224-U+0225, + U+023A-U+0240, U+1D16-U+1D17, U+1D1D-U+1D1E, U+1D43-U+1D5B, U+1D7B, + U+1D85,U+1D9B-1DB7, U+1DB9-U+1DBF, U+20A6 to all fonts (by Denis Jacquerye) +- added added U+0182, U+018B, U+018E, U+01A0-U+01A1, U+01B1, U+01B9, + U+01C0-U+01C3, U+0238-U+0239, U+1D02, U+1D08-U+1D09, U+1D14, U+1D1F, U+1D77 + to Serif and Mono (by Denis Jacquerye) +- added U+0181, U+0183, U+0187-U+0188, U+018A-U+018F, U+0191, U+0193, + U+0195-U+019B, U+019D-U+019E, U+01A4-U+01A5, U+01AC-U+01AE, U+01B5-U+01B6, + U+01B9, U+01BB, U+01F6 to Serif (by Denis Jacquerye) +- added U+0181, U+0187-U+0188, U+018A, U+018D, U+018F, U+0191, U+0193, + U+0195-U+019F, U+01A4-01A5, U+01AC-01AD, U+01B5-U+01B6, U+1BB, U+01F6, + U+01D7-U+01DC, U+0238-U+0239, U+0241 to Mono (by Denis Jacquerye) +- added to Mono and Serif (by Denis Jacquerye) + +Changes from 2.1 to 2.2: + +- reworked the vertical orientation of the Blocks Elements characters + in all faces to remove their overly large descenders, in order to fix + problems with e.g. terminal emulators (by David Lawrence Ramsey) +- copied bullet in Sans faces to Serif faces for consistency (by David + Lawrence Ramsey) +- added U+2023, U+25D8, U+25E6, and U+29EB to all faces (by David + Lawrence Ramsey) +- added U+1EB8, U+1EB9, U+1ECA - U+1ECD, U+1EE4, U+1EE5 (by Tim May) +- added U+01DD, U+02BE, U+02BF, U+02D3 to all, changed U+02D2 in + non-Condensed and U+1EE5 in Serif (by Tim May) +- fixed U+01CE, replacing wrong circumflex by caron (by Denis Jacquerye) +- added anchor points to some glyphs (by Denis Jacquerye) +- added U+20B5 (by Denis Jacquerye) +- added U+0181 - U+0183, U+0187, U+0188, U+018A - U+018D, U+0191, + U+0193, U+0195 - U+019B, U+019D, U+019E, U+01A4, U+01A7 - U+01A9, U+01AB - + U+01AE, U+01B1, U+01B5, U+01B6, U+01BB, U+01C0 - U+01C3, U+01F1 - U+01F3, + U+0238, U+0239, U+1D02, U+1D08, U+1D09, U+1D14, U+1D1F, U+1D77, U+2103, + U+2126, U+2127, U+212A, U+212B, U+2132, U+214B, U+2210, U+2217, U+2218, + U+2A0C - U+2A0E, U+FB00, U+FB03 and U+FB04 to Sans (by Gee Fung Sit) +- added U+01A9, U+01C3 and U+2126 to Mono and Serif (by Gee Fung Sit) +- adjusted bearings of U+028B in Sans (by Gee Fung Sit) +- added U+018F, U+0494-U+0497, U+04A0-U+04A7, U+04AC-U+04AF, + U+04B4-U+04B7, U+04BA-U+04BB, U+04C1-U+04C2, U+04C5-U+04C8, U+04CB-U+04CC, + U+04D0-U+04D9, U+04DC-U+04DD, U+04E6-U+04EB to Sans (by Eugeniy + Meshcheryakov) +- replaced with references U+0391-U+0393, U+0395-U+0397, U+0399, U+039A, + U+039C, U+039D, U+039F-U+03A1, U+03A4, U+03A5, U+03A7, U+03BF, U+03DC, + U+0405, U+0406, U+0408, U+0410, U+0412, U+0415, U+0417, U+041A, + U+041C-U+041E, U+0420-U+0422, U+0425, U+0430, U+0435, U+043E, U+0440, + U+0441, U+0443, U+0445, U+0455-U+0458 in Serif and Mono (by Eugeniy + Meshcheryakov) +- added U+04D0-U+04D7, U+04E6-U+04EB to Serif (by Eugeniy Meshcheryakov) +- added U+212A and U+212B to the rest of the faces (by Lars Naesbye + Christensen) +- added U+2318 and U+2325 to Sans and Serif (by Lars Naesbye Christensen) +- added and improved TrueType instructions and related settings (by + Keenan Pepper) +- completed basic Greek alphabet: added U+0374-U+0375, U+037A, U+037E, + U+0384-U+038A, U+038C, U+038E-U+0390, U+03AC-U+03BF, U+03C1-U+03CE (by Ben + Laenen) +- added U+2070 and U+2074-U+2079 (by Mederic Boquien) + +Changes from 2.0 to 2.1: + +*** Be aware that names of some TTF files changed since version 2.0. *** + +- added U+0323, U+1E0C, U+1E0D, U+1E24, U+1E25, U+1E36 - U+1E39, U+1E42, + U+1E43, U+1E46, U+1E47, U+1E5A - U+1E5D, U+1E62, U+1E63, U+1E6C, U+1E6D, + U+1E7E, U+1E7F (by Tim May) +- fixed bug where GNOME applications used Mono Bold Oblique instead of + Mono Oblique (by Keenan Pepper) +- added and improved TrueType instructions and related settings (by + Keenan Pepper) +- added U+1E41, U+1E57, U+1E61 (by Sander Vesik) +- added U+0189, U+0309, U+0313, U+0314, U+031A, U+031B, U+0327, U+0328, + U+032B, U+0333, U+033C (by Denis Jacquerye) +- adjusted and fixed U+0186, U+0254, U+0291, U+0316 - U+0319, U+031C - + U+0320, U+0323 - U+0326, U+0329 - U+032A, U+032C - U+0332, U+0339 - U+033B, + U+033E, U+033F (by Denis Jacquerye) +- fixed U+1E12, U+1E3C, U+1E4A, U+1E70 to have normal below diacritics + (by Denis Jacquerye) +- fixed U+1E82, U+1E84 and U+1EF2 to have uppercase above diacritics (by + Denis Jacquerye) +- added anchor points to some glyphs (by Denis Jacquerye) +- dropped "-Roman" from font names - affects both internal TTF names and + names of generated files (by Stepan Roh) +- attempt to fix bug Vertical spacing too big for Mono by exchanging + LineGap and OS2TypoLinegap values (proofed by Stefan Rank) +- added Greek capitals U+0391 - U+03A1, U+03A3 - U+03A9, U+03AA, U+03AB + in Mono (by Ben Laenen) +- added the per ten thousand sign U+2031 (by Mederic Boquien) +- added U+2207, U+221D, U+221F, U+2227 - U+222A, and U+2261 (by David + Lawrence Ramsey) +- new logo (by Gee Fung Sit) +- added U+0180, U+018E, U+201F, U+2024, U+2025, U+203D, U+2200, U+2203, + U+2213, U+222C, U+222D, U+2263 to Sans (by Gee Fung Sit) + +Changes from 1.15 to 2.0: + +- "Italized" basic glyphs in all Serif Oblique and their Condensed faces + (by David Jez) +- added and improved TrueType instructions and related settings (by Keenan + Pepper) +- added anchor points to some glyphs (by Denis Jacquerye) +- many new spacing and combining accents (by Denis Jacquerye) +- smart substitutions for transforming i and j to dottless form and for + using uppercase diacritics (by Denis Jacquerye) +- fixed remaining erroneously slanted characters in Serif Oblique faces (by + David Lawrence Ramsey) +- copied bullet in Sans faces to Sans Oblique faces for consistency (by + David Lawrence Ramsey) +- added U+203C and U+2047-U+2049 (by David Lawrence Ramsey) +- added Greek glyphs to Serif (by Ben Laenen, Condensed merge by David Jez) +- fixed bug LTR glyphs behaving like RTL (by Ben Laenen) +- fixed wrong glyph directions (by David Jez) +- fixed repositioned accents in Condensed faces (by David Jez) + +Changes from 1.14 to 1.15: + +- added and improved TrueType instructions and related settings (by Keenan + Pepper) +- fixed U+2302, U+2319 (by David Lawrence Ramsey) +- fixed yet another monospace bug (by Stepan Roh) +- fixed potential "too big ascender/descender" bug (by Stepan Roh) +- fixed U+026E and U+028E (by Denis Jacquerye) +- added U+0186, U+0190, U+0300 - U+0304, U+0306 - U+0308, U+030A - U+030C, + U+0321, U+0322 (by Denis Jacquerye) +- added rest of Block Elements: U+2591 - U+2593 (by David Lawrence Ramsey) +- added U+2311, U+237D and U+2638 (by David Lawrence Ramsey) +- added U+01CD - U+01D4 (by Denis Jacquerye) +- fixed accents of U+00F2 - U+00F6 by replacing them with references in Mono + Bold (by David Jez) +- added U+0490, U+0491 (by Eugeniy Meshcheryakov) +- added hints to U+0404 and U+0454 in Sans (by Eugeniy Meshcheryakov) +- completed Greek glyphs from U+0370 to U+03CF in Serif (by Ben Laenen) +- fixed shape of U+0255 in Sans Bold and Sans Bold Oblique (by Denis + Jacquerye) + +Changes from 1.13 to 1.14: + +- fixed bug where Mono faces were not recognized as fixed pitch in Windows + by correcting Venda glyphs (by David Jez) +- added and improved TrueType instructions (by Keenan Pepper) +- added 6 Uzbekian glyphs (by Mashrab Kuvatov) +- added Greek glyphs to Sans and Serif, changed pi and omega to fit in (by + Ben Laenen) +- added IPA and related superscript glyphs (by Denis Jacquerye) +- fixed buggy Venda glyphs (by David Lawrence Ramsey and Stepan Roh) +- added U+2302, U+2310, U+2319 (by David Lawrence Ramsey) +- fixed slanted U+00AC in Serif Oblique faces (by David Lawrence Ramsey) +- added 29 glyphs from Block Elements (by David Lawrence Ramsey) + +Changes from 1.12 to 1.13: + +- removed all stems (PS hints) (requested by David Jez) +- added U+01D6, U+01DF, U+022B, U+022D and U+0231 (by Sander Vesik) +- added 10 Venda glyphs (by Dwayne Bailey) +- fixed bug when fonts had no name on Microsoft Windows (by Stepan Roh) +- updated 'missing' glyph U+FFFD (by David Jez) +- set TTF flag fsType to 'Installable Embedding' (= unrestricted usage) + (idea by C. Tiffany) + +Changes from 1.11 to 1.12: + +- added long s (by James Cloos) +- prettier comma accent in gcommaaccent (by David Jez) +- added Hbar, hbar, kgreenlandic, napostrophe, Eng, eng, Tbar, tbar, + afii57929 (by David Jez) +- changed Iogonek, iogonek, IJ, ij to look better (by David Jez) +- glyph uni0237 renamed to dotlessj (requested by David Jez) +- fixed accents for dcaron, lcaron, tcaron, Uogonek, uogonek in Serif (by + David Jez) +- added U+2500 - U+257F box drawing glyphs to Sans Mono (by David Jez) +- fixed accents in Wcircumflex, Ycircumflex and Zdotaccent (by David Jez) +- extra kerning for F (by Sander Vesik) +- added 'missing' glyph U+FFFD (by David Jez) + +Changes from 1.10 to 1.11: + +- kerning updates (by Sander Vesik) +- added Iogonek, iogonek, IJ, ij, Uogonek, uogonek (from SuSE standard fonts + by Adrian Schroeter, SuSE AG) +- added Gcommaaccent, gcommaaccent, Kcommaaccent, kcommaaccent, + Lcommaaccent, lcommaaccent, Ncommaaccent, ncommaaccent, Rcommaaccent, + rcommaaccent (by Stepan Roh) + +Changes from 1.9 to 1.10: + +- added U+022E, U+022F (by Sander Vesik) +- kerning updates for DejaVu Sans (by Sander Vesik) +- fixed too wide cyrillic glyphs in DejaVu Sans Mono (by Valentin Stoykov) +- fixed ligatures bug in Mono (by Stepan Roh) + +Changes from 1.8 to 1.9: + +- integrated Arev Cyrillics (by Danilo Segan) +- added U+01EA, U+01EB, U+01EC, U+01ED (by Sander Vesik) + +Changes from 1.7 to 1.8: + +- fixed accents in Serif Oblique and Serif Bold Oblique (by Stepan Roh) + +Changes from 1.6 to 1.7: + +- added automatically generated Condensed typefaces (by Stepan Roh) + +Changes from 1.5 to 1.6: + +- monospace bug fixed (by Stepan Roh) +- incorrect Bitstream foundry assigned by fontconfig and KDE Font Installer +fixed (by Stepan Roh) +- added automatically generated Oblique version of Serif typefaces (by +Stepan Roh) +- corrected cyrillic D and d (by Danilo Segan and David Jez) +- fixed accents position in Oblique version of Serif typefaces (by Danilo +Segan and Sander Vesik) +- fixed incorrect computation of OS2Win* fields (by Stepan Roh) +- added visiblespace U+2423 (by David Jez) +- fixed 'line height' bug by fixing ascender and descender values (by David +Jez and Stepan Roh) +- fixed part of 'worse than Vera' bug (by Peter Cernak) +- smaller comma accent U+0326 (by David Jez) + +Changes from 1.4 to 1.5: + +- added Cyrillics (96 characters) and Dcroat to the rest of typefaces (by +Danilo Segan) +- fixed bugs in some Cyrillic characters, some of them reported by Sander +Vesik (by Danilo Segan) +- added U+0100, U+0101, U+0112, U+0113, U+012A, U+012B, U+014C, U+014D, +U+016A, U+016B, U+01E2, U+01E3, U+0232 and U+0233 (by Sander Vesik) +- added Romanian characters (by Misu Moldovan) +- added U+0108, U+0109, U+010A, U+010B, U+0114, U+0115, U+0116, U+0117, +U+011C, U+011D, U+0120, U+0121, U+0124, U+0125, U+0128, U+0129, U+012C, +U+012D, U+0134, U+0135, U+014E, U+014F, U+0150, U+0151, U+015C, U+015D, +U+0168, U+0169, U+016C, U+016D, U+0170, U+0171 and U+0237 (by James +Crippen) +- added U+02BB, U+2010, U+2011, U+2012 and U+2015 (by Stepan Roh) + +Changes from 1.3 to 1.4: + +- added Polish characters (Aogonek, aogonek, Eogonek, eogonek, Nacute, +nacute, Sacute, sacute, Zacute, zacute, Zdotaccent, zdotaccent) (by Stepan +Roh) + +Changes from 1.2 to 1.3: + +- added Cyrillics (96 characters) and Dcroat to Sans typefaces (by Danilo +Segan from his BePa fonts) + +Changes from 1.1 to 1.2: + +- added Ldot, ldot, Wcircumflex, wcircumflex, Ycircumflex, ycircumflex, + Wgrave, wgrave, Wacute, wacute, Wdieresis, wdieresis, Ygrave and ygrave + (from The Olwen Font Family 0.2 by Dafydd Harries) + +Changes from 1.0 to 1.1: + +- added Lacute, lacute, Lcaron, lcaron, Racute and racute (by Peter Cernak) + +Changes from 0.9.4 to 1.0: + +- none, just changed version and updated README + +Changes from 0.9.3 to 0.9.4: + +- fixed TTF generation (kerning tables were missing) + +Changes from 0.9.2 to 0.9.3: + +- kerning of added characters +- proper caron shape for dcaron in Mono (by Ondrej Koala Vacha) +- minor visual changes + +Changes from 0.9.1 to 0.9.2: + +- internal bugged version + +Changes from 0.9 to 0.9.1: + +- proper caron shape for dcaron and tcaron +- minor visual changes + +$Id: NEWS 2423 2010-08-22 15:48:31Z moyogo $ diff --git a/libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/README b/libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/README new file mode 100644 index 000000000..b5d944069 --- /dev/null +++ b/libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/README @@ -0,0 +1,59 @@ +DejaVu fonts 2.32 (c)2004-2010 DejaVu fonts team +------------------------------------------------ + +The DejaVu fonts are a font family based on the Bitstream Vera Fonts +(http://gnome.org/fonts/). Its purpose is to provide a wider range of +characters (see status.txt for more information) while maintaining the +original look and feel. + +DejaVu fonts are based on Bitstream Vera fonts version 1.10. + +Available fonts (Sans = sans serif, Mono = monospaced): + +DejaVu Sans Mono +DejaVu Sans Mono Bold +DejaVu Sans Mono Bold Oblique +DejaVu Sans Mono Oblique +DejaVu Sans +DejaVu Sans Bold +DejaVu Sans Bold Oblique +DejaVu Sans Oblique +DejaVu Sans ExtraLight (experimental) +DejaVu Serif +DejaVu Serif Bold +DejaVu Serif Bold Italic (experimental) +DejaVu Serif Italic (experimental) +DejaVu Sans Condensed (experimental) +DejaVu Sans Condensed Bold (experimental) +DejaVu Sans Condensed Bold Oblique (experimental) +DejaVu Sans Condensed Oblique (experimental) +DejaVu Serif Condensed (experimental) +DejaVu Serif Condensed Bold (experimental) +DejaVu Serif Condensed Bold Italic (experimental) +DejaVu Serif Condensed Italic (experimental) + +All fonts are also available as derivative called DejaVu LGC with support +only for Latin, Greek and Cyrillic scripts. + +For license information see LICENSE. What's new is described in NEWS. Known +bugs are in BUGS. All authors are mentioned in AUTHORS. + +Fonts are published in source form as SFD files (Spline Font Database from +FontForge - http://fontforge.sf.net/) and in compiled form as TTF files +(TrueType fonts). + +For more information go to http://dejavu.sourceforge.net/. + +Characters from Arev fonts, Copyright (c) 2006 by Tavmjong Bah: +--------------------------- +U+01BA, U+01BF, U+01F7, U+021C-U+021D, U+0220, U+0222-U+0223, +U+02B9, U+02BA, U+02BD, U+02C2-U+02C5, U+02d4-U+02D5, +U+02D7, U+02EC-U+02EE, U+0346-U+034E, U+0360, U+0362, +U+03E2-03EF, U+0460-0463, U+0466-U+0486, U+0488-U+0489, U+04A8-U+04A9, +U+0500-U+050F, U+2055-205E, U+20B0, U+20B2-U+20B3, U+2102, U+210D, U+210F, +U+2111, U+2113, U+2115, U+2118-U+211A, U+211C-U+211D, U+2124, U+2135, +U+213C-U+2140, U+2295-U+2298, U+2308-U+230B, U+26A2-U+26B1, U+2701-U+2704, +U+2706-U+2709, U+270C-U+274B, U+2758-U+275A, U+2761-U+2775, U+2780-U+2794, +U+2798-U+27AF, U+27B1-U+27BE, U+FB05-U+FB06 + +$Id: README 2423 2010-08-22 15:48:31Z moyogo $ diff --git a/libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/langcover.txt b/libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/langcover.txt new file mode 100644 index 000000000..23eb86f57 --- /dev/null +++ b/libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/langcover.txt @@ -0,0 +1,244 @@ +This is the language coverage file for DejaVu fonts +($Id$) + + Sans Serif Sans Mono +aa Afar 100% (62/62) 100% (62/62) 100% (62/62) +ab Abkhazia 100% (90/90) 93% (84/90) 84% (76/90) +af Afrikaans 100% (69/69) 100% (69/69) 100% (69/69) +ak Akan 100% (73/73) 100% (73/73) 100% (73/73) +am Amharic (0/264) (0/264) (0/264) +an Aragonese 100% (66/66) 100% (66/66) 100% (66/66) +ar Arabic 100% (36/36) (0/36) 100% (36/36) +as Assamese (0/64) (0/64) (0/64) +ast Asturian/Bable/Leonese/Asturleonese 100% (66/66) 100% (66/66) 100% (66/66) +av Avaric 100% (67/67) 100% (67/67) 100% (67/67) +ay Aymara 100% (60/60) 100% (60/60) 100% (60/60) +az-az Azerbaijani in Azerbaijan 100% (66/66) 100% (66/66) 100% (66/66) +az-ir Azerbaijani in Iran 100% (40/40) (0/40) 100% (40/40) +ba Bashkir 100% (82/82) 100% (82/82) 97% (80/82) +be Byelorussian 100% (68/68) 100% (68/68) 100% (68/68) +ber-dz Berber in Algeria 100% (70/70) 100% (70/70) 100% (70/70) +ber-ma Berber in Morocco 100% (32/32) (0/32) (0/32) +bg Bulgarian 100% (60/60) 100% (60/60) 100% (60/60) +bh Bihari (Devanagari script) (0/68) (0/68) (0/68) +bho Bhojpuri (Devanagari script) (0/68) (0/68) (0/68) +bi Bislama 100% (58/58) 100% (58/58) 100% (58/58) +bin Edo or Bini 100% (78/78) 100% (78/78) 100% (78/78) +bm Bambara 100% (60/60) 100% (60/60) 100% (60/60) +bn Bengali (0/63) (0/63) (0/63) +bo Tibetan (0/95) (0/95) (0/95) +br Breton 100% (64/64) 100% (64/64) 100% (64/64) +bs Bosnian 100% (62/62) 100% (62/62) 100% (62/62) +bua Buriat (Buryat) 100% (70/70) 100% (70/70) 100% (70/70) +byn Blin/Bilin (0/255) (0/255) (0/255) +ca Catalan 100% (74/74) 100% (74/74) 100% (74/74) +ce Chechen 100% (67/67) 100% (67/67) 100% (67/67) +ch Chamorro 100% (58/58) 100% (58/58) 100% (58/58) +chm Mari (Lower Cheremis / Upper Cheremis) 100% (76/76) 100% (76/76) 100% (76/76) +chr Cherokee (0/85) (0/85) (0/85) +co Corsican 100% (84/84) 100% (84/84) 100% (84/84) +crh Crimean Tatar/Crimean Turkish 100% (68/68) 100% (68/68) 100% (68/68) +cs Czech 100% (82/82) 100% (82/82) 100% (82/82) +csb Kashubian 100% (74/74) 100% (74/74) 100% (74/74) +cu Old Church Slavonic 100% (103/103) 86% (89/103) 78% (81/103) +cv Chuvash 100% (74/74) 100% (74/74) 100% (74/74) +cy Welsh 100% (78/78) 100% (78/78) 100% (78/78) +da Danish 100% (70/70) 100% (70/70) 100% (70/70) +de German 100% (59/59) 100% (59/59) 100% (59/59) +dv Divehi/Dhivehi/Maldivian (0/49) (0/49) (0/49) +dz Dzongkha (0/95) (0/95) (0/95) +ee Ewe 100% (99/99) 100% (99/99) 100% (99/99) +el Greek 100% (69/69) 100% (69/69) 100% (69/69) +en English 100% (72/72) 100% (72/72) 100% (72/72) +eo Esperanto 100% (64/64) 100% (64/64) 100% (64/64) +es Spanish 100% (66/66) 100% (66/66) 100% (66/66) +et Estonian 100% (64/64) 100% (64/64) 100% (64/64) +eu Basque 100% (56/56) 100% (56/56) 100% (56/56) +fa Persian 100% (40/40) (0/40) 100% (40/40) +fat Fanti 100% (73/73) 100% (73/73) 100% (73/73) +ff Fulah (Fula) 100% (62/62) 100% (62/62) 100% (62/62) +fi Finnish 100% (62/62) 100% (62/62) 100% (62/62) +fil Filipino 100% (84/84) 100% (84/84) 100% (84/84) +fj Fijian 100% (52/52) 100% (52/52) 100% (52/52) +fo Faroese 100% (68/68) 100% (68/68) 100% (68/68) +fr French 100% (84/84) 100% (84/84) 100% (84/84) +fur Friulian 100% (66/66) 100% (66/66) 100% (66/66) +fy Frisian 100% (75/75) 100% (75/75) 100% (75/75) +ga Irish 100% (80/80) 100% (80/80) 100% (80/80) +gd Scots Gaelic 100% (70/70) 100% (70/70) 100% (70/70) +gez Ethiopic (Geez) (0/218) (0/218) (0/218) +gl Galician 100% (66/66) 100% (66/66) 100% (66/66) +gn Guarani 100% (70/70) 100% (70/70) 100% (70/70) +gu Gujarati (0/68) (0/68) (0/68) +gv Manx Gaelic 100% (54/54) 100% (54/54) 100% (54/54) +ha Hausa 100% (60/60) 100% (60/60) 100% (60/60) +haw Hawaiian 100% (63/63) 100% (63/63) 100% (63/63) +he Hebrew 100% (27/27) (0/27) (0/27) +hi Hindi (Devanagari script) (0/68) (0/68) (0/68) +hne Chhattisgarhi (0/68) (0/68) (0/68) +ho Hiri Motu 100% (52/52) 100% (52/52) 100% (52/52) +hr Croatian 100% (62/62) 100% (62/62) 100% (62/62) +hsb Upper Sorbian 100% (72/72) 100% (72/72) 100% (72/72) +ht Haitian/Haitian Creole 100% (56/56) 100% (56/56) 100% (56/56) +hu Hungarian 100% (70/70) 100% (70/70) 100% (70/70) +hy Armenian 100% (77/77) (0/77) (0/77) +hz Herero 100% (57/57) 100% (57/57) 100% (57/57) +ia Interlingua 100% (52/52) 100% (52/52) 100% (52/52) +id Indonesian 100% (54/54) 100% (54/54) 100% (54/54) +ie Interlingue 100% (52/52) 100% (52/52) 100% (52/52) +ig Igbo 100% (58/58) 100% (58/58) 100% (58/58) +ii Sichuan Yi/Nuosu (0/1165) (0/1165) (0/1165) +ik Inupiaq (Inupiak, Eskimo) 100% (68/68) 100% (68/68) 100% (68/68) +io Ido 100% (52/52) 100% (52/52) 100% (52/52) +is Icelandic 100% (70/70) 100% (70/70) 100% (70/70) +it Italian 100% (72/72) 100% (72/72) 100% (72/72) +iu Inuktitut 100% (161/161) (0/161) (0/161) +ja Japanese (0/6537) (0/6537) (0/6537) +jv Javanese 100% (56/56) 100% (56/56) 100% (56/56) +ka Georgian 100% (33/33) 100% (33/33) 100% (33/33) +kaa Kara-Kalpak (Karakalpak) 100% (78/78) 100% (78/78) 100% (78/78) +kab Kabyle 100% (70/70) 100% (70/70) 100% (70/70) +ki Kikuyu 100% (56/56) 100% (56/56) 100% (56/56) +kj Kuanyama/Kwanyama 100% (52/52) 100% (52/52) 100% (52/52) +kk Kazakh 100% (77/77) 100% (77/77) 100% (77/77) +kl Greenlandic 100% (81/81) 100% (81/81) 100% (81/81) +km Central Khmer (0/63) (0/63) (0/63) +kn Kannada (0/70) (0/70) (0/70) +ko Korean (0/2443) (0/2443) (0/2443) +kok Kokani (Devanagari script) (0/68) (0/68) (0/68) +kr Kanuri 100% (56/56) 100% (56/56) 100% (56/56) +ks Kashmiri 97% (43/44) (0/44) 93% (41/44) +ku-am Kurdish in Armenia 100% (64/64) 100% (64/64) 100% (64/64) +ku-iq Kurdish in Iraq 100% (32/32) (0/32) 87% (28/32) +ku-ir Kurdish in Iran 100% (32/32) (0/32) 87% (28/32) +ku-tr Kurdish in Turkey 100% (62/62) 100% (62/62) 100% (62/62) +kum Kumyk 100% (66/66) 100% (66/66) 100% (66/66) +kv Komi (Komi-Permyak/Komi-Siryan) 100% (70/70) 100% (70/70) 100% (70/70) +kw Cornish 100% (64/64) 100% (64/64) 100% (64/64) +kwm Kwambi 100% (52/52) 100% (52/52) 100% (52/52) +ky Kirgiz 100% (70/70) 100% (70/70) 100% (70/70) +la Latin 100% (68/68) 100% (68/68) 100% (68/68) +lah Lahnda 97% (43/44) (0/44) 93% (41/44) +lb Luxembourgish (Letzeburgesch) 100% (75/75) 100% (75/75) 100% (75/75) +lez Lezghian (Lezgian) 100% (67/67) 100% (67/67) 100% (67/67) +lg Ganda 100% (54/54) 100% (54/54) 100% (54/54) +li Limburgan/Limburger/Limburgish 100% (62/62) 100% (62/62) 100% (62/62) +ln Lingala 100% (81/81) 100% (81/81) 100% (81/81) +lo Lao 100% (55/55) (0/55) 83% (46/55) +lt Lithuanian 100% (70/70) 100% (70/70) 100% (70/70) +lv Latvian 100% (78/78) 100% (78/78) 100% (78/78) +mai Maithili (Devanagari script) (0/68) (0/68) (0/68) +mg Malagasy 100% (56/56) 100% (56/56) 100% (56/56) +mh Marshallese 100% (62/62) 100% (62/62) 100% (62/62) +mi Maori 100% (64/64) 100% (64/64) 100% (64/64) +mk Macedonian 100% (42/42) 100% (42/42) 100% (42/42) +ml Malayalam (0/68) (0/68) (0/68) +mn-cn Mongolian in China (0/130) (0/130) (0/130) +mn-mn Mongolian in Mongolia 100% (70/70) 100% (70/70) 100% (70/70) +mo Moldavian 100% (128/128) 100% (128/128) 100% (128/128) +mr Marathi (Devanagari script) (0/68) (0/68) (0/68) +ms Malay 100% (52/52) 100% (52/52) 100% (52/52) +mt Maltese 100% (72/72) 100% (72/72) 100% (72/72) +my Burmese (Myanmar) (0/48) (0/48) (0/48) +na Nauru 100% (60/60) 100% (60/60) 100% (60/60) +nb Norwegian Bokmal 100% (70/70) 100% (70/70) 100% (70/70) +nds Low Saxon 100% (59/59) 100% (59/59) 100% (59/59) +ne Nepali (Devanagari script) (0/68) (0/68) (0/68) +ng Ndonga 100% (52/52) 100% (52/52) 100% (52/52) +nl Dutch 100% (82/82) 100% (82/82) 100% (82/82) +nn Norwegian Nynorsk 100% (76/76) 100% (76/76) 100% (76/76) +no Norwegian (Bokmal) 100% (70/70) 100% (70/70) 100% (70/70) +nr Ndebele, South 100% (52/52) 100% (52/52) 100% (52/52) +nso Northern Sotho 100% (58/58) 100% (58/58) 100% (58/58) +nv Navajo/Navaho 100% (72/72) 100% (72/72) 100% (72/72) +ny Chichewa 100% (54/54) 100% (54/54) 100% (54/54) +oc Occitan 100% (70/70) 100% (70/70) 100% (70/70) +om Oromo or Galla 100% (52/52) 100% (52/52) 100% (52/52) +or Oriya (0/68) (0/68) (0/68) +os Ossetic 100% (66/66) 100% (66/66) 100% (66/66) +ota Ottoman Turkish 100% (37/37) (0/37) 97% (36/37) +pa Panjabi/Punjabi (0/63) (0/63) (0/63) +pa-pk Panjabi/Punjabi in Pakistan 97% (43/44) (0/44) 93% (41/44) +pap-an Papiamento in Netherlands Antilles 100% (72/72) 100% (72/72) 100% (72/72) +pap-aw Papiamento in Aruba 100% (54/54) 100% (54/54) 100% (54/54) +pes Western Farsi 100% (40/40) (0/40) 100% (40/40) +pl Polish 100% (70/70) 100% (70/70) 100% (70/70) +prs Dari/Eastern Farsi 100% (40/40) (0/40) 100% (40/40) +ps-af Pashto in Afghanistan 95% (47/49) (0/49) 77% (38/49) +ps-pk Pashto in Pakistan 93% (46/49) (0/49) 75% (37/49) +pt Portuguese 100% (82/82) 100% (82/82) 100% (82/82) +qu Quechua 100% (55/55) 100% (55/55) 100% (55/55) +rm Rhaeto-Romance (Romansch) 100% (66/66) 100% (66/66) 100% (66/66) +rn Rundi 100% (52/52) 100% (52/52) 100% (52/52) +ro Romanian 100% (62/62) 100% (62/62) 100% (62/62) +ru Russian 100% (66/66) 100% (66/66) 100% (66/66) +rw Kinyarwanda 100% (52/52) 100% (52/52) 100% (52/52) +sa Sanskrit (Devanagari script) (0/68) (0/68) (0/68) +sah Yakut 100% (76/76) 100% (76/76) 100% (76/76) +sc Sardinian 100% (62/62) 100% (62/62) 100% (62/62) +sco Scots 100% (56/56) 100% (56/56) 100% (56/56) +sd Sindhi 100% (54/54) (0/54) 79% (43/54) +se North Sami 100% (66/66) 100% (66/66) 100% (66/66) +sel Selkup (Ostyak-Samoyed) 100% (66/66) 100% (66/66) 100% (66/66) +sg Sango 100% (72/72) 100% (72/72) 100% (72/72) +sh Serbo-Croatian 100% (156/156) 100% (156/156) 98% (154/156) +shs Secwepemctsin 100% (48/48) 100% (48/48) 100% (48/48) +si Sinhala/Sinhalese (0/73) (0/73) (0/73) +sid Sidamo (0/281) (0/281) (0/281) +sk Slovak 100% (86/86) 100% (86/86) 100% (86/86) +sl Slovenian 100% (62/62) 100% (62/62) 100% (62/62) +sm Samoan 100% (53/53) 100% (53/53) 100% (53/53) +sma South Sami 100% (60/60) 100% (60/60) 100% (60/60) +smj Lule Sami 100% (60/60) 100% (60/60) 100% (60/60) +smn Inari Sami 100% (68/68) 100% (68/68) 100% (68/68) +sms Skolt Sami 100% (80/80) 100% (80/80) 97% (78/80) +sn Shona 100% (52/52) 100% (52/52) 100% (52/52) +so Somali 100% (52/52) 100% (52/52) 100% (52/52) +sq Albanian 100% (56/56) 100% (56/56) 100% (56/56) +sr Serbian 100% (60/60) 100% (60/60) 100% (60/60) +ss Swati 100% (52/52) 100% (52/52) 100% (52/52) +st Sotho, Southern 100% (52/52) 100% (52/52) 100% (52/52) +su Sundanese 100% (54/54) 100% (54/54) 100% (54/54) +sv Swedish 100% (68/68) 100% (68/68) 100% (68/68) +sw Swahili 100% (52/52) 100% (52/52) 100% (52/52) +syr Syriac (0/45) (0/45) (0/45) +ta Tamil (0/48) (0/48) (0/48) +te Telugu (0/70) (0/70) (0/70) +tg Tajik 100% (78/78) 100% (78/78) 97% (76/78) +th Thai 1% (1/74) (0/74) (0/74) +ti-er Eritrean Tigrinya (0/255) (0/255) (0/255) +ti-et Ethiopian Tigrinya (0/281) (0/281) (0/281) +tig Tigre (0/221) (0/221) (0/221) +tk Turkmen 100% (68/68) 100% (68/68) 100% (68/68) +tl Tagalog 100% (84/84) 100% (84/84) 100% (84/84) +tn Tswana 100% (58/58) 100% (58/58) 100% (58/58) +to Tonga 100% (53/53) 100% (53/53) 100% (53/53) +tr Turkish 100% (70/70) 100% (70/70) 100% (70/70) +ts Tsonga 100% (52/52) 100% (52/52) 100% (52/52) +tt Tatar 100% (76/76) 100% (76/76) 100% (76/76) +tw Twi 100% (73/73) 100% (73/73) 100% (73/73) +ty Tahitian 100% (65/65) 100% (65/65) 100% (65/65) +tyv Tuvinian 100% (70/70) 100% (70/70) 100% (70/70) +ug Uighur 100% (36/36) (0/36) 100% (36/36) +uk Ukrainian 100% (72/72) 100% (72/72) 100% (72/72) +ur Urdu 97% (43/44) (0/44) 93% (41/44) +uz Uzbek 100% (52/52) 100% (52/52) 100% (52/52) +ve Venda 100% (62/62) 100% (62/62) 100% (62/62) +vi Vietnamese 100% (194/194) 100% (194/194) 76% (148/194) +vo Volapuk 100% (54/54) 100% (54/54) 100% (54/54) +vot Votic 100% (62/62) 100% (62/62) 100% (62/62) +wa Walloon 100% (70/70) 100% (70/70) 100% (70/70) +wal Wolaitta/Wolaytta (0/281) (0/281) (0/281) +wen Sorbian languages (lower and upper) 100% (76/76) 100% (76/76) 100% (76/76) +wo Wolof 100% (66/66) 100% (66/66) 100% (66/66) +xh Xhosa 100% (52/52) 100% (52/52) 100% (52/52) +yap Yapese 100% (58/58) 100% (58/58) 100% (58/58) +yi Yiddish 100% (27/27) (0/27) (0/27) +yo Yoruba 100% (119/119) 100% (119/119) 100% (119/119) +za Zhuang/Chuang 100% (52/52) 100% (52/52) 100% (52/52) +zh-cn Chinese (simplified) 0% (2/6765) 0% (2/6765) 0% (2/6765) +zh-hk Chinese Hong Kong Supplementary Character Set (0/2213) (0/2213) (0/2213) +zh-mo Chinese in Macau (0/2213) (0/2213) (0/2213) +zh-sg Chinese in Singapore 0% (2/6765) 0% (2/6765) 0% (2/6765) +zh-tw Chinese (traditional) (0/13063) (0/13063) (0/13063) +zu Zulu 100% (52/52) 100% (52/52) 100% (52/52) diff --git a/libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/status.txt b/libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/status.txt new file mode 100644 index 000000000..6459ec583 --- /dev/null +++ b/libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/status.txt @@ -0,0 +1,6469 @@ +This is the status file for DejaVu fonts +($Id: status.txt 2383 2010-05-27 09:23:21Z ben_laenen $) + +original = present in original Bitstream Vera 1.10 + = added in DejaVu fonts + +U+0020 space original +U+0021 exclam original +U+0022 quotedbl original +U+0023 numbersign original +U+0024 dollar original +U+0025 percent original +U+0026 ampersand original +U+0027 quotesingle original +U+0028 parenleft original +U+0029 parenright original +U+002a asterisk original +U+002b plus original +U+002c comma original +U+002d hyphen original +U+002e period original +U+002f slash original +U+0030 zero original +U+0031 one original +U+0032 two original +U+0033 three original +U+0034 four original +U+0035 five original +U+0036 six original +U+0037 seven original +U+0038 eight original +U+0039 nine original +U+003a colon original +U+003b semicolon original +U+003c less original +U+003d equal original +U+003e greater original +U+003f question original +U+0040 at original +U+0041 A original +U+0042 B original +U+0043 C original +U+0044 D original +U+0045 E original +U+0046 F original +U+0047 G original +U+0048 H original +U+0049 I original +U+004a J original +U+004b K original +U+004c L original +U+004d M original +U+004e N original +U+004f O original +U+0050 P original +U+0051 Q original +U+0052 R original +U+0053 S original +U+0054 T original +U+0055 U original +U+0056 V original +U+0057 W original +U+0058 X original +U+0059 Y original +U+005a Z original +U+005b bracketleft original +U+005c backslash original +U+005d bracketright original +U+005e asciicircum original +U+005f underscore original +U+0060 grave original +U+0061 a original +U+0062 b original +U+0063 c original +U+0064 d original +U+0065 e original +U+0066 f original +U+0067 g original +U+0068 h original +U+0069 i original +U+006a j original +U+006b k original +U+006c l original +U+006d m original +U+006e n original +U+006f o original +U+0070 p original +U+0071 q original +U+0072 r original +U+0073 s original +U+0074 t original +U+0075 u original +U+0076 v original +U+0077 w original +U+0078 x original +U+0079 y original +U+007a z original +U+007b braceleft original +U+007c bar original +U+007d braceright original +U+007e asciitilde original +U+00a0 nonbreakingspace original +U+00a1 exclamdown original +U+00a2 cent original +U+00a3 sterling original +U+00a4 currency original +U+00a5 yen original +U+00a6 brokenbar original +U+00a7 section original +U+00a8 dieresis original +U+00a9 copyright original +U+00aa ordfeminine original +U+00ab guillemotleft original +U+00ac logicalnot original +U+00ad sfthyphen original +U+00ae registered original +U+00af macron original +U+00b0 degree original +U+00b1 plusminus original +U+00b2 twosuperior original +U+00b3 threesuperior original +U+00b4 acute original +U+00b5 mu original +U+00b6 paragraph original +U+00b7 periodcentered original +U+00b8 cedilla original +U+00b9 onesuperior original +U+00ba ordmasculine original +U+00bb guillemotright original +U+00bc onequarter original +U+00bd onehalf original +U+00be threequarters original +U+00bf questiondown original +U+00c0 Agrave original +U+00c1 Aacute original +U+00c2 Acircumflex original +U+00c3 Atilde original +U+00c4 Adieresis original +U+00c5 Aring original +U+00c6 AE original +U+00c7 Ccedilla original +U+00c8 Egrave original +U+00c9 Eacute original +U+00ca Ecircumflex original +U+00cb Edieresis original +U+00cc Igrave original +U+00cd Iacute original +U+00ce Icircumflex original +U+00cf Idieresis original +U+00d0 Eth original +U+00d1 Ntilde original +U+00d2 Ograve original +U+00d3 Oacute original +U+00d4 Ocircumflex original +U+00d5 Otilde original +U+00d6 Odieresis original +U+00d7 multiply original +U+00d8 Oslash original +U+00d9 Ugrave original +U+00da Uacute original +U+00db Ucircumflex original +U+00dc Udieresis original +U+00dd Yacute original +U+00de Thorn original +U+00df germandbls original +U+00e0 agrave original +U+00e1 aacute original +U+00e2 acircumflex original +U+00e3 atilde original +U+00e4 adieresis original +U+00e5 aring original +U+00e6 ae original +U+00e7 ccedilla original +U+00e8 egrave original +U+00e9 eacute original +U+00ea ecircumflex original +U+00eb edieresis original +U+00ec igrave original +U+00ed iacute original +U+00ee icircumflex original +U+00ef idieresis original +U+00f0 eth original +U+00f1 ntilde original +U+00f2 ograve original +U+00f3 oacute original +U+00f4 ocircumflex original +U+00f5 otilde original +U+00f6 odieresis original +U+00f7 divide original +U+00f8 oslash original +U+00f9 ugrave original +U+00fa uacute original +U+00fb ucircumflex original +U+00fc udieresis original +U+00fd yacute original +U+00fe thorn original +U+00ff ydieresis original +U+0100 Amacron 1.5 +U+0101 amacron 1.5 +U+0102 Abreve 1.5 +U+0103 abreve 1.5 +U+0104 Aogonek 1.4 +U+0105 aogonek 1.4 +U+0106 Cacute original +U+0107 cacute original +U+0108 Ccircumflex 1.5 +U+0109 ccircumflex 1.5 +U+010a Cdotaccent 1.5 +U+010b cdotaccent 1.5 +U+010c Ccaron original +U+010d ccaron original +U+010e Dcaron 1.0 +U+010f dcaron 1.0 +U+0110 Dcroat 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0111 dcroat original +U+0112 Emacron 1.5 +U+0113 emacron 1.5 +U+0114 Ebreve 1.5 +U+0115 ebreve 1.5 +U+0116 Edotaccent 1.5 +U+0117 edotaccent 1.5 +U+0118 Eogonek 1.4 +U+0119 eogonek 1.4 +U+011a Ecaron 1.0 +U+011b ecaron 1.0 +U+011c Gcircumflex 1.5 +U+011d gcircumflex 1.5 +U+011e Gbreve original +U+011f gbreve original +U+0120 Gdotaccent 1.5 +U+0121 gdotaccent 1.5 +U+0122 Gcommaaccent 1.11 +U+0123 gcommaaccent 1.11 +U+0124 Hcircumflex 1.5 +U+0125 hcircumflex 1.5 +U+0126 Hbar 1.12 +U+0127 hbar 1.12 +U+0128 Itilde 1.5 +U+0129 itilde 1.5 +U+012a Imacron 1.5 +U+012b imacron 1.5 +U+012c Ibreve 1.5 +U+012d ibreve 1.5 +U+012e Iogonek 1.11 +U+012f iogonek 1.11 +U+0130 Idotaccent original +U+0131 dotlessi original +U+0132 IJ 1.11 +U+0133 ij 1.11 +U+0134 Jcircumflex 1.5 +U+0135 jcircumflex 1.5 +U+0136 Kcommaaccent 1.11 +U+0137 kcommaaccent 1.11 +U+0138 kgreenlandic 1.12 +U+0139 Lacute 1.1 +U+013a lacute 1.1 +U+013b Lcommaaccent 1.11 +U+013c lcommaaccent 1.11 +U+013d Lcaron 1.1 +U+013e lcaron 1.1 +U+013f Ldot 1.2 +U+0140 ldot 1.2 +U+0141 Lslash original +U+0142 lslash original +U+0143 Nacute 1.4 +U+0144 nacute 1.4 +U+0145 Ncommaaccent 1.11 +U+0146 ncommaaccent 1.11 +U+0147 Ncaron 1.0 +U+0148 ncaron 1.0 +U+0149 napostrophe 1.12 +U+014a Eng 1.12 +U+014b eng 1.12 +U+014c Omacron 1.5 +U+014d omacron 1.5 +U+014e Obreve 1.5 +U+014f obreve 1.5 +U+0150 Ohungarumlaut 1.5 +U+0151 ohungarumlaut 1.5 +U+0152 OE original +U+0153 oe original +U+0154 Racute 1.1 +U+0155 racute 1.1 +U+0156 Rcommaaccent 1.11 +U+0157 rcommaaccent 1.11 +U+0158 Rcaron 1.0 +U+0159 rcaron 1.0 +U+015a Sacute 1.4 +U+015b sacute 1.4 +U+015c Scircumflex 1.5 +U+015d scircumflex 1.5 +U+015e Scedilla original +U+015f scedilla original +U+0160 Scaron original +U+0161 scaron original +U+0162 Tcommaaccent 1.5 +U+0163 tcommaaccent 1.5 +U+0164 Tcaron 1.0 +U+0165 tcaron 1.0 +U+0166 Tbar 1.12 +U+0167 tbar 1.12 +U+0168 Utilde 1.5 +U+0169 utilde 1.5 +U+016a Umacron 1.5 +U+016b umacron 1.5 +U+016c Ubreve 1.5 +U+016d ubreve 1.5 +U+016e Uring 1.0 +U+016f uring 1.0 +U+0170 Uhungarumlaut 1.5 +U+0171 uhungarumlaut 1.5 +U+0172 Uogonek 1.11 +U+0173 uogonek 1.11 +U+0174 Wcircumflex 1.2 +U+0175 wcircumflex 1.2 +U+0176 Ycircumflex 1.2 +U+0177 ycircumflex 1.2 +U+0178 Ydieresis original +U+0179 Zacute 1.4 +U+017a zacute 1.4 +U+017b Zdotaccent 1.4 +U+017c zdotaccent 1.4 +U+017d Zcaron original +U+017e zcaron original +U+017f longs 1.12 +U+0180 uni0180 2.1 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.12 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.22 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+0181 uni0181 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0182 uni0182 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0183 uni0183 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0184 uni0184 2.3 +U+0185 uni0185 2.3 +U+0186 uni0186 1.15 +U+0187 uni0187 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0188 uni0188 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0189 uni0189 2.1 +U+018a uni018A 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+018b uni018B 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+018c uni018C 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+018d uni018D 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+018e uni018E 2.1 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+018f uni018F 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0190 uni0190 1.15 +U+0191 uni0191 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0192 florin original +U+0193 uni0193 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0194 uni0194 1.14 +U+0195 uni0195 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.6 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0196 uni0196 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0197 uni0197 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0198 uni0198 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0199 uni0199 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+019a uni019A 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+019b uni019B 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+019c uni019C 2.3 +U+019d uni019D 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+019e uni019E 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+019f uni019F 2.3 +U+01a0 Ohorn 2.3 +U+01a1 ohorn 2.3 +U+01a2 uni01A2 2.3 +U+01a3 uni01A3 2.3 +U+01a4 uni01A4 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+01a5 uni01A5 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+01a6 uni01A6 2.3 +U+01a7 uni01A7 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+01a8 uni01A8 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+01a9 uni01A9 2.2 +U+01aa uni01AA 2.3 +U+01ab uni01AB 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+01ac uni01AC 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+01ad uni01AD 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+01ae uni01AE 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+01af Uhorn 2.3 +U+01b0 uhorn 2.3 +U+01b1 uni01B1 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+01b2 uni01B2 2.3 +U+01b3 uni01B3 2.3 +U+01b4 uni01B4 2.3 +U+01b5 uni01B5 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+01b6 uni01B6 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+01b7 uni01B7 2.3 +U+01b8 uni01B8 2.3 +U+01b9 uni01B9 2.3 +U+01ba uni01BA 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+01bb uni01BB 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+01bc uni01BC 2.3 +U+01bd uni01BD 2.3 +U+01be uni01BE 2.3 +U+01bf uni01BF 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+01c0 uni01C0 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+01c1 uni01C1 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+01c2 uni01C2 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+01c3 uni01C3 2.2 +U+01c4 uni01C4 1.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+01c5 uni01C5 1.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+01c6 uni01C6 1.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+01c7 uni01C7 1.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+01c8 uni01C8 1.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+01c9 uni01C9 1.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+01ca uni01CA 1.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+01cb uni01CB 1.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+01cc uni01CC 1.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+01cd uni01CD 1.15 +U+01ce uni01CE 1.15 +U+01cf uni01CF 1.15 +U+01d0 uni01D0 1.15 +U+01d1 uni01D1 1.15 +U+01d2 uni01D2 1.15 +U+01d3 uni01D3 1.15 +U+01d4 uni01D4 1.15 +U+01d5 uni01D5 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.22 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+01d6 uni01D6 1.13 +U+01d7 uni01D7 2.3 +U+01d8 uni01D8 2.3 +U+01d9 uni01D9 2.3 +U+01da uni01DA 2.3 +U+01db uni01DB 2.3 +U+01dc uni01DC 2.3 +U+01dd uni01DD 2.2 +U+01de uni01DE 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.22 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique) 2.23 (Serif Italic Condensed) +U+01df uni01DF 1.13 +U+01e0 uni01E0 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.22 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+01e1 uni01E1 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.22 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+01e2 uni01E2 1.5 +U+01e3 uni01E3 1.5 +U+01e4 uni01E4 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans ExtraLight) +U+01e5 uni01E5 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans ExtraLight) +U+01e6 Gcaron 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+01e7 gcaron 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+01e8 uni01E8 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+01e9 uni01E9 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+01ea uni01EA 1.9 +U+01eb uni01EB 1.9 +U+01ec uni01EC 1.9 +U+01ed uni01ED 1.9 +U+01ee uni01EE 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+01ef uni01EF 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+01f0 uni01F0 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono) 2.22 (Sans Mono Bold) 2.23 (Serif Italic Condensed) +U+01f1 uni01F1 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+01f2 uni01F2 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+01f3 uni01F3 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+01f4 uni01F4 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+01f5 uni01F5 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+01f6 uni01F6 2.3 +U+01f7 uni01F7 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+01f8 uni01F8 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+01f9 uni01F9 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+01fa Aringacute 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+01fb aringacute 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+01fc AEacute 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+01fd aeacute 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+01fe Oslashacute 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+01ff oslashacute 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+0200 uni0200 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+0201 uni0201 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+0202 uni0202 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+0203 uni0203 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+0204 uni0204 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+0205 uni0205 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+0206 uni0206 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+0207 uni0207 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+0208 uni0208 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+0209 uni0209 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+020a uni020A 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+020b uni020B 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+020c uni020C 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+020d uni020D 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+020e uni020E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+020f uni020F 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+0210 uni0210 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+0211 uni0211 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+0212 uni0212 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+0213 uni0213 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+0214 uni0214 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+0215 uni0215 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+0216 uni0216 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+0217 uni0217 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+0218 Scommaaccent 1.5 +U+0219 scommaaccent 1.5 +U+021a uni021A 1.5 +U+021b uni021B 1.5 +U+021c uni021C 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.28 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.31 (Serif Condensed Italic) +U+021d uni021D 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.28 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.31 (Serif Condensed Italic) +U+021e uni021E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+021f uni021F 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+0220 uni0220 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.16 (Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.17 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.18 (Sans Mono, Sans Mono Bold) 2.23 (Serif Italic Condensed) +U+0221 uni0221 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+0222 uni0222 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+0223 uni0223 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+0224 uni0224 2.3 +U+0225 uni0225 2.3 +U+0226 uni0226 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+0227 uni0227 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+0228 uni0228 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+0229 uni0229 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+022a uni022A 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.22 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+022b uni022B 1.13 +U+022c uni022C 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.22 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+022d uni022D 1.13 +U+022e uni022E 1.10 +U+022f uni022F 1.10 +U+0230 uni0230 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.22 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+0231 uni0231 1.13 +U+0232 uni0232 1.5 +U+0233 uni0233 1.5 +U+0234 uni0234 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+0235 uni0235 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+0236 uni0236 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+0237 dotlessj 1.5 +U+0238 uni0238 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.10 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0239 uni0239 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.10 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+023a uni023A 2.3 +U+023b uni023B 2.3 +U+023c uni023C 2.3 +U+023d uni023D 2.3 +U+023e uni023E 2.3 +U+023f uni023F 2.3 +U+0240 uni0240 2.3 +U+0241 uni0241 2.3 +U+0242 uni0242 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+0243 uni0243 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+0244 uni0244 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.27 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+0245 uni0245 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+0246 uni0246 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+0247 uni0247 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+0248 uni0248 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+0249 uni0249 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+024a uni024A 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+024b uni024B 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.26 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+024c uni024C 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) 2.27 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+024d uni024D 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) 2.27 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+024e uni024E 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+024f uni024F 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+0250 uni0250 1.14 +U+0251 uni0251 1.14 +U+0252 uni0252 1.14 +U+0253 uni0253 1.14 +U+0254 uni0254 1.14 +U+0255 uni0255 1.14 +U+0256 uni0256 1.14 +U+0257 uni0257 1.14 +U+0258 uni0258 1.14 +U+0259 uni0259 1.14 +U+025a uni025A 1.14 +U+025b uni025B 1.14 +U+025c uni025C 1.14 +U+025d uni025D 1.14 +U+025e uni025E 1.14 +U+025f uni025F 1.14 +U+0260 uni0260 1.14 +U+0261 uni0261 1.14 +U+0262 uni0262 1.14 +U+0263 uni0263 1.14 +U+0264 uni0264 1.14 +U+0265 uni0265 1.14 +U+0266 uni0266 1.14 +U+0267 uni0267 1.14 +U+0268 uni0268 1.14 +U+0269 uni0269 1.14 +U+026a uni026A 1.14 +U+026b uni026B 1.14 +U+026c uni026C 1.14 +U+026d uni026D 1.14 +U+026e uni026E 1.14 +U+026f uni026F 1.14 +U+0270 uni0270 1.14 +U+0271 uni0271 1.14 +U+0272 uni0272 1.14 +U+0273 uni0273 1.14 +U+0274 uni0274 1.14 +U+0275 uni0275 1.14 +U+0276 uni0276 1.14 +U+0277 uni0277 1.14 +U+0278 uni0278 1.14 +U+0279 uni0279 1.14 +U+027a uni027A 1.14 +U+027b uni027B 1.14 +U+027c uni027C 1.14 +U+027d uni027D 1.14 +U+027e uni027E 1.14 +U+027f uni027F 1.14 +U+0280 uni0280 1.14 +U+0281 uni0281 1.14 +U+0282 uni0282 1.14 +U+0283 uni0283 1.14 +U+0284 uni0284 1.14 +U+0285 uni0285 1.14 +U+0286 uni0286 1.14 +U+0287 uni0287 1.14 +U+0288 uni0288 1.14 +U+0289 uni0289 1.14 +U+028a uni028A 1.14 +U+028b uni028B 1.14 +U+028c uni028C 1.14 +U+028d uni028D 1.14 +U+028e uni028E 1.14 +U+028f uni028F 1.14 +U+0290 uni0290 1.14 +U+0291 uni0291 1.14 +U+0292 uni0292 1.14 +U+0293 uni0293 1.14 +U+0294 uni0294 1.14 +U+0295 uni0295 1.14 +U+0296 uni0296 1.14 +U+0297 uni0297 1.14 +U+0298 uni0298 1.14 +U+0299 uni0299 1.14 +U+029a uni029A 1.14 +U+029b uni029B 1.14 +U+029c uni029C 1.14 +U+029d uni029D 1.14 +U+029e uni029E 1.14 +U+029f uni029F 1.14 +U+02a0 uni02A0 1.14 +U+02a1 uni02A1 1.14 +U+02a2 uni02A2 1.14 +U+02a3 uni02A3 1.14 +U+02a4 uni02A4 1.14 +U+02a5 uni02A5 1.14 +U+02a6 uni02A6 1.14 +U+02a7 uni02A7 1.14 +U+02a8 uni02A8 1.14 +U+02a9 uni02A9 1.14 +U+02aa uni02AA 1.14 +U+02ab uni02AB 1.14 +U+02ac uni02AC 1.14 +U+02ad uni02AD 1.14 +U+02ae uni02AE 1.14 +U+02af uni02AF 1.14 +U+02b0 uni02B0 1.14 +U+02b1 uni02B1 1.14 +U+02b2 uni02B2 1.14 +U+02b3 uni02B3 1.14 +U+02b4 uni02B4 1.14 +U+02b5 uni02B5 1.14 +U+02b6 uni02B6 1.14 +U+02b7 uni02B7 1.14 +U+02b8 uni02B8 1.14 +U+02b9 uni02B9 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+02ba uni02BA 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+02bb uni02BB 1.5 +U+02bc uni02BC 1.12 +U+02bd uni02BD 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+02be uni02BE 2.2 +U+02bf uni02BF 2.2 +U+02c0 uni02C0 1.14 +U+02c1 uni02C1 1.14 +U+02c2 uni02C2 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+02c3 uni02C3 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+02c4 uni02C4 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+02c5 uni02C5 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+02c6 circumflex original +U+02c7 caron original +U+02c8 uni02C8 2.0 +U+02c9 uni02C9 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+02ca uni02CA 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+02cb uni02CB 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+02cc uni02CC 2.0 +U+02cd uni02CD 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+02ce uni02CE 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+02cf uni02CF 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+02d0 uni02D0 1.14 +U+02d1 uni02D1 1.14 +U+02d2 uni02D2 2.0 +U+02d3 uni02D3 2.2 +U+02d4 uni02D4 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+02d5 uni02D5 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+02d6 uni02D6 2.0 +U+02d7 uni02D7 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.28 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+02d8 breve original +U+02d9 dotaccent original +U+02da ring original +U+02db ogonek original +U+02dc tilde original +U+02dd hungarumlaut original +U+02de uni02DE 2.0 +U+02df uni02DF 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+02e0 uni02E0 1.14 +U+02e1 uni02E1 1.14 +U+02e2 uni02E2 1.14 +U+02e3 uni02E3 1.14 +U+02e4 uni02E4 1.14 +U+02e5 uni02E5 2.0 +U+02e6 uni02E6 2.0 +U+02e7 uni02E7 2.0 +U+02e8 uni02E8 2.0 +U+02e9 uni02E9 2.0 +U+02ec uni02EC 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+02ed uni02ED 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+02ee uni02EE 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.28 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+02f3 uni02F3 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+02f7 uni02F7 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+0300 gravecomb 1.15 +U+0301 acutecomb 1.15 +U+0302 uni0302 1.15 +U+0303 tildecomb 1.15 +U+0304 uni0304 1.15 +U+0305 uni0305 2.0 +U+0306 uni0306 1.15 +U+0307 uni0307 1.15 +U+0308 uni0308 1.15 +U+0309 hookabovecomb 2.1 +U+030a uni030A 1.15 +U+030b uni030B 1.15 +U+030c uni030C 1.15 +U+030d uni030D 2.0 +U+030e uni030E 2.0 +U+030f uni030F 2.0 +U+0310 uni0310 2.0 +U+0311 uni0311 2.0 +U+0312 uni0312 1.11 +U+0313 uni0313 2.1 +U+0314 uni0314 2.1 +U+0315 uni0315 2.0 +U+0316 uni0316 2.0 +U+0317 uni0317 2.0 +U+0318 uni0318 2.0 +U+0319 uni0319 2.0 +U+031a uni031A 2.1 +U+031b uni031B 2.1 +U+031c uni031C 2.0 +U+031d uni031D 2.0 +U+031e uni031E 2.0 +U+031f uni031F 2.0 +U+0320 uni0320 2.0 +U+0321 uni0321 1.15 +U+0322 uni0322 1.15 +U+0323 dotbelowcomb 2.1 +U+0324 uni0324 2.0 +U+0325 uni0325 2.0 +U+0326 uni0326 1.5 +U+0327 uni0327 2.1 +U+0328 uni0328 2.1 +U+0329 uni0329 2.0 +U+032a uni032A 2.0 +U+032b uni032B 2.1 +U+032c uni032C 2.0 +U+032d uni032D 2.0 +U+032e uni032E 2.0 +U+032f uni032F 2.0 +U+0330 uni0330 2.0 +U+0331 uni0331 2.0 +U+0332 uni0332 2.0 +U+0333 uni0333 2.1 +U+0334 uni0334 2.3 +U+0335 uni0335 2.3 +U+0336 uni0336 2.3 +U+0337 uni0337 2.3 +U+0338 uni0338 2.3 +U+0339 uni0339 2.0 +U+033a uni033A 2.0 +U+033b uni033B 2.0 +U+033c uni033C 2.1 +U+033d uni033D 2.0 +U+033e uni033E 2.1 +U+033f uni033F 2.1 +U+0340 uni0340 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0341 uni0341 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0342 uni0342 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0343 uni0343 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+0344 uni0344 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0345 uni0345 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0346 uni0346 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0347 uni0347 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0348 uni0348 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0349 uni0349 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+034a uni034A 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+034b uni034B 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+034c uni034C 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+034d uni034D 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+034e uni034E 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+034f uni034F 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+0351 uni0351 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0352 uni0352 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique) 2.28 (Sans Condensed Oblique, Sans Oblique) +U+0353 uni0353 2.5 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0357 uni0357 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0358 uni0358 2.3 +U+035a uni035A 2.28 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+035c uni035C 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+035d uni035D 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+035e uni035E 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+035f uni035F 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0360 uni0360 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0361 uni0361 2.0 +U+0362 uni0362 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0370 uni0370 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+0371 uni0371 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+0372 uni0372 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+0373 uni0373 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+0374 uni0374 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0375 uni0375 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0376 uni0376 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+0377 uni0377 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+037a uni037A 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+037b uni037B 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+037c uni037C 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans ExtraLight, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+037d uni037D 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans ExtraLight, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+037e uni037E 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0384 tonos 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0385 dieresistonos 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0386 Alphatonos 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0387 anoteleia 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0388 Epsilontonos 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0389 Etatonos 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+038a Iotatonos 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+038c Omicrontonos 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+038e Upsilontonos 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+038f Omegatonos 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0390 iotadieresistonos 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0391 Alpha 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0392 Beta 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0393 Gamma 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0394 uni0394 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0395 Epsilon 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0396 Zeta 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0397 Eta 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0398 Theta 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0399 Iota 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+039a Kappa 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+039b Lambda 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+039c Mu 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+039d Nu 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+039e Xi 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+039f Omicron 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03a0 Pi 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03a1 Rho 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03a3 Sigma 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03a4 Tau 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03a5 Upsilon 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03a6 Phi 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03a7 Chi 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03a8 Psi 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03a9 Omega original +U+03aa Iotadieresis 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03ab Upsilondieresis 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03ac alphatonos 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03ad epsilontonos 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03ae etatonos 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03af iotatonos 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03b0 upsilondieresistonos 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03b1 alpha 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03b2 beta 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03b3 gamma 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03b4 delta 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03b5 epsilon 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03b6 zeta 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03b7 eta 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03b8 theta 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03b9 iota 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03ba kappa 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03bb lambda 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03bc uni03BC 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03bd nu 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03be xi 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03bf omicron 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03c0 pi original +U+03c1 rho 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03c2 sigma1 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03c3 sigma 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03c4 tau 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03c5 upsilon 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03c6 phi 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03c7 chi 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03c8 psi 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03c9 omega 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03ca iotadieresis 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03cb upsilondieresis 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03cc omicrontonos 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03cd upsilontonos 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03ce omegatonos 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03cf uni03CF 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+03d0 uni03D0 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+03d1 theta1 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+03d2 Upsilon1 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+03d3 uni03D3 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+03d4 uni03D4 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+03d5 phi1 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.18 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03d6 omega1 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) 2.26 (Sans ExtraLight) +U+03d7 uni03D7 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+03d8 uni03D8 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) 2.26 (Sans ExtraLight) +U+03d9 uni03D9 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) 2.26 (Sans ExtraLight) +U+03da uni03DA 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+03db uni03DB 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+03dc uni03DC 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03dd uni03DD 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+03de uni03DE 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+03df uni03DF 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+03e0 uni03E0 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+03e1 uni03E1 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+03e2 uni03E2 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+03e3 uni03E3 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+03e4 uni03E4 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+03e5 uni03E5 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+03e6 uni03E6 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+03e7 uni03E7 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+03e8 uni03E8 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+03e9 uni03E9 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+03ea uni03EA 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+03eb uni03EB 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+03ec uni03EC 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+03ed uni03ED 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+03ee uni03EE 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+03ef uni03EF 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+03f0 uni03F0 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+03f1 uni03F1 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) 2.26 (Sans ExtraLight) +U+03f2 uni03F2 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03f3 uni03F3 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03f4 uni03F4 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03f5 uni03F5 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03f6 uni03F6 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03f7 uni03F7 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03f8 uni03F8 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03f9 uni03F9 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03fa uni03FA 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+03fb uni03FB 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+03fc uni03FC 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) 2.26 (Sans ExtraLight) +U+03fd uni03FD 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03fe uni03FE 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+03ff uni03FF 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0400 uni0400 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0401 uni0401 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0402 uni0402 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0403 uni0403 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0404 uni0404 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0405 uni0405 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0406 uni0406 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0407 uni0407 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0408 uni0408 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0409 uni0409 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+040a uni040A 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+040b uni040B 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+040c uni040C 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+040d uni040D 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+040e uni040E 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+040f uni040F 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0410 uni0410 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0411 uni0411 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0412 uni0412 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0413 uni0413 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0414 uni0414 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0415 uni0415 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0416 uni0416 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0417 uni0417 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0418 uni0418 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0419 uni0419 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+041a uni041A 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+041b uni041B 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+041c uni041C 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+041d uni041D 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+041e uni041E 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+041f uni041F 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0420 uni0420 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0421 uni0421 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0422 uni0422 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0423 uni0423 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0424 uni0424 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0425 uni0425 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0426 uni0426 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0427 uni0427 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0428 uni0428 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0429 uni0429 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+042a uni042A 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+042b uni042B 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+042c uni042C 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+042d uni042D 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+042e uni042E 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+042f uni042F 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0430 uni0430 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0431 uni0431 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0432 uni0432 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0433 uni0433 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0434 uni0434 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0435 uni0435 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0436 uni0436 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0437 uni0437 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0438 uni0438 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0439 uni0439 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+043a uni043A 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+043b uni043B 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+043c uni043C 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+043d uni043D 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+043e uni043E 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+043f uni043F 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0440 uni0440 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0441 uni0441 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0442 uni0442 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0443 uni0443 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0444 uni0444 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0445 uni0445 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0446 uni0446 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0447 uni0447 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0448 uni0448 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0449 uni0449 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+044a uni044A 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+044b uni044B 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+044c uni044C 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+044d uni044D 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+044e uni044E 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+044f uni044F 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0450 uni0450 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0451 uni0451 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0452 uni0452 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0453 uni0453 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0454 uni0454 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0455 uni0455 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0456 uni0456 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0457 uni0457 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0458 uni0458 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0459 uni0459 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+045a uni045A 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+045b uni045B 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+045c uni045C 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+045d uni045D 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+045e uni045E 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+045f uni045F 1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+0460 uni0460 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0461 uni0461 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) +U+0462 uni0462 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.20 (Sans ExtraLight) 2.23 (Serif Italic Condensed) 2.30 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0463 uni0463 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.20 (Sans ExtraLight) 2.23 (Serif Italic Condensed) 2.30 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0464 uni0464 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+0465 uni0465 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+0466 uni0466 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0467 uni0467 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0468 uni0468 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0469 uni0469 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+046a uni046A 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.21 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+046b uni046B 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.21 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+046c uni046C 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+046d uni046D 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+046e uni046E 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+046f uni046F 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0470 uni0470 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+0471 uni0471 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+0472 uni0472 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.10 (Sans ExtraLight) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0473 uni0473 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0474 uni0474 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.12 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+0475 uni0475 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.12 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+0476 uni0476 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0477 uni0477 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0478 uni0478 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0479 uni0479 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+047a uni047A 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+047b uni047B 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+047c uni047C 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+047d uni047D 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+047e uni047E 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+047f uni047F 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0480 uni0480 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0481 uni0481 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0482 uni0482 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0483 uni0483 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0484 uni0484 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0485 uni0485 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0486 uni0486 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0487 uni0487 2.9 (Sans, Sans Condensed) 2.27 (Sans Bold, Sans Bold Oblique, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0488 uni0488 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0489 uni0489 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+048a uni048A 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+048b uni048B 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+048c uni048C 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+048d uni048D 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+048e uni048E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+048f uni048F 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0490 uni0490 1.15 +U+0491 uni0491 1.15 +U+0492 uni0492 1.14 +U+0493 uni0493 1.14 +U+0494 uni0494 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+0495 uni0495 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+0496 uni0496 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0497 uni0497 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0498 uni0498 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+0499 uni0499 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+049a uni049A 1.14 +U+049b uni049B 1.14 +U+049c uni049C 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+049d uni049D 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+049e uni049E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+049f uni049F 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04a0 uni04A0 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans ExtraLight) +U+04a1 uni04A1 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans ExtraLight) +U+04a2 uni04A2 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04a3 uni04A3 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04a4 uni04A4 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.10 (Sans ExtraLight) 2.23 (Serif Italic Condensed) 2.31 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+04a5 uni04A5 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.10 (Sans ExtraLight) 2.23 (Serif Italic Condensed) 2.31 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+04a6 uni04A6 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04a7 uni04A7 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04a8 uni04A8 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+04a9 uni04A9 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+04aa uni04AA 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04ab uni04AB 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04ac uni04AC 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04ad uni04AD 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04ae uni04AE 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04af uni04AF 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04b0 uni04B0 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+04b1 uni04B1 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+04b2 uni04B2 1.14 +U+04b3 uni04B3 1.14 +U+04b4 uni04B4 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.10 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+04b5 uni04B5 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.10 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+04b6 uni04B6 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04b7 uni04B7 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04b8 uni04B8 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+04b9 uni04B9 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+04ba uni04BA 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+04bb uni04BB 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04bc uni04BC 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+04bd uni04BD 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+04be uni04BE 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+04bf uni04BF 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+04c0 uni04C0 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04c1 uni04C1 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+04c2 uni04C2 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+04c3 uni04C3 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+04c4 uni04C4 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+04c5 uni04C5 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+04c6 uni04C6 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+04c7 uni04C7 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) 2.26 (Sans ExtraLight) +U+04c8 uni04C8 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) 2.26 (Sans ExtraLight) +U+04c9 uni04C9 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+04ca uni04CA 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+04cb uni04CB 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04cc uni04CC 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04cd uni04CD 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+04ce uni04CE 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+04cf uni04CF 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04d0 uni04D0 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+04d1 uni04D1 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+04d2 uni04D2 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+04d3 uni04D3 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+04d4 uni04D4 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+04d5 uni04D5 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+04d6 uni04D6 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+04d7 uni04D7 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+04d8 uni04D8 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04d9 uni04D9 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04da uni04DA 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04db uni04DB 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04dc uni04DC 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+04dd uni04DD 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+04de uni04DE 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04df uni04DF 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04e0 uni04E0 2.3 +U+04e1 uni04E1 2.3 +U+04e2 uni04E2 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04e3 uni04E3 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04e4 uni04E4 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04e5 uni04E5 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04e6 uni04E6 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+04e7 uni04E7 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+04e8 uni04E8 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+04e9 uni04E9 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+04ea uni04EA 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+04eb uni04EB 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+04ec uni04EC 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+04ed uni04ED 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+04ee uni04EE 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+04ef uni04EF 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04f0 uni04F0 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+04f1 uni04F1 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04f2 uni04F2 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+04f3 uni04F3 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04f4 uni04F4 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+04f5 uni04F5 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+04f6 uni04F6 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04f7 uni04F7 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04f8 uni04F8 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+04f9 uni04F9 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+04fa uni04FA 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+04fb uni04FB 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+04fc uni04FC 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+04fd uni04FD 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+04fe uni04FE 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) +U+04ff uni04FF 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) +U+0500 uni0500 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) +U+0501 uni0501 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) +U+0502 uni0502 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0503 uni0503 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0504 uni0504 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0505 uni0505 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0506 uni0506 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0507 uni0507 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0508 uni0508 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0509 uni0509 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+050a uni050A 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+050b uni050B 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+050c uni050C 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+050d uni050D 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+050e uni050E 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+050f uni050F 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0510 uni0510 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+0511 uni0511 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+0512 uni0512 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+0513 uni0513 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+0514 uni0514 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+0515 uni0515 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+0516 uni0516 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0517 uni0517 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0518 uni0518 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0519 uni0519 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+051a uni051A 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+051b uni051B 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+051c uni051C 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+051d uni051D 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+0520 uni0520 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0521 uni0521 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0522 uni0522 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0523 uni0523 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0524 uni0524 2.29 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0525 uni0525 2.29 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0531 uni0531 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0532 uni0532 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0533 uni0533 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0534 uni0534 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0535 uni0535 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0536 uni0536 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0537 uni0537 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0538 uni0538 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0539 uni0539 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+053a uni053A 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+053b uni053B 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+053c uni053C 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+053d uni053D 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+053e uni053E 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+053f uni053F 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0540 uni0540 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0541 uni0541 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0542 uni0542 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0543 uni0543 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0544 uni0544 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0545 uni0545 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0546 uni0546 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0547 uni0547 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0548 uni0548 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) +U+0549 uni0549 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+054a uni054A 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+054b uni054B 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+054c uni054C 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+054d uni054D 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) +U+054e uni054E 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+054f uni054F 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) +U+0550 uni0550 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) +U+0551 uni0551 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0552 uni0552 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0553 uni0553 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) +U+0554 uni0554 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0555 uni0555 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) +U+0556 uni0556 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0559 uni0559 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+055a uni055A 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) +U+055b uni055B 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+055c uni055C 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+055d uni055D 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) +U+055e uni055E 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+055f uni055F 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0561 uni0561 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) +U+0562 uni0562 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) +U+0563 uni0563 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) +U+0564 uni0564 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) +U+0565 uni0565 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) +U+0566 uni0566 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) +U+0567 uni0567 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0568 uni0568 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) +U+0569 uni0569 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+056a uni056A 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+056b uni056B 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) +U+056c uni056C 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) +U+056d uni056D 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) +U+056e uni056E 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+056f uni056F 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) +U+0570 uni0570 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) +U+0571 uni0571 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0572 uni0572 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) +U+0573 uni0573 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0574 uni0574 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0575 uni0575 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) +U+0576 uni0576 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0577 uni0577 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0578 uni0578 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) +U+0579 uni0579 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+057a uni057A 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) +U+057b uni057B 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+057c uni057C 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) +U+057d uni057D 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) +U+057e uni057E 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) +U+057f uni057F 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) +U+0580 uni0580 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) +U+0581 uni0581 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) +U+0582 uni0582 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) +U+0583 uni0583 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) +U+0584 uni0584 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0585 uni0585 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) +U+0586 uni0586 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0587 uni0587 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) +U+0589 uni0589 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) +U+058a uni058A 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05b0 uni05B0 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05b1 uni05B1 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05b2 uni05B2 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05b3 uni05B3 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05b4 uni05B4 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05b5 uni05B5 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05b6 uni05B6 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05b7 uni05B7 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05b8 uni05B8 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05b9 uni05B9 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05ba uni05BA 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+05bb uni05BB 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05bc uni05BC 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05bd uni05BD 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05be uni05BE 2.9 (Sans Condensed Oblique, Sans Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique) +U+05bf uni05BF 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05c0 uni05C0 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05c1 uni05C1 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05c2 uni05C2 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05c3 uni05C3 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05c6 uni05C6 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05c7 uni05C7 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05d0 uni05D0 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05d1 uni05D1 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05d2 uni05D2 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05d3 uni05D3 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05d4 uni05D4 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05d5 uni05D5 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05d6 uni05D6 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05d7 uni05D7 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05d8 uni05D8 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05d9 uni05D9 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05da uni05DA 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05db uni05DB 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05dc uni05DC 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05dd uni05DD 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05de uni05DE 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05df uni05DF 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05e0 uni05E0 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05e1 uni05E1 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05e2 uni05E2 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05e3 uni05E3 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05e4 uni05E4 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05e5 uni05E5 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05e6 uni05E6 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05e7 uni05E7 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05e8 uni05E8 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05e9 uni05E9 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05ea uni05EA 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05f0 uni05F0 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05f1 uni05F1 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05f2 uni05F2 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+05f3 uni05F3 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+05f4 uni05F4 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+0606 uni0606 2.26 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold) +U+0607 uni0607 2.26 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold) +U+0609 uni0609 2.26 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold) +U+060a uni060A 2.26 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold) +U+060c uni060C 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0615 uni0615 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+061b uni061B 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+061f uni061F 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0621 uni0621 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0622 uni0622 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0623 uni0623 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0624 uni0624 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0625 uni0625 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0626 uni0626 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0627 uni0627 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0628 uni0628 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0629 uni0629 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+062a uni062A 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+062b uni062B 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+062c uni062C 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+062d uni062D 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+062e uni062E 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+062f uni062F 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0630 uni0630 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0631 uni0631 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0632 uni0632 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0633 uni0633 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0634 uni0634 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0635 uni0635 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0636 uni0636 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0637 uni0637 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0638 uni0638 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0639 uni0639 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+063a uni063A 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0640 uni0640 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0641 uni0641 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0642 uni0642 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0643 uni0643 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0644 uni0644 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0645 uni0645 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0646 uni0646 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0647 uni0647 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0648 uni0648 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0649 uni0649 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+064a uni064A 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+064b uni064B 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+064c uni064C 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+064d uni064D 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+064e uni064E 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+064f uni064F 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0650 uni0650 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0651 uni0651 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0652 uni0652 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0653 uni0653 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0654 uni0654 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0655 uni0655 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0657 uni0657 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+065a uni065A 2.7 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0660 uni0660 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0661 uni0661 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0662 uni0662 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0663 uni0663 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0664 uni0664 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0665 uni0665 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0666 uni0666 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0667 uni0667 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0668 uni0668 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0669 uni0669 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+066a uni066A 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+066b uni066B 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+066c uni066C 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+066d uni066D 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+066e uni066E 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+066f uni066F 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0670 uni0670 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+0674 uni0674 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans ExtraLight) 2.16 (Sans Mono, Sans Mono Bold) +U+0679 uni0679 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+067a uni067A 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+067b uni067B 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+067c uni067C 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+067d uni067D 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+067e uni067E 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+067f uni067F 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0680 uni0680 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0681 uni0681 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0682 uni0682 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0683 uni0683 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0684 uni0684 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0685 uni0685 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0686 uni0686 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0687 uni0687 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0688 uni0688 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+0689 uni0689 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+068a uni068A 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+068b uni068B 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+068c uni068C 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+068d uni068D 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+068e uni068E 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+068f uni068F 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+0690 uni0690 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+0691 uni0691 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0692 uni0692 2.7 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0693 uni0693 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+0694 uni0694 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+0695 uni0695 2.7 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+0696 uni0696 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+0697 uni0697 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+0698 uni0698 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+0699 uni0699 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+069a uni069A 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+069b uni069B 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+069c uni069C 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+069d uni069D 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+069e uni069E 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+069f uni069F 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+06a0 uni06A0 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+06a1 uni06A1 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+06a2 uni06A2 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+06a3 uni06A3 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+06a4 uni06A4 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+06a5 uni06A5 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+06a6 uni06A6 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+06a7 uni06A7 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+06a8 uni06A8 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+06a9 uni06A9 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+06aa uni06AA 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+06ab uni06AB 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+06ac uni06AC 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+06ad uni06AD 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+06ae uni06AE 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+06af uni06AF 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+06b0 uni06B0 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+06b1 uni06B1 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+06b2 uni06B2 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+06b3 uni06B3 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+06b4 uni06B4 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+06b5 uni06B5 2.7 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+06b6 uni06B6 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+06b7 uni06B7 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+06b8 uni06B8 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+06b9 uni06B9 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+06ba uni06BA 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+06bb uni06BB 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+06bc uni06BC 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+06bd uni06BD 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+06be uni06BE 2.16 (Sans Mono, Sans Mono Bold) 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+06bf uni06BF 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+06c6 uni06C6 2.7 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+06cc uni06CC 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+06ce uni06CE 2.7 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+06d5 uni06D5 2.10 (Sans, Sans Bold) 2.11 (Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+06f0 uni06F0 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+06f1 uni06F1 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+06f2 uni06F2 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+06f3 uni06F3 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+06f4 uni06F4 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+06f5 uni06F5 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+06f6 uni06F6 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+06f7 uni06F7 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+06f8 uni06F8 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+06f9 uni06F9 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+07c0 uni07C0 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07c1 uni07C1 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07c2 uni07C2 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07c3 uni07C3 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07c4 uni07C4 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07c5 uni07C5 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07c6 uni07C6 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07c7 uni07C7 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07c8 uni07C8 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07c9 uni07C9 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07ca uni07CA 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07cb uni07CB 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07cc uni07CC 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07cd uni07CD 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07ce uni07CE 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07cf uni07CF 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07d0 uni07D0 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07d1 uni07D1 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07d2 uni07D2 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07d3 uni07D3 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07d4 uni07D4 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07d5 uni07D5 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07d6 uni07D6 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07d7 uni07D7 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07d8 uni07D8 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07d9 uni07D9 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07da uni07DA 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07db uni07DB 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07dc uni07DC 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07dd uni07DD 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07de uni07DE 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07df uni07DF 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07e0 uni07E0 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07e1 uni07E1 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07e2 uni07E2 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07e3 uni07E3 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07e4 uni07E4 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07e5 uni07E5 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07e6 uni07E6 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07e7 uni07E7 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07eb uni07EB 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07ec uni07EC 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07ed uni07ED 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07ee uni07EE 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07ef uni07EF 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07f0 uni07F0 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07f1 uni07F1 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07f2 uni07F2 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07f3 uni07F3 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07f4 uni07F4 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07f5 uni07F5 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07f8 uni07F8 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07f9 uni07F9 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+07fa uni07FA 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+0e3f uni0E3F 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+0e81 uni0E81 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0e82 uni0E82 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0e84 uni0E84 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0e87 uni0E87 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0e88 uni0E88 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0e8a uni0E8A 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0e8d uni0E8D 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0e94 uni0E94 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0e95 uni0E95 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0e96 uni0E96 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0e97 uni0E97 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0e99 uni0E99 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0e9a uni0E9A 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0e9b uni0E9B 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0e9c uni0E9C 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0e9d uni0E9D 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0e9e uni0E9E 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0e9f uni0E9F 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0ea1 uni0EA1 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0ea2 uni0EA2 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0ea3 uni0EA3 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0ea5 uni0EA5 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0ea7 uni0EA7 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0eaa uni0EAA 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0eab uni0EAB 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0ead uni0EAD 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0eae uni0EAE 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0eaf uni0EAF 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0eb0 uni0EB0 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0eb1 uni0EB1 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0eb2 uni0EB2 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0eb3 uni0EB3 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0eb4 uni0EB4 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0eb5 uni0EB5 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0eb6 uni0EB6 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0eb7 uni0EB7 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0eb8 uni0EB8 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0eb9 uni0EB9 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0ebb uni0EBB 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0ebc uni0EBC 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0ebd uni0EBD 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+0ec0 uni0EC0 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+0ec1 uni0EC1 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+0ec2 uni0EC2 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+0ec3 uni0EC3 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+0ec4 uni0EC4 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+0ec6 uni0EC6 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+0ec8 uni0EC8 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0ec9 uni0EC9 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0eca uni0ECA 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0ecb uni0ECB 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0ecc uni0ECC 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0ecd uni0ECD 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+0ed0 uni0ED0 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+0ed1 uni0ED1 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+0ed2 uni0ED2 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+0ed3 uni0ED3 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+0ed4 uni0ED4 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+0ed5 uni0ED5 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+0ed6 uni0ED6 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+0ed7 uni0ED7 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+0ed8 uni0ED8 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+0ed9 uni0ED9 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+0edc uni0EDC 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+0edd uni0EDD 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+10a0 uni10A0 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10a1 uni10A1 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10a2 uni10A2 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10a3 uni10A3 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10a4 uni10A4 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10a5 uni10A5 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10a6 uni10A6 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10a7 uni10A7 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10a8 uni10A8 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10a9 uni10A9 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10aa uni10AA 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10ab uni10AB 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10ac uni10AC 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10ad uni10AD 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10ae uni10AE 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10af uni10AF 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10b0 uni10B0 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10b1 uni10B1 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10b2 uni10B2 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10b3 uni10B3 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10b4 uni10B4 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10b5 uni10B5 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10b6 uni10B6 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10b7 uni10B7 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10b8 uni10B8 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10b9 uni10B9 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10ba uni10BA 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10bb uni10BB 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10bc uni10BC 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10bd uni10BD 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10be uni10BE 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10bf uni10BF 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10c0 uni10C0 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10c1 uni10C1 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10c2 uni10C2 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10c3 uni10C3 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10c4 uni10C4 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10c5 uni10C5 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+10d0 uni10D0 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10d1 uni10D1 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10d2 uni10D2 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10d3 uni10D3 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10d4 uni10D4 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10d5 uni10D5 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10d6 uni10D6 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10d7 uni10D7 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10d8 uni10D8 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10d9 uni10D9 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10da uni10DA 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10db uni10DB 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10dc uni10DC 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10dd uni10DD 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10de uni10DE 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10df uni10DF 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10e0 uni10E0 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10e1 uni10E1 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10e2 uni10E2 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10e3 uni10E3 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10e4 uni10E4 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10e5 uni10E5 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10e6 uni10E6 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10e7 uni10E7 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10e8 uni10E8 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10e9 uni10E9 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10ea uni10EA 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10eb uni10EB 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10ec uni10EC 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10ed uni10ED 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10ee uni10EE 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10ef uni10EF 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10f0 uni10F0 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10f1 uni10F1 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10f2 uni10F2 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10f3 uni10F3 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10f4 uni10F4 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10f5 uni10F5 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10f6 uni10F6 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10f7 uni10F7 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10f8 uni10F8 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10f9 uni10F9 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10fa uni10FA 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10fb uni10FB 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+10fc uni10FC 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+1401 uni1401 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1402 uni1402 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1403 uni1403 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1404 uni1404 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1405 uni1405 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1406 uni1406 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1407 uni1407 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1409 uni1409 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+140a uni140A 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+140b uni140B 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+140c uni140C 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+140d uni140D 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+140e uni140E 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+140f uni140F 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1410 uni1410 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1411 uni1411 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1412 uni1412 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1413 uni1413 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1414 uni1414 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1415 uni1415 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1416 uni1416 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1417 uni1417 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1418 uni1418 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1419 uni1419 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+141a uni141A 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+141b uni141B 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+141d uni141D 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+141e uni141E 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+141f uni141F 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1420 uni1420 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1421 uni1421 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1422 uni1422 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1423 uni1423 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1424 uni1424 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1425 uni1425 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1426 uni1426 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1427 uni1427 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1428 uni1428 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1429 uni1429 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+142a uni142A 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+142b uni142B 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+142c uni142C 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+142d uni142D 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+142e uni142E 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+142f uni142F 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1430 uni1430 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1431 uni1431 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1432 uni1432 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1433 uni1433 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1434 uni1434 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1435 uni1435 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1437 uni1437 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1438 uni1438 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1439 uni1439 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+143a uni143A 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+143b uni143B 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+143c uni143C 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+143d uni143D 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+143e uni143E 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+143f uni143F 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1440 uni1440 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1441 uni1441 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1442 uni1442 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1443 uni1443 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1444 uni1444 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1445 uni1445 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1446 uni1446 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1447 uni1447 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1448 uni1448 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1449 uni1449 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+144a uni144A 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+144c uni144C 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+144d uni144D 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+144e uni144E 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+144f uni144F 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1450 uni1450 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1451 uni1451 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1452 uni1452 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1454 uni1454 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1455 uni1455 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1456 uni1456 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1457 uni1457 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1458 uni1458 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1459 uni1459 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+145a uni145A 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+145b uni145B 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+145c uni145C 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+145d uni145D 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+145e uni145E 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+145f uni145F 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1460 uni1460 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1461 uni1461 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1462 uni1462 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1463 uni1463 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1464 uni1464 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1465 uni1465 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1466 uni1466 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1467 uni1467 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1468 uni1468 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1469 uni1469 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+146a uni146A 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+146b uni146B 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+146c uni146C 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+146d uni146D 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+146e uni146E 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+146f uni146F 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1470 uni1470 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1471 uni1471 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1472 uni1472 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1473 uni1473 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1474 uni1474 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1475 uni1475 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1476 uni1476 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1477 uni1477 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1478 uni1478 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1479 uni1479 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+147a uni147A 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+147b uni147B 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+147c uni147C 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+147d uni147D 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+147e uni147E 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+147f uni147F 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1480 uni1480 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1481 uni1481 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1482 uni1482 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1483 uni1483 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1484 uni1484 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1485 uni1485 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1486 uni1486 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1487 uni1487 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1488 uni1488 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1489 uni1489 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+148a uni148A 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+148b uni148B 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+148c uni148C 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+148d uni148D 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+148e uni148E 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+148f uni148F 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1490 uni1490 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1491 uni1491 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1492 uni1492 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1493 uni1493 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1494 uni1494 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1495 uni1495 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1496 uni1496 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1497 uni1497 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1498 uni1498 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1499 uni1499 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+149a uni149A 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+149b uni149B 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+149c uni149C 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+149d uni149D 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+149e uni149E 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+149f uni149F 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14a0 uni14A0 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14a1 uni14A1 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14a2 uni14A2 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14a3 uni14A3 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14a4 uni14A4 2.13 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Condensed Oblique, Sans Oblique) 2.15 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+14a5 uni14A5 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14a6 uni14A6 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14a7 uni14A7 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14a8 uni14A8 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14a9 uni14A9 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14aa uni14AA 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14ab uni14AB 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14ac uni14AC 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14ad uni14AD 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14ae uni14AE 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14af uni14AF 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14b0 uni14B0 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14b1 uni14B1 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14b2 uni14B2 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14b3 uni14B3 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14b4 uni14B4 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14b5 uni14B5 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14b6 uni14B6 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14b7 uni14B7 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14b8 uni14B8 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14b9 uni14B9 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14ba uni14BA 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14bb uni14BB 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14bc uni14BC 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14bd uni14BD 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14c0 uni14C0 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14c1 uni14C1 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14c2 uni14C2 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14c3 uni14C3 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14c4 uni14C4 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14c5 uni14C5 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14c6 uni14C6 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14c7 uni14C7 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14c8 uni14C8 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14c9 uni14C9 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14ca uni14CA 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14cb uni14CB 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14cc uni14CC 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14cd uni14CD 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14ce uni14CE 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14cf uni14CF 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14d0 uni14D0 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14d1 uni14D1 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14d2 uni14D2 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14d3 uni14D3 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14d4 uni14D4 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14d5 uni14D5 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14d6 uni14D6 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14d7 uni14D7 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14d8 uni14D8 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14d9 uni14D9 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14da uni14DA 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14db uni14DB 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14dc uni14DC 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14dd uni14DD 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14de uni14DE 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14df uni14DF 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14e0 uni14E0 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14e1 uni14E1 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14e2 uni14E2 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14e3 uni14E3 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14e4 uni14E4 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14e5 uni14E5 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14e6 uni14E6 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14e7 uni14E7 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14e8 uni14E8 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14e9 uni14E9 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14ea uni14EA 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14ec uni14EC 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14ed uni14ED 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14ee uni14EE 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14ef uni14EF 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14f0 uni14F0 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14f1 uni14F1 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14f2 uni14F2 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14f3 uni14F3 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14f4 uni14F4 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14f5 uni14F5 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14f6 uni14F6 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14f7 uni14F7 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14f8 uni14F8 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14f9 uni14F9 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14fa uni14FA 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14fb uni14FB 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14fc uni14FC 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14fd uni14FD 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14fe uni14FE 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+14ff uni14FF 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1500 uni1500 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1501 uni1501 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1502 uni1502 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1503 uni1503 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1504 uni1504 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1505 uni1505 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1506 uni1506 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1507 uni1507 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1510 uni1510 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1511 uni1511 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1512 uni1512 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1513 uni1513 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1514 uni1514 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1515 uni1515 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1516 uni1516 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1517 uni1517 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1518 uni1518 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1519 uni1519 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+151a uni151A 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+151b uni151B 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+151c uni151C 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+151d uni151D 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+151e uni151E 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+151f uni151F 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1520 uni1520 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1521 uni1521 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1522 uni1522 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1523 uni1523 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1524 uni1524 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1525 uni1525 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1526 uni1526 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1527 uni1527 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1528 uni1528 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1529 uni1529 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+152a uni152A 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+152b uni152B 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+152c uni152C 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+152d uni152D 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+152e uni152E 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+152f uni152F 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1530 uni1530 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1531 uni1531 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1532 uni1532 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1533 uni1533 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1534 uni1534 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1535 uni1535 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1536 uni1536 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1537 uni1537 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1538 uni1538 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1539 uni1539 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+153a uni153A 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+153b uni153B 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+153c uni153C 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+153d uni153D 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+153e uni153E 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1540 uni1540 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1541 uni1541 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1542 uni1542 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1543 uni1543 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1544 uni1544 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1545 uni1545 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1546 uni1546 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1547 uni1547 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1548 uni1548 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1549 uni1549 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+154a uni154A 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+154b uni154B 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+154c uni154C 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+154d uni154D 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+154e uni154E 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+154f uni154F 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1550 uni1550 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1552 uni1552 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1553 uni1553 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1554 uni1554 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1555 uni1555 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1556 uni1556 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1557 uni1557 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1558 uni1558 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1559 uni1559 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+155a uni155A 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+155b uni155B 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+155c uni155C 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+155d uni155D 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+155e uni155E 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+155f uni155F 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1560 uni1560 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1561 uni1561 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1562 uni1562 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1563 uni1563 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1564 uni1564 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1565 uni1565 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1566 uni1566 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1567 uni1567 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1568 uni1568 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1569 uni1569 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+156a uni156A 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1574 uni1574 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1575 uni1575 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1576 uni1576 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1577 uni1577 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1578 uni1578 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1579 uni1579 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+157a uni157A 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+157b uni157B 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+157c uni157C 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+157d uni157D 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+157e uni157E 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+157f uni157F 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1580 uni1580 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1581 uni1581 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1582 uni1582 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1583 uni1583 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1584 uni1584 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1585 uni1585 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+158a uni158A 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+158b uni158B 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+158c uni158C 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+158d uni158D 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+158e uni158E 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+158f uni158F 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1590 uni1590 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1591 uni1591 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1592 uni1592 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1593 uni1593 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1594 uni1594 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1595 uni1595 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1596 uni1596 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+15a0 uni15A0 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+15a1 uni15A1 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+15a2 uni15A2 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+15a3 uni15A3 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+15a4 uni15A4 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+15a5 uni15A5 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+15a6 uni15A6 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+15a7 uni15A7 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+15a8 uni15A8 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+15a9 uni15A9 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+15aa uni15AA 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+15ab uni15AB 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+15ac uni15AC 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+15ad uni15AD 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+15ae uni15AE 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+15af uni15AF 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+15de uni15DE 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+15e1 uni15E1 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1646 uni1646 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1647 uni1647 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+166e uni166E 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+166f uni166F 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1670 uni1670 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1671 uni1671 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1672 uni1672 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1673 uni1673 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1674 uni1674 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1675 uni1675 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1676 uni1676 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1680 uni1680 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+1681 uni1681 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+1682 uni1682 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+1683 uni1683 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+1684 uni1684 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+1685 uni1685 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+1686 uni1686 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+1687 uni1687 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+1688 uni1688 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+1689 uni1689 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+168a uni168A 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+168b uni168B 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+168c uni168C 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+168d uni168D 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+168e uni168E 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+168f uni168F 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+1690 uni1690 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+1691 uni1691 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+1692 uni1692 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+1693 uni1693 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+1694 uni1694 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+1695 uni1695 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+1696 uni1696 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+1697 uni1697 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+1698 uni1698 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+1699 uni1699 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+169a uni169A 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+169b uni169B 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+169c uni169C 2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight) +U+1d00 uni1D00 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d01 uni1D01 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d02 uni1D02 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1d03 uni1D03 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d04 uni1D04 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) +U+1d05 uni1D05 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d06 uni1D06 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d07 uni1D07 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d08 uni1D08 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+1d09 uni1D09 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1d0a uni1D0A 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d0b uni1D0B 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) +U+1d0c uni1D0C 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d0d uni1D0D 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) +U+1d0e uni1D0E 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) +U+1d0f uni1D0F 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) +U+1d10 uni1D10 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) +U+1d11 uni1D11 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) +U+1d12 uni1D12 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) +U+1d13 uni1D13 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) +U+1d14 uni1D14 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1d16 uni1D16 2.3 +U+1d17 uni1D17 2.3 +U+1d18 uni1D18 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d19 uni1D19 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) +U+1d1a uni1D1A 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) +U+1d1b uni1D1B 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d1c uni1D1C 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d1d uni1D1D 2.3 +U+1d1e uni1D1E 2.3 +U+1d1f uni1D1F 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+1d20 uni1D20 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) +U+1d21 uni1D21 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) +U+1d22 uni1D22 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) +U+1d23 uni1D23 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d26 uni1D26 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) +U+1d27 uni1D27 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) +U+1d28 uni1D28 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) +U+1d29 uni1D29 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d2a uni1D2A 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d2b uni1D2B 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) +U+1d2c uni1D2C 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+1d2d uni1D2D 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+1d2e uni1D2E 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+1d30 uni1D30 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+1d31 uni1D31 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+1d32 uni1D32 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+1d33 uni1D33 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+1d34 uni1D34 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+1d35 uni1D35 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+1d36 uni1D36 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+1d37 uni1D37 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+1d38 uni1D38 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+1d39 uni1D39 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+1d3a uni1D3A 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+1d3b uni1D3B 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+1d3c uni1D3C 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+1d3d uni1D3D 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono Oblique) +U+1d3e uni1D3E 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+1d3f uni1D3F 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+1d40 uni1D40 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+1d41 uni1D41 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+1d42 uni1D42 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+1d43 uni1D43 2.3 +U+1d44 uni1D44 2.3 +U+1d45 uni1D45 2.3 +U+1d46 uni1D46 2.3 +U+1d47 uni1D47 2.3 +U+1d48 uni1D48 2.3 +U+1d49 uni1D49 2.3 +U+1d4a uni1D4A 2.3 +U+1d4b uni1D4B 2.3 +U+1d4c uni1D4C 2.3 +U+1d4d uni1D4D 2.3 +U+1d4e uni1D4E 2.3 +U+1d4f uni1D4F 2.3 +U+1d50 uni1D50 2.3 +U+1d51 uni1D51 2.3 +U+1d52 uni1D52 2.3 +U+1d53 uni1D53 2.3 +U+1d54 uni1D54 2.3 +U+1d55 uni1D55 2.3 +U+1d56 uni1D56 2.3 +U+1d57 uni1D57 2.3 +U+1d58 uni1D58 2.3 +U+1d59 uni1D59 2.3 +U+1d5a uni1D5A 2.3 +U+1d5b uni1D5B 2.3 +U+1d5d uni1D5D 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+1d5e uni1D5E 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+1d5f uni1D5F 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+1d60 uni1D60 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+1d61 uni1D61 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+1d62 uni1D62 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+1d63 uni1D63 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+1d64 uni1D64 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+1d65 uni1D65 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+1d66 uni1D66 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+1d67 uni1D67 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+1d68 uni1D68 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+1d69 uni1D69 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+1d6a uni1D6A 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+1d77 uni1D77 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1d78 uni1D78 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+1d7b uni1D7B 2.3 +U+1d7d uni1D7D 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d85 uni1D85 2.3 +U+1d9b uni1D9B 2.3 +U+1d9c uni1D9C 2.3 +U+1d9d uni1D9D 2.3 +U+1d9e uni1D9E 2.3 +U+1d9f uni1D9F 2.3 +U+1da0 uni1DA0 2.3 +U+1da1 uni1DA1 2.3 +U+1da2 uni1DA2 2.3 +U+1da3 uni1DA3 2.3 +U+1da4 uni1DA4 2.3 +U+1da5 uni1DA5 2.3 +U+1da6 uni1DA6 2.3 +U+1da7 uni1DA7 2.3 +U+1da8 uni1DA8 2.3 +U+1da9 uni1DA9 2.3 +U+1daa uni1DAA 2.3 +U+1dab uni1DAB 2.3 +U+1dac uni1DAC 2.3 +U+1dad uni1DAD 2.3 +U+1dae uni1DAE 2.3 +U+1daf uni1DAF 2.3 +U+1db0 uni1DB0 2.3 +U+1db1 uni1DB1 2.3 +U+1db2 uni1DB2 2.3 +U+1db3 uni1DB3 2.3 +U+1db4 uni1DB4 2.3 +U+1db5 uni1DB5 2.3 +U+1db6 uni1DB6 2.3 +U+1db7 uni1DB7 2.3 +U+1db8 uni1DB8 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+1db9 uni1DB9 2.3 +U+1dba uni1DBA 2.3 +U+1dbb uni1DBB 2.3 +U+1dbc uni1DBC 2.3 +U+1dbd uni1DBD 2.3 +U+1dbe uni1DBE 2.3 +U+1dbf uni1DBF 2.3 +U+1dc4 uni1DC4 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1dc5 uni1DC5 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1dc6 uni1DC6 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1dc7 uni1DC7 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1dc8 uni1DC8 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1dc9 uni1DC9 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1e00 uni1E00 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e01 uni1E01 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e02 uni1E02 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e03 uni1E03 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e04 uni1E04 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e05 uni1E05 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e06 uni1E06 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e07 uni1E07 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e08 uni1E08 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.22 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e09 uni1E09 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.22 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e0a uni1E0A 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e0b uni1E0B 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e0c uni1E0C 2.1 +U+1e0d uni1E0D 2.1 +U+1e0e uni1E0E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e0f uni1E0F 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e10 uni1E10 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.22 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e11 uni1E11 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.22 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e12 uni1E12 1.13 +U+1e13 uni1E13 1.13 +U+1e14 uni1E14 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1e15 uni1E15 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1e16 uni1E16 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1e17 uni1E17 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1e18 uni1E18 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e19 uni1E19 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e1a uni1E1A 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e1b uni1E1B 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e1c uni1E1C 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.17 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+1e1d uni1E1D 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.17 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+1e1e uni1E1E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e1f uni1E1F 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e20 uni1E20 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e21 uni1E21 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e22 uni1E22 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e23 uni1E23 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e24 uni1E24 2.1 +U+1e25 uni1E25 2.1 +U+1e26 uni1E26 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+1e27 uni1E27 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+1e28 uni1E28 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e29 uni1E29 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e2a uni1E2A 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e2b uni1E2B 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e2c uni1E2C 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e2d uni1E2D 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e2e uni1E2E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1e2f uni1E2F 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1e30 uni1E30 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e31 uni1E31 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e32 uni1E32 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e33 uni1E33 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e34 uni1E34 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e35 uni1E35 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e36 uni1E36 2.1 +U+1e37 uni1E37 2.1 +U+1e38 uni1E38 2.1 +U+1e39 uni1E39 2.1 +U+1e3a uni1E3A 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e3b uni1E3B 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e3c uni1E3C 1.13 +U+1e3d uni1E3D 1.13 +U+1e3e uni1E3E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e3f uni1E3F 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e40 uni1E40 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e41 uni1E41 2.1 +U+1e42 uni1E42 2.1 +U+1e43 uni1E43 2.1 +U+1e44 uni1E44 1.13 +U+1e45 uni1E45 1.13 +U+1e46 uni1E46 2.1 +U+1e47 uni1E47 2.1 +U+1e48 uni1E48 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e49 uni1E49 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e4a uni1E4A 1.13 +U+1e4b uni1E4B 1.13 +U+1e4c uni1E4C 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.30 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1e4d uni1E4D 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.30 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1e4e uni1E4E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1e4f uni1E4F 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1e50 uni1E50 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1e51 uni1E51 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1e52 uni1E52 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1e53 uni1E53 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1e54 uni1E54 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+1e55 uni1E55 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+1e56 uni1E56 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e57 uni1E57 2.1 +U+1e58 uni1E58 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e59 uni1E59 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e5a uni1E5A 2.1 +U+1e5b uni1E5B 2.1 +U+1e5c uni1E5C 2.1 +U+1e5d uni1E5D 2.1 +U+1e5e uni1E5E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e5f uni1E5F 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e60 uni1E60 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e61 uni1E61 2.1 +U+1e62 uni1E62 2.1 +U+1e63 uni1E63 2.1 +U+1e64 uni1E64 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1e65 uni1E65 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1e66 uni1E66 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1e67 uni1E67 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1e68 uni1E68 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e69 uni1E69 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e6a uni1E6A 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e6b uni1E6B 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e6c uni1E6C 2.1 +U+1e6d uni1E6D 2.1 +U+1e6e uni1E6E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e6f uni1E6F 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e70 uni1E70 1.13 +U+1e71 uni1E71 1.13 +U+1e72 uni1E72 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e73 uni1E73 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e74 uni1E74 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e75 uni1E75 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e76 uni1E76 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e77 uni1E77 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e78 uni1E78 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) 2.30 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+1e79 uni1E79 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) 2.30 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+1e7a uni1E7A 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1e7b uni1E7B 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1e7c uni1E7C 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+1e7d uni1E7D 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+1e7e uni1E7E 2.1 +U+1e7f uni1E7F 2.1 +U+1e80 Wgrave 1.2 +U+1e81 wgrave 1.2 +U+1e82 Wacute 1.2 +U+1e83 wacute 1.2 +U+1e84 Wdieresis 1.2 +U+1e85 wdieresis 1.2 +U+1e86 uni1E86 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e87 uni1E87 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e88 uni1E88 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e89 uni1E89 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e8a uni1E8A 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e8b uni1E8B 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e8c uni1E8C 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+1e8d uni1E8D 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+1e8e uni1E8E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e8f uni1E8F 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e90 uni1E90 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+1e91 uni1E91 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+1e92 uni1E92 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e93 uni1E93 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e94 uni1E94 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e95 uni1E95 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e96 uni1E96 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e97 uni1E97 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+1e98 uni1E98 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+1e99 uni1E99 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+1e9a uni1E9A 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.10 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1e9b uni1E9B 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1e9c uni1E9C 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+1e9d uni1E9D 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+1e9e uni1E9E 2.28 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) 2.32 (Sans ExtraLight) +U+1e9f uni1E9F 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1ea0 uni1EA0 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1ea1 uni1EA1 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1ea2 uni1EA2 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1ea3 uni1EA3 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1ea4 uni1EA4 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ea5 uni1EA5 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ea6 uni1EA6 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ea7 uni1EA7 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ea8 uni1EA8 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ea9 uni1EA9 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1eaa uni1EAA 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1eab uni1EAB 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1eac uni1EAC 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+1ead uni1EAD 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+1eae uni1EAE 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1eaf uni1EAF 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1eb0 uni1EB0 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.22 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1eb1 uni1EB1 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.22 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1eb2 uni1EB2 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1eb3 uni1EB3 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1eb4 uni1EB4 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1eb5 uni1EB5 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1eb6 uni1EB6 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+1eb7 uni1EB7 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+1eb8 uni1EB8 2.2 +U+1eb9 uni1EB9 2.2 +U+1eba uni1EBA 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1ebb uni1EBB 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1ebc uni1EBC 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1ebd uni1EBD 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1ebe uni1ebe 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ebf uni1ebF 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ec0 uni1EC0 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ec1 uni1EC1 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ec2 uni1EC2 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ec3 uni1EC3 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ec4 uni1EC4 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ec5 uni1EC5 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ec6 uni1EC6 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+1ec7 uni1EC7 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+1ec8 uni1EC8 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1ec9 uni1EC9 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1eca uni1ECA 2.2 +U+1ecb uni1ECB 2.2 +U+1ecc uni1ECC 2.2 +U+1ecd uni1ECD 2.2 +U+1ece uni1ECE 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1ecf uni1ECF 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1ed0 uni1ED0 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ed1 uni1ED1 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ed2 uni1ED2 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ed3 uni1ED3 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ed4 uni1ED4 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ed5 uni1ED5 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ed6 uni1ED6 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ed7 uni1ED7 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ed8 uni1ED8 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+1ed9 uni1ED9 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+1eda uni1EDA 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1edb uni1EDB 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1edc uni1EDC 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1edd uni1EDD 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ede uni1EDE 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1edf uni1EDF 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ee0 uni1EE0 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ee1 uni1EE1 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ee2 uni1EE2 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ee3 uni1EE3 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ee4 uni1EE4 2.2 +U+1ee5 uni1EE5 2.2 +U+1ee6 uni1EE6 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1ee7 uni1EE7 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1ee8 uni1EE8 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ee9 uni1EE9 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1eea uni1EEA 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1eeb uni1EEB 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1eec uni1EEC 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1eed uni1EED 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1eee uni1EEE 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1eef uni1EEF 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ef0 uni1EF0 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ef1 uni1EF1 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+1ef2 Ygrave 1.2 +U+1ef3 ygrave 1.2 +U+1ef4 uni1EF4 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1ef5 uni1EF5 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1ef6 uni1EF6 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1ef7 uni1EF7 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1ef8 uni1EF8 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1ef9 uni1EF9 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1efa uni1EFA 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+1efb uni1EFB 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+1f00 uni1F00 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f01 uni1F01 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f02 uni1F02 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f03 uni1F03 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f04 uni1F04 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f05 uni1F05 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f06 uni1F06 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f07 uni1F07 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f08 uni1F08 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f09 uni1F09 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f0a uni1F0A 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f0b uni1F0B 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f0c uni1F0C 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f0d uni1F0D 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f0e uni1F0E 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f0f uni1F0F 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f10 uni1F10 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f11 uni1F11 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f12 uni1F12 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f13 uni1F13 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f14 uni1F14 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f15 uni1F15 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f18 uni1F18 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f19 uni1F19 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f1a uni1F1A 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f1b uni1F1B 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f1c uni1F1C 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f1d uni1F1D 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f20 uni1F20 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f21 uni1F21 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f22 uni1F22 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f23 uni1F23 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f24 uni1F24 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f25 uni1F25 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f26 uni1F26 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f27 uni1F27 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f28 uni1F28 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f29 uni1F29 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f2a uni1F2A 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f2b uni1F2B 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f2c uni1F2C 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f2d uni1F2D 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f2e uni1F2E 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f2f uni1F2F 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f30 uni1F30 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f31 uni1F31 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f32 uni1F32 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f33 uni1F33 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f34 uni1F34 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f35 uni1F35 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f36 uni1F36 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f37 uni1F37 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f38 uni1F38 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f39 uni1F39 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f3a uni1F3A 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f3b uni1F3B 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f3c uni1F3C 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f3d uni1F3D 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f3e uni1F3E 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f3f uni1F3F 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f40 uni1F40 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f41 uni1F41 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f42 uni1F42 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f43 uni1F43 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f44 uni1F44 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f45 uni1F45 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f48 uni1F48 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f49 uni1F49 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f4a uni1F4A 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f4b uni1F4B 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f4c uni1F4C 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f4d uni1F4D 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f50 uni1F50 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f51 uni1F51 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f52 uni1F52 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f53 uni1F53 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f54 uni1F54 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f55 uni1F55 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f56 uni1F56 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f57 uni1F57 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f59 uni1F59 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f5b uni1F5B 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f5d uni1F5D 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f5f uni1F5F 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f60 uni1F60 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f61 uni1F61 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f62 uni1F62 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f63 uni1F63 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f64 uni1F64 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f65 uni1F65 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f66 uni1F66 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f67 uni1F67 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f68 uni1F68 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f69 uni1F69 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f6a uni1F6A 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f6b uni1F6B 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f6c uni1F6C 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f6d uni1F6D 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f6e uni1F6E 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f6f uni1F6F 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f70 uni1F70 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1f71 uni1F71 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1f72 uni1F72 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1f73 uni1F73 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1f74 uni1F74 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1f75 uni1F75 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1f76 uni1F76 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f77 uni1F77 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f78 uni1F78 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1f79 uni1F79 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1f7a uni1F7A 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f7b uni1F7B 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f7c uni1F7C 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f7d uni1F7D 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f80 uni1F80 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f81 uni1F81 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f82 uni1F82 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f83 uni1F83 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f84 uni1F84 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f85 uni1F85 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f86 uni1F86 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f87 uni1F87 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f88 uni1F88 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f89 uni1F89 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f8a uni1F8A 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f8b uni1F8B 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f8c uni1F8C 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f8d uni1F8D 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f8e uni1F8E 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f8f uni1F8F 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f90 uni1F90 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f91 uni1F91 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f92 uni1F92 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f93 uni1F93 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f94 uni1F94 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f95 uni1F95 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f96 uni1F96 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f97 uni1F97 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f98 uni1F98 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f99 uni1F99 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f9a uni1F9A 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f9b uni1F9B 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f9c uni1F9C 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f9d uni1F9D 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f9e uni1F9E 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1f9f uni1F9F 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fa0 uni1FA0 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fa1 uni1FA1 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fa2 uni1FA2 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fa3 uni1FA3 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fa4 uni1FA4 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fa5 uni1FA5 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fa6 uni1FA6 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fa7 uni1FA7 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fa8 uni1FA8 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fa9 uni1FA9 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1faa uni1FAA 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fab uni1FAB 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fac uni1FAC 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fad uni1FAD 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fae uni1FAE 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1faf uni1FAF 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fb0 uni1FB0 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fb1 uni1FB1 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fb2 uni1FB2 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fb3 uni1FB3 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fb4 uni1FB4 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fb6 uni1FB6 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fb7 uni1FB7 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fb8 uni1FB8 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1fb9 uni1FB9 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1fba uni1FBA 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1fbb uni1FBB 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1fbc uni1FBC 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fbd uni1FBD 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fbe uni1FBE 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1fbf uni1FBF 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fc0 uni1FC0 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1fc1 uni1FC1 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1fc2 uni1FC2 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fc3 uni1FC3 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fc4 uni1FC4 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fc6 uni1FC6 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1fc7 uni1FC7 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fc8 uni1FC8 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1fc9 uni1FC9 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1fca uni1FCA 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1fcb uni1FCB 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1fcc uni1FCC 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.10 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fcd uni1FCD 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fce uni1FCE 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fcf uni1FCF 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fd0 uni1FD0 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fd1 uni1FD1 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fd2 uni1FD2 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fd3 uni1FD3 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fd6 uni1FD6 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fd7 uni1FD7 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fd8 uni1FD8 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1fd9 uni1FD9 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1fda uni1FDA 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1fdb uni1FDB 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1fdd uni1FDD 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fde uni1FDE 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fdf uni1FDF 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fe0 uni1FE0 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fe1 uni1FE1 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fe2 uni1FE2 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fe3 uni1FE3 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fe4 uni1FE4 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fe5 uni1FE5 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fe6 uni1FE6 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fe7 uni1FE7 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fe8 uni1FE8 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1fe9 uni1FE9 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1fea uni1FEA 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1feb uni1FEB 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1fec uni1FEC 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1fed uni1FED 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1fee uni1FEE 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1fef uni1FEF 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1ff2 uni1FF2 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1ff3 uni1FF3 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1ff4 uni1FF4 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1ff6 uni1FF6 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1ff7 uni1FF7 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1ff8 uni1FF8 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1ff9 uni1FF9 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1ffa uni1FFA 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1ffb uni1FFB 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.10 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1ffc uni1FFC 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+1ffd uni1FFD 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+1ffe uni1FFE 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+2000 uni2000 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+2001 uni2001 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+2002 uni2002 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+2003 uni2003 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+2004 uni2004 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+2005 uni2005 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+2006 uni2006 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+2007 uni2007 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+2008 uni2008 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+2009 uni2009 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+200a uni200A 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+200b uni200B 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.8 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+200c uni200C 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.8 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+200d uni200D 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.8 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+200e uni200E 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.8 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+200f uni200F 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.8 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+2010 uni2010 1.5 +U+2011 uni2011 1.5 +U+2012 figuredash 1.5 +U+2013 endash original +U+2014 emdash original +U+2015 uni2015 1.5 +U+2016 uni2016 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2017 underscoredbl 2.3 +U+2018 quoteleft original +U+2019 quoteright original +U+201a quotesinglbase original +U+201b quotereversed 2.3 +U+201c quotedblleft original +U+201d quotedblright original +U+201e quotedblbase original +U+201f uni201F 2.1 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+2020 dagger original +U+2021 daggerdbl original +U+2022 bullet original +U+2023 uni2023 2.2 +U+2024 onedotenleader 2.1 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.9 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2025 twodotenleader 2.1 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.9 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2026 ellipsis original +U+2027 uni2027 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2028 uni2028 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+2029 uni2029 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+202a uni202A 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+202b uni202B 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+202c uni202C 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+202d uni202D 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+202e uni202E 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+202f uni202F 2.11 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.23 (Serif Italic Condensed) +U+2030 perthousand original +U+2031 uni2031 2.1 +U+2032 minute 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.28 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.31 (Serif Condensed Italic) +U+2033 second 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.28 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.31 (Serif Condensed Italic) +U+2034 uni2034 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.28 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.31 (Serif Condensed Italic) +U+2035 uni2035 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.28 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.31 (Serif Condensed Italic) +U+2036 uni2036 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.28 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.31 (Serif Condensed Italic) +U+2037 uni2037 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.28 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.31 (Serif Condensed Italic) +U+2038 uni2038 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2039 guilsinglleft original +U+203a guilsinglright original +U+203b uni203B 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+203c exclamdbl 2.0 +U+203d uni203D 2.1 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.11 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.14 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+203e uni203E 2.3 +U+203f uni203F 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+2040 uni2040 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+2041 uni2041 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2042 uni2042 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2043 uni2043 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+2044 fraction 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2045 uni2045 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2046 uni2046 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2047 uni2047 2.0 +U+2048 uni2048 2.0 +U+2049 uni2049 2.0 +U+204a uni204A 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+204b uni204B 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+204c uni204C 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+204d uni204D 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+204e uni204E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+204f uni204F 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2050 uni2050 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+2051 uni2051 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2052 uni2052 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2053 uni2053 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2054 uni2054 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+2055 uni2055 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2056 uni2056 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2057 uni2057 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2058 uni2058 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2059 uni2059 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+205a uni205A 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+205b uni205B 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+205c uni205C 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+205d uni205D 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+205e uni205E 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+205f uni205F 2.14 +U+2060 uni2060 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2061 uni2061 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2062 uni2062 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2063 uni2063 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2064 uni2064 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+206a uni206A 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+206b uni206B 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+206c uni206C 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+206d uni206D 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+206e uni206E 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+206f uni206F 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2070 uni2070 2.2 +U+2071 uni2071 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+2074 uni2074 2.2 +U+2075 uni2075 2.2 +U+2076 uni2076 2.2 +U+2077 uni2077 2.2 +U+2078 uni2078 2.2 +U+2079 uni2079 2.2 +U+207a uni207A 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+207b uni207B 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+207c uni207C 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+207d uni207D 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+207e uni207E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+207f uni207F 1.14 +U+2080 uni2080 2.4 +U+2081 uni2081 2.4 +U+2082 uni2082 2.4 +U+2083 uni2083 2.4 +U+2084 uni2084 2.4 +U+2085 uni2085 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2086 uni2086 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2087 uni2087 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2088 uni2088 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2089 uni2089 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+208a uni208A 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+208b uni208B 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+208c uni208C 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+208d uni208D 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+208e uni208E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+2090 uni2090 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+2091 uni2091 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+2092 uni2092 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+2093 uni2093 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+2094 uni2094 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+20a0 uni20A0 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+20a1 colonmonetary 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+20a2 uni20A2 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+20a3 franc 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+20a4 lira 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+20a5 uni20A5 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+20a6 uni20A6 2.3 +U+20a7 peseta 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+20a8 uni20A8 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+20a9 uni20A9 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+20aa uni20AA 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+20ab dong 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+20ac Euro original +U+20ad uni20AD 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+20ae uni20AE 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+20af uni20AF 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+20b0 uni20B0 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+20b1 uni20B1 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.14 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+20b2 uni20B2 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+20b3 uni20B3 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+20b4 uni20B4 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+20b5 uni20B5 2.2 +U+20b8 uni20B8 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+20b9 uni20B9 2.32 +U+20d0 uni20D0 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+20d1 uni20D1 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+20d6 uni20D6 2.8 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+20d7 uni20D7 2.8 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+20db uni20DB 2.23 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+20dc uni20DC 2.23 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+20e1 uni20E1 2.23 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2100 uni2100 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2101 uni2101 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2102 uni2102 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.16 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Condensed) +U+2103 uni2103 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2104 uni2104 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2105 uni2105 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2106 uni2106 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2107 uni2107 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2108 uni2108 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2109 uni2109 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+210b uni210B 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+210c uni210C 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+210d uni210D 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+210e uni210E 2.5 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.23 (Serif Italic Condensed) 2.26 (Sans ExtraLight) +U+210f uni210F 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.28 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2110 uni2110 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2111 Ifraktur 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2112 uni2112 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2113 uni2113 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2114 uni2114 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2115 uni2115 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2116 uni2116 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+2117 uni2117 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2118 weierstrass 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2119 uni2119 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+211a uni211A 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+211b uni211B 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+211c Rfraktur 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+211d uni211D 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+211e prescription 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+211f uni211F 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2120 uni2120 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2121 uni2121 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2122 trademark original +U+2123 uni2123 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2124 uni2124 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2125 uni2125 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2126 uni2126 2.2 +U+2127 uni2127 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2128 uni2128 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2129 uni2129 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+212a uni212A 2.2 +U+212b uni212B 2.2 +U+212c uni212C 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+212d uni212D 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+212e estimated 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+212f uni212F 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2130 uni2130 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2131 uni2131 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2132 uni2132 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) +U+2133 uni2133 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2134 uni2134 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+2135 aleph 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2136 uni2136 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2137 uni2137 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2138 uni2138 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2139 uni2139 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+213a uni213A 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+213b uni213B 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+213c uni213C 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed) +U+213d uni213D 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed) +U+213e uni213E 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed) +U+213f uni213F 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed) +U+2140 uni2140 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed) +U+2141 uni2141 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2142 uni2142 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2143 uni2143 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2144 uni2144 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2145 uni2145 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed) +U+2146 uni2146 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed) +U+2147 uni2147 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed) +U+2148 uni2148 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed) +U+2149 uni2149 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed) +U+214b uni214B 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+214e uni214E 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2150 uni2150 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+2151 uni2151 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+2152 uni2152 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+2153 onethird 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.6 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2154 twothirds 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.6 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2155 uni2155 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.6 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2156 uni2156 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.6 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2157 uni2157 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.6 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2158 uni2158 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.6 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2159 uni2159 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.6 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+215a uni215A 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.6 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+215b oneeighth 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.6 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+215c threeeighths 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.6 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+215d fiveeighths 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.6 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+215e seveneighths 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.6 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+215f uni215F 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.6 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2160 uni2160 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2161 uni2161 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2162 uni2162 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2163 uni2163 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2164 uni2164 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2165 uni2165 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2166 uni2166 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2167 uni2167 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2168 uni2168 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2169 uni2169 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+216a uni216A 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+216b uni216B 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+216c uni216C 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+216d uni216D 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+216e uni216E 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+216f uni216F 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2170 uni2170 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2171 uni2171 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2172 uni2172 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2173 uni2173 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2174 uni2174 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2175 uni2175 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2176 uni2176 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2177 uni2177 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2178 uni2178 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2179 uni2179 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+217a uni217A 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+217b uni217B 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+217c uni217C 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+217d uni217D 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+217e uni217E 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+217f uni217F 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2180 uni2180 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2181 uni2181 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+2182 uni2182 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans ExtraLight) +U+2183 uni2183 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2184 uni2184 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2185 uni2185 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+2189 uni2189 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+2190 arrowleft 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+2191 arrowup 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+2192 arrowright 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+2193 arrowdown 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+2194 arrowboth 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2195 arrowupdn 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2196 uni2196 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2197 uni2197 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2198 uni2198 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2199 uni2199 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+219a uni219A 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+219b uni219B 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+219c uni219C 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+219d uni219D 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+219e uni219E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+219f uni219F 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21a0 uni21A0 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21a1 uni21A1 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21a2 uni21A2 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21a3 uni21A3 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21a4 uni21A4 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21a5 uni21A5 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21a6 uni21A6 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21a7 uni21A7 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21a8 arrowupdnbse 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21a9 uni21A9 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21aa uni21AA 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21ab uni21AB 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21ac uni21AC 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21ad uni21AD 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21ae uni21AE 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21af uni21AF 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21b0 uni21B0 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21b1 uni21B1 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21b2 uni21B2 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21b3 uni21B3 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21b4 uni21B4 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21b5 carriagereturn 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21b6 uni21B6 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21b7 uni21B7 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21b8 uni21B8 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21b9 uni21B9 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21ba uni21BA 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21bb uni21BB 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21bc uni21BC 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21bd uni21BD 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21be uni21BE 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21bf uni21BF 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21c0 uni21C0 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21c1 uni21C1 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21c2 uni21C2 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21c3 uni21C3 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21c4 uni21C4 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21c5 uni21C5 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21c6 uni21C6 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21c7 uni21C7 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21c8 uni21C8 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21c9 uni21C9 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21ca uni21CA 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21cb uni21CB 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21cc uni21CC 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21cd uni21CD 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21ce uni21CE 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21cf uni21CF 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21d0 arrowdblleft 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21d1 arrowdblup 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21d2 arrowdblright 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21d3 arrowdbldown 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21d4 arrowdblboth 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21d5 uni21D5 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21d6 uni21D6 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21d7 uni21D7 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21d8 uni21D8 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21d9 uni21D9 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21da uni21DA 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21db uni21DB 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21dc uni21DC 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21dd uni21DD 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21de uni21DE 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21df uni21DF 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21e0 uni21E0 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21e1 uni21E1 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21e2 uni21E2 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21e3 uni21E3 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21e4 uni21E4 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21e5 uni21E5 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21e6 uni21E6 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21e7 uni21E7 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21e8 uni21E8 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21e9 uni21E9 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21ea uni21EA 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21eb uni21EB 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21ec uni21EC 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21ed uni21ED 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21ee uni21EE 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21ef uni21EF 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21f0 uni21F0 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21f1 uni21F1 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21f2 uni21F2 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21f3 uni21F3 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21f4 uni21F4 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21f5 uni21F5 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21f6 uni21F6 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21f7 uni21F7 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21f8 uni21F8 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21f9 uni21F9 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21fa uni21FA 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21fb uni21FB 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21fc uni21FC 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21fd uni21FD 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21fe uni21FE 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+21ff uni21FF 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2200 universal 2.1 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2201 uni2201 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2202 partialdiff original +U+2203 existential 2.1 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2204 uni2204 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2205 emptyset 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2206 Delta original +U+2207 gradient 2.1 +U+2208 element 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2209 notelement 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+220a uni220A 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+220b suchthat 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+220c uni220C 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+220d uni220D 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+220e uni220E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+220f product original +U+2210 uni2210 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2211 summation original +U+2212 minus original +U+2213 uni2213 2.1 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2214 uni2214 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2215 uni2215 original +U+2216 uni2216 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+2217 asteriskmath 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2218 uni2218 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2219 uni2219 original +U+221a radical original +U+221b uni221B 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+221c uni221C 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+221d proportional 2.1 +U+221e infinity original +U+221f orthogonal 2.1 +U+2220 angle 2.3 +U+2221 uni2221 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2222 uni2222 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2223 uni2223 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2224 uni2224 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2225 uni2225 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2226 uni2226 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2227 logicaland 2.1 +U+2228 logicalor 2.1 +U+2229 intersection 2.1 +U+222a union 2.1 +U+222b integral original +U+222c uni222C 2.1 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.10 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+222d uni222D 2.1 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.10 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+222e uni222E 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+222f uni222F 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2230 uni2230 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2231 uni2231 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2232 uni2232 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2233 uni2233 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2234 therefore 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.31 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2235 uni2235 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.31 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2236 uni2236 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.31 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2237 uni2237 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.31 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2238 uni2238 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2239 uni2239 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+223a uni223A 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+223b uni223B 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+223c similar 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+223d uni223D 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+223e uni223E 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+223f uni223F 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2240 uni2240 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2241 uni2241 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+2242 uni2242 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2243 uni2243 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2244 uni2244 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+2245 congruent 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2246 uni2246 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+2247 uni2247 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+2248 approxequal original +U+2249 uni2249 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+224a uni224A 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+224b uni224B 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+224c uni224C 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+224d uni224D 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+224e uni224E 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+224f uni224F 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+2250 uni2250 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2251 uni2251 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2252 uni2252 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2253 uni2253 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2254 uni2254 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2255 uni2255 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2256 uni2256 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+2257 uni2257 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+2258 uni2258 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+2259 uni2259 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+225a uni225A 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+225b uni225B 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+225c uni225C 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+225d uni225D 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+225e uni225E 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+225f uni225F 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+2260 notequal original +U+2261 equivalence 2.1 +U+2262 uni2262 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+2263 uni2263 2.1 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2264 lessequal original +U+2265 greaterequal original +U+2266 uni2266 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+2267 uni2267 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+2268 uni2268 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+2269 uni2269 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+226a uni226A 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+226b uni226B 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+226c uni226C 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+226d uni226D 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+226e uni226E 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+226f uni226F 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+2270 uni2270 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+2271 uni2271 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+2272 uni2272 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+2273 uni2273 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+2274 uni2274 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+2275 uni2275 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+2276 uni2276 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+2277 uni2277 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+2278 uni2278 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2279 uni2279 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+227a uni227A 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+227b uni227B 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+227c uni227C 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+227d uni227D 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+227e uni227E 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+227f uni227F 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2280 uni2280 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2281 uni2281 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2282 propersubset 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2283 propersuperset 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2284 notsubset 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2285 uni2285 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2286 reflexsubset 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2287 reflexsuperset 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2288 uni2288 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+2289 uni2289 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+228a uni228A 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+228b uni228B 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+228c uni228C 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+228d uni228D 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+228e uni228E 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+228f uni228F 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2290 uni2290 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2291 uni2291 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2292 uni2292 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2293 uni2293 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2294 uni2294 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2295 circleplus 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2296 uni2296 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2297 circlemultiply 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2298 uni2298 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2299 uni2299 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+229a uni229A 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+229b uni229B 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+229c uni229C 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+229d uni229D 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+229e uni229E 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+229f uni229F 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+22a0 uni22A0 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+22a1 uni22A1 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+22a2 uni22A2 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+22a3 uni22A3 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+22a4 uni22A4 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+22a5 perpendicular 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.32 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+22a6 uni22A6 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+22a7 uni22A7 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+22a8 uni22A8 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+22a9 uni22A9 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+22aa uni22AA 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+22ab uni22AB 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+22ac uni22AC 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+22ad uni22AD 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+22ae uni22AE 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+22af uni22AF 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+22b0 uni22B0 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22b1 uni22B1 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22b2 uni22B2 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22b3 uni22B3 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22b4 uni22B4 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22b5 uni22B5 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22b6 uni22B6 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22b7 uni22B7 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22b8 uni22B8 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22b9 uni22B9 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22ba uni22BA 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22bb uni22BB 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22bc uni22BC 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22bd uni22BD 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22be uni22BE 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+22bf uni22BF 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+22c0 uni22C0 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22c1 uni22C1 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22c2 uni22C2 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22c3 uni22C3 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22c4 uni22C4 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22c5 dotmath 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+22c6 uni22C6 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+22c7 uni22C7 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22c8 uni22C8 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22c9 uni22C9 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22ca uni22CA 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22cb uni22CB 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22cc uni22CC 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22cd uni22CD 2.6 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.7 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+22ce uni22CE 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22cf uni22CF 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22d0 uni22D0 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22d1 uni22D1 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22d2 uni22D2 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22d3 uni22D3 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22d4 uni22D4 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22d5 uni22D5 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22d6 uni22D6 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22d7 uni22D7 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22d8 uni22D8 2.6 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+22d9 uni22D9 2.6 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+22da uni22DA 2.6 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.7 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+22db uni22DB 2.6 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.7 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+22dc uni22DC 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+22dd uni22DD 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+22de uni22DE 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+22df uni22DF 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+22e0 uni22E0 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+22e1 uni22E1 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+22e2 uni22E2 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+22e3 uni22E3 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+22e4 uni22E4 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+22e5 uni22E5 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+22e6 uni22E6 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+22e7 uni22E7 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+22e8 uni22E8 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+22e9 uni22E9 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+22ea uni22EA 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22eb uni22EB 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22ec uni22EC 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22ed uni22ED 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22ee uni22EE 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22ef uni22EF 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22f0 uni22F0 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22f1 uni22F1 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22f2 uni22F2 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22f3 uni22F3 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22f4 uni22F4 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22f5 uni22F5 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22f6 uni22F6 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22f7 uni22F7 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22f8 uni22F8 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22f9 uni22F9 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22fa uni22FA 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22fb uni22FB 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22fc uni22FC 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22fd uni22FD 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22fe uni22FE 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+22ff uni22FF 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2300 uni2300 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+2301 uni2301 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+2302 house 1.14 +U+2303 uni2303 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+2304 uni2304 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+2305 uni2305 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+2306 uni2306 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2307 uni2307 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+2308 uni2308 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+2309 uni2309 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+230a uni230A 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+230b uni230B 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+230c uni230C 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+230d uni230D 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+230e uni230E 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+230f uni230F 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+2310 revlogicalnot 1.14 +U+2311 uni2311 1.15 +U+2312 uni2312 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2313 uni2313 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2314 uni2314 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2315 uni2315 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2318 uni2318 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.10 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+2319 uni2319 1.14 +U+231c uni231C 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+231d uni231D 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+231e uni231E 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+231f uni231F 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+2320 integraltp 2.3 +U+2321 integralbt 2.3 +U+2324 uni2324 2.16 (Sans, Sans Bold, Sans Bold Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique) 2.19 (Sans Condensed Oblique, Sans Oblique) +U+2325 uni2325 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.10 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+2326 uni2326 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+2327 uni2327 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+2328 uni2328 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2329 angleleft 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) +U+232a angleright 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) +U+232b uni232B 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+232c uni232C 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+2335 uni2335 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2337 uni2337 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2338 uni2338 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2339 uni2339 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+233a uni233A 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+233b uni233B 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+233c uni233C 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+233d uni233D 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+233e uni233E 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2341 uni2341 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2342 uni2342 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2343 uni2343 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2344 uni2344 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2347 uni2347 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2348 uni2348 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2349 uni2349 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+234b uni234B 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+234c uni234C 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+234d uni234D 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2350 uni2350 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2352 uni2352 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2353 uni2353 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2354 uni2354 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2357 uni2357 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2358 uni2358 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2359 uni2359 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+235a uni235A 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+235b uni235B 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+235c uni235C 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+235e uni235E 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+235f uni235F 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2360 uni2360 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2363 uni2363 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2364 uni2364 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2365 uni2365 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2368 uni2368 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2369 uni2369 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+236b uni236B 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+236c uni236C 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+236d uni236D 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+236e uni236E 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+236f uni236F 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2370 uni2370 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2373 uni2373 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+2374 uni2374 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+2375 uni2375 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+2376 uni2376 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2377 uni2377 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2378 uni2378 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2379 uni2379 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+237a uni237A 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+237d uni237D 1.15 +U+2380 uni2380 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2381 uni2381 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2382 uni2382 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2383 uni2383 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2387 uni2387 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+2388 uni2388 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2389 uni2389 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+238a uni238A 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+238b uni238B 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+2394 uni2394 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+2395 uni2395 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+239b uni239B 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+239c uni239C 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+239d uni239D 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+239e uni239E 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+239f uni239F 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+23a0 uni23A0 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+23a1 uni23A1 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+23a2 uni23A2 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+23a3 uni23A3 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+23a4 uni23A4 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+23a5 uni23A5 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+23a6 uni23A6 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+23a7 uni23A7 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+23a8 uni23A8 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+23a9 uni23A9 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+23aa uni23AA 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+23ab uni23AB 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+23ac uni23AC 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+23ad uni23AD 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+23ae uni23AE 2.3 +U+23ce uni23CE 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+23cf uni23CF 2.3 +U+23e3 uni23E3 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+23e5 uni23E5 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+23e8 uni23E8 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2422 uni2422 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2423 uni2423 1.6 +U+2460 uni2460 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2461 uni2461 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2462 uni2462 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2463 uni2463 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2464 uni2464 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2465 uni2465 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2466 uni2466 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2467 uni2467 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2468 uni2468 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2469 uni2469 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2500 SF100000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2501 uni2501 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2502 SF110000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2503 uni2503 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2504 uni2504 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2505 uni2505 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2506 uni2506 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2507 uni2507 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2508 uni2508 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2509 uni2509 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+250a uni250A 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+250b uni250B 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+250c SF010000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+250d uni250D 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+250e uni250E 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+250f uni250F 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2510 SF030000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2511 uni2511 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2512 uni2512 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2513 uni2513 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2514 SF020000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2515 uni2515 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2516 uni2516 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2517 uni2517 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2518 SF040000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2519 uni2519 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+251a uni251A 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+251b uni251B 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+251c SF080000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+251d uni251D 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+251e uni251E 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+251f uni251F 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2520 uni2520 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2521 uni2521 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2522 uni2522 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2523 uni2523 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2524 SF090000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2525 uni2525 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2526 uni2526 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2527 uni2527 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2528 uni2528 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2529 uni2529 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+252a uni252A 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+252b uni252B 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+252c SF060000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+252d uni252D 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+252e uni252E 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+252f uni252F 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2530 uni2530 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2531 uni2531 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2532 uni2532 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2533 uni2533 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2534 SF070000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2535 uni2535 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2536 uni2536 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2537 uni2537 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2538 uni2538 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2539 uni2539 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+253a uni253A 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+253b uni253B 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+253c SF050000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+253d uni253D 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+253e uni253E 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+253f uni253F 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2540 uni2540 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2541 uni2541 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2542 uni2542 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2543 uni2543 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2544 uni2544 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2545 uni2545 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2546 uni2546 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2547 uni2547 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2548 uni2548 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2549 uni2549 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+254a uni254A 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+254b uni254B 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+254c uni254C 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+254d uni254D 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+254e uni254E 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+254f uni254F 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2550 SF430000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2551 SF240000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2552 SF510000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2553 SF520000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2554 SF390000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2555 SF220000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2556 SF210000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2557 SF250000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2558 SF500000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2559 SF490000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+255a SF380000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+255b SF280000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+255c SF270000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+255d SF260000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+255e SF360000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+255f SF370000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2560 SF420000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2561 SF190000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2562 SF200000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2563 SF230000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2564 SF470000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2565 SF480000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2566 SF410000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2567 SF450000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2568 SF460000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2569 SF400000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+256a SF540000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+256b SF530000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+256c SF440000 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+256d uni256D 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+256e uni256E 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+256f uni256F 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2570 uni2570 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2571 uni2571 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2572 uni2572 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2573 uni2573 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2574 uni2574 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2575 uni2575 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2576 uni2576 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2577 uni2577 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2578 uni2578 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2579 uni2579 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+257a uni257A 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+257b uni257B 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+257c uni257C 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+257d uni257D 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+257e uni257E 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+257f uni257F 1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2580 upblock 1.14 +U+2581 uni2581 1.14 +U+2582 uni2582 1.14 +U+2583 uni2583 1.14 +U+2584 dnblock 1.14 +U+2585 uni2585 1.14 +U+2586 uni2586 1.14 +U+2587 uni2587 1.14 +U+2588 block 1.14 +U+2589 uni2589 1.14 +U+258a uni258A 1.14 +U+258b uni258B 1.14 +U+258c lfblock 1.14 +U+258d uni258D 1.14 +U+258e uni258E 1.14 +U+258f uni258F 1.14 +U+2590 rtblock 1.14 +U+2591 ltshade 1.15 +U+2592 shade 1.15 +U+2593 dkshade 1.15 +U+2594 uni2594 1.14 +U+2595 uni2595 1.14 +U+2596 uni2596 1.14 +U+2597 uni2597 1.14 +U+2598 uni2598 1.14 +U+2599 uni2599 1.14 +U+259a uni259A 1.14 +U+259b uni259B 1.14 +U+259c uni259C 1.14 +U+259d uni259D 1.14 +U+259e uni259E 1.14 +U+259f uni259F 1.14 +U+25a0 filledbox 2.3 +U+25a1 H22073 2.3 +U+25a2 uni25A2 2.3 +U+25a3 uni25A3 2.3 +U+25a4 uni25A4 2.3 +U+25a5 uni25A5 2.3 +U+25a6 uni25A6 2.3 +U+25a7 uni25A7 2.3 +U+25a8 uni25A8 2.3 +U+25a9 uni25A9 2.3 +U+25aa H18543 2.3 +U+25ab H18551 2.3 +U+25ac filledrect 2.3 +U+25ad uni25AD 2.3 +U+25ae uni25AE 2.3 +U+25af uni25AF 2.3 +U+25b0 uni25B0 2.3 +U+25b1 uni25B1 2.3 +U+25b2 triagup 2.3 +U+25b3 uni25B3 2.3 +U+25b4 uni25B4 2.3 +U+25b5 uni25B5 2.3 +U+25b6 uni25B6 2.3 +U+25b7 uni25B7 2.3 +U+25b8 uni25B8 2.3 +U+25b9 uni25B9 2.3 +U+25ba triagrt 2.3 +U+25bb uni25BB 2.3 +U+25bc triagdn 2.3 +U+25bd uni25BD 2.3 +U+25be uni25BE 2.3 +U+25bf uni25BF 2.3 +U+25c0 uni25C0 2.3 +U+25c1 uni25C1 2.3 +U+25c2 uni25C2 2.3 +U+25c3 uni25C3 2.3 +U+25c4 triaglf 2.3 +U+25c5 uni25C5 2.3 +U+25c6 uni25C6 2.3 +U+25c7 uni25C7 2.3 +U+25c8 uni25C8 2.3 +U+25c9 uni25C9 2.3 +U+25ca lozenge original +U+25cb circle 2.3 +U+25cc uni25CC 2.3 +U+25cd uni25CD 2.3 +U+25ce uni25CE 2.3 +U+25cf H18533 2.3 +U+25d0 uni25D0 2.3 +U+25d1 uni25D1 2.3 +U+25d2 uni25D2 2.3 +U+25d3 uni25D3 2.3 +U+25d4 uni25D4 2.3 +U+25d5 uni25D5 2.3 +U+25d6 uni25D6 2.3 +U+25d7 uni25D7 2.3 +U+25d8 invbullet 2.2 +U+25d9 invcircle 2.3 +U+25da uni25DA 2.3 +U+25db uni25DB 2.3 +U+25dc uni25DC 2.3 +U+25dd uni25DD 2.3 +U+25de uni25DE 2.3 +U+25df uni25DF 2.3 +U+25e0 uni25E0 2.3 +U+25e1 uni25E1 2.3 +U+25e2 uni25E2 2.3 +U+25e3 uni25E3 2.3 +U+25e4 uni25E4 2.3 +U+25e5 uni25E5 2.3 +U+25e6 openbullet 2.2 +U+25e7 uni25E7 2.3 +U+25e8 uni25E8 2.3 +U+25e9 uni25E9 2.3 +U+25ea uni25EA 2.3 +U+25eb uni25EB 2.3 +U+25ec uni25EC 2.3 +U+25ed uni25ED 2.3 +U+25ee uni25EE 2.3 +U+25ef uni25EF 2.3 +U+25f0 uni25F0 2.3 +U+25f1 uni25F1 2.3 +U+25f2 uni25F2 2.3 +U+25f3 uni25F3 2.3 +U+25f4 uni25F4 2.3 +U+25f5 uni25F5 2.3 +U+25f6 uni25F6 2.3 +U+25f7 uni25F7 2.3 +U+25f8 uni25F8 2.3 +U+25f9 uni25F9 2.3 +U+25fa uni25FA 2.3 +U+25fb uni25FB 2.3 +U+25fc uni25FC 2.3 +U+25fd uni25FD 2.3 +U+25fe uni25FE 2.3 +U+25ff uni25FF 2.3 +U+2600 uni2600 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2601 uni2601 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2602 uni2602 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2603 uni2603 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2604 uni2604 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2605 uni2605 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2606 uni2606 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2607 uni2607 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2608 uni2608 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2609 uni2609 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+260a uni260A 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+260b uni260B 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+260c uni260C 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+260d uni260D 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+260e uni260E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+260f uni260F 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2610 uni2610 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2611 uni2611 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2612 uni2612 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2613 uni2613 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2614 uni2614 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2615 uni2615 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2616 uni2616 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2617 uni2617 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2618 uni2618 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2619 uni2619 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+261a uni261A 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+261b uni261B 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+261c uni261C 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+261d uni261D 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+261e uni261E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+261f uni261F 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2620 uni2620 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2621 uni2621 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2622 uni2622 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2623 uni2623 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2624 uni2624 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2625 uni2625 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2626 uni2626 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2627 uni2627 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2628 uni2628 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2629 uni2629 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+262a uni262A 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+262b uni262B 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+262c uni262C 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+262d uni262D 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+262e uni262E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+262f uni262F 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2630 uni2630 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+2631 uni2631 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+2632 uni2632 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+2633 uni2633 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+2634 uni2634 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+2635 uni2635 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+2636 uni2636 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+2637 uni2637 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+2638 uni2638 1.15 +U+2639 uni2639 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+263a smileface 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+263b invsmileface 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+263c sun 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+263d uni263D 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+263e uni263E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+263f uni263F 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2640 female 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2641 uni2641 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2642 male 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2643 uni2643 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2644 uni2644 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2645 uni2645 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2646 uni2646 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2647 uni2647 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2648 uni2648 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2649 uni2649 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+264a uni264A 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+264b uni264B 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+264c uni264C 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+264d uni264D 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+264e uni264E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+264f uni264F 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2650 uni2650 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2651 uni2651 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2652 uni2652 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2653 uni2653 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2654 uni2654 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2655 uni2655 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2656 uni2656 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2657 uni2657 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2658 uni2658 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2659 uni2659 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+265a uni265A 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+265b uni265B 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+265c uni265C 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+265d uni265D 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+265e uni265E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+265f uni265F 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2660 spade 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2661 uni2661 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2662 uni2662 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2663 club 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2664 uni2664 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2665 heart 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2666 diamond 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2667 uni2667 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2668 uni2668 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2669 uni2669 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+266a musicalnote 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+266b musicalnotedbl 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+266c uni266C 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+266d uni266D 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+266e uni266E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+266f uni266F 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2670 uni2670 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2671 uni2671 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2672 uni2672 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2673 uni2673 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2674 uni2674 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2675 uni2675 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2676 uni2676 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2677 uni2677 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2678 uni2678 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2679 uni2679 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+267a uni267A 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+267b uni267B 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+267c uni267C 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+267d uni267D 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+267e uni267E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+267f uni267F 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2680 uni2680 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.7 (Sans Mono, Sans Mono Bold) +U+2681 uni2681 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.7 (Sans Mono, Sans Mono Bold) +U+2682 uni2682 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.7 (Sans Mono, Sans Mono Bold) +U+2683 uni2683 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.7 (Sans Mono, Sans Mono Bold) +U+2684 uni2684 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.7 (Sans Mono, Sans Mono Bold) +U+2685 uni2685 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.7 (Sans Mono, Sans Mono Bold) +U+2686 uni2686 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2687 uni2687 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2688 uni2688 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2689 uni2689 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+268a uni268A 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+268b uni268B 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+268c uni268C 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+268d uni268D 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+268e uni268E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+268f uni268F 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+2690 uni2690 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2691 uni2691 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2692 uni2692 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2693 uni2693 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2694 uni2694 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2695 uni2695 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2696 uni2696 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2697 uni2697 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2698 uni2698 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2699 uni2699 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+269a uni269A 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+269b uni269B 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+269c uni269C 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+26a0 uni26A0 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+26a1 uni26A1 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+26a2 uni26A2 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+26a3 uni26A3 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+26a4 uni26A4 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+26a5 uni26A5 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+26a6 uni26A6 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+26a7 uni26A7 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+26a8 uni26A8 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+26a9 uni26A9 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+26aa uni26AA 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+26ab uni26AB 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+26ac uni26AC 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+26ad uni26AD 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+26ae uni26AE 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+26af uni26AF 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+26b0 uni26B0 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+26b1 uni26B1 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+26b2 uni26B2 2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+26b3 uni26B3 2.29 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+26b4 uni26B4 2.29 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+26b5 uni26B5 2.29 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+26b6 uni26B6 2.29 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+26b7 uni26B7 2.29 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+26b8 uni26B8 2.29 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+26c0 uni26C0 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+26c1 uni26C1 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+26c2 uni26C2 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+26c3 uni26C3 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2701 uni2701 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2702 uni2702 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2703 uni2703 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2704 uni2704 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2706 uni2706 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2707 uni2707 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2708 uni2708 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2709 uni2709 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+270c uni270C 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+270d uni270D 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+270e uni270E 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+270f uni270F 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2710 uni2710 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2711 uni2711 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2712 uni2712 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2713 uni2713 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2714 uni2714 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2715 uni2715 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2716 uni2716 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2717 uni2717 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2718 uni2718 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2719 uni2719 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+271a uni271A 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+271b uni271B 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+271c uni271C 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+271d uni271D 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+271e uni271E 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+271f uni271F 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2720 uni2720 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2721 uni2721 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2722 uni2722 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2723 uni2723 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2724 uni2724 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2725 uni2725 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2726 uni2726 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2727 uni2727 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2729 uni2729 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+272a uni272A 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+272b uni272B 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+272c uni272C 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+272d uni272D 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+272e uni272E 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+272f uni272F 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2730 uni2730 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2731 uni2731 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2732 uni2732 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2733 uni2733 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2734 uni2734 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2735 uni2735 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2736 uni2736 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2737 uni2737 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2738 uni2738 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2739 uni2739 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+273a uni273A 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+273b uni273B 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+273c uni273C 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+273d uni273D 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+273e uni273E 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+273f uni273F 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2740 uni2740 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2741 uni2741 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2742 uni2742 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2743 uni2743 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2744 uni2744 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2745 uni2745 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2746 uni2746 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2747 uni2747 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2748 uni2748 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2749 uni2749 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+274a uni274A 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+274b uni274B 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+274d uni274D 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+274f uni274F 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2750 uni2750 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2751 uni2751 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2752 uni2752 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2756 uni2756 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2758 uni2758 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2759 uni2759 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+275a uni275A 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+275b uni275B 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+275c uni275C 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+275d uni275D 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+275e uni275E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2761 uni2761 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2762 uni2762 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2763 uni2763 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2764 uni2764 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2765 uni2765 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2766 uni2766 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2767 uni2767 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2768 uni2768 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2769 uni2769 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+276a uni276A 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+276b uni276B 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+276c uni276C 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+276d uni276D 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+276e uni276E 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+276f uni276F 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2770 uni2770 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2771 uni2771 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2772 uni2772 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2773 uni2773 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2774 uni2774 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2775 uni2775 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold) +U+2776 uni2776 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2777 uni2777 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2778 uni2778 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2779 uni2779 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+277a uni277A 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+277b uni277B 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+277c uni277C 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+277d uni277D 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+277e uni277E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+277f uni277F 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2780 uni2780 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2781 uni2781 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2782 uni2782 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2783 uni2783 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2784 uni2784 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2785 uni2785 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2786 uni2786 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2787 uni2787 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2788 uni2788 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2789 uni2789 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+278a uni278A 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+278b uni278B 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+278c uni278C 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+278d uni278D 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+278e uni278E 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+278f uni278F 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2790 uni2790 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2791 uni2791 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2792 uni2792 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2793 uni2793 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2794 uni2794 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2798 uni2798 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+2799 uni2799 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+279a uni279A 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+279b uni279B 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+279c uni279C 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+279d uni279D 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+279e uni279E 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+279f uni279F 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27a0 uni27A0 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27a1 uni27A1 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+27a2 uni27A2 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27a3 uni27A3 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27a4 uni27A4 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27a5 uni27A5 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27a6 uni27A6 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27a7 uni27A7 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27a8 uni27A8 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27a9 uni27A9 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27aa uni27AA 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27ab uni27AB 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27ac uni27AC 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27ad uni27AD 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27ae uni27AE 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27af uni27AF 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27b1 uni27B1 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27b2 uni27B2 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27b3 uni27B3 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27b4 uni27B4 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27b5 uni27B5 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27b6 uni27B6 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27b7 uni27B7 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27b8 uni27B8 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27b9 uni27B9 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27ba uni27BA 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27bb uni27BB 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27bc uni27BC 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27bd uni27BD 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27be uni27BE 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) +U+27bf uni27BF 2.7 (Sans Mono Bold) +U+27c5 uni27C5 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+27c6 uni27C6 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+27e0 uni27E0 2.3 +U+27e6 uni27E6 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+27e7 uni27E7 2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+27e8 uni27E8 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+27e9 uni27E9 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+27ea uni27EA 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+27eb uni27EB 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+27f0 uni27F0 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+27f1 uni27F1 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+27f2 uni27F2 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+27f3 uni27F3 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+27f4 uni27F4 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+27f5 uni27F5 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+27f6 uni27F6 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+27f7 uni27F7 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+27f8 uni27F8 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+27f9 uni27F9 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+27fa uni27FA 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+27fb uni27FB 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+27fc uni27FC 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+27fd uni27FD 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+27fe uni27FE 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+27ff uni27FF 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2800 uni2800 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2801 uni2801 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2802 uni2802 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2803 uni2803 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2804 uni2804 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2805 uni2805 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2806 uni2806 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2807 uni2807 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2808 uni2808 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2809 uni2809 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+280a uni280A 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+280b uni280B 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+280c uni280C 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+280d uni280D 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+280e uni280E 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+280f uni280F 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2810 uni2810 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2811 uni2811 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2812 uni2812 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2813 uni2813 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2814 uni2814 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2815 uni2815 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2816 uni2816 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2817 uni2817 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2818 uni2818 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2819 uni2819 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+281a uni281A 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+281b uni281B 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+281c uni281C 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+281d uni281D 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+281e uni281E 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+281f uni281F 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2820 uni2820 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2821 uni2821 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2822 uni2822 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2823 uni2823 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2824 uni2824 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2825 uni2825 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2826 uni2826 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2827 uni2827 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2828 uni2828 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2829 uni2829 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+282a uni282A 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+282b uni282B 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+282c uni282C 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+282d uni282D 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+282e uni282E 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+282f uni282F 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2830 uni2830 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2831 uni2831 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2832 uni2832 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2833 uni2833 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2834 uni2834 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2835 uni2835 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2836 uni2836 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2837 uni2837 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2838 uni2838 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2839 uni2839 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+283a uni283A 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+283b uni283B 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+283c uni283C 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+283d uni283D 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+283e uni283E 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+283f uni283F 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2840 uni2840 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2841 uni2841 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2842 uni2842 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2843 uni2843 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2844 uni2844 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2845 uni2845 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2846 uni2846 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2847 uni2847 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2848 uni2848 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2849 uni2849 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+284a uni284A 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+284b uni284B 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+284c uni284C 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+284d uni284D 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+284e uni284E 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+284f uni284F 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2850 uni2850 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2851 uni2851 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2852 uni2852 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2853 uni2853 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2854 uni2854 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2855 uni2855 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2856 uni2856 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2857 uni2857 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2858 uni2858 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2859 uni2859 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+285a uni285A 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+285b uni285B 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+285c uni285C 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+285d uni285D 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+285e uni285E 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+285f uni285F 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2860 uni2860 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2861 uni2861 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2862 uni2862 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2863 uni2863 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2864 uni2864 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2865 uni2865 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2866 uni2866 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2867 uni2867 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2868 uni2868 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2869 uni2869 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+286a uni286A 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+286b uni286B 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+286c uni286C 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+286d uni286D 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+286e uni286E 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+286f uni286F 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2870 uni2870 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2871 uni2871 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2872 uni2872 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2873 uni2873 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2874 uni2874 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2875 uni2875 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2876 uni2876 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2877 uni2877 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2878 uni2878 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2879 uni2879 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+287a uni287A 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+287b uni287B 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+287c uni287C 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+287d uni287D 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+287e uni287E 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+287f uni287F 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2880 uni2880 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2881 uni2881 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2882 uni2882 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2883 uni2883 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2884 uni2884 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2885 uni2885 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2886 uni2886 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2887 uni2887 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2888 uni2888 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2889 uni2889 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+288a uni288A 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+288b uni288B 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+288c uni288C 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+288d uni288D 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+288e uni288E 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+288f uni288F 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2890 uni2890 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2891 uni2891 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2892 uni2892 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2893 uni2893 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2894 uni2894 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2895 uni2895 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2896 uni2896 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2897 uni2897 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2898 uni2898 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2899 uni2899 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+289a uni289A 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+289b uni289B 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+289c uni289C 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+289d uni289D 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+289e uni289E 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+289f uni289F 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28a0 uni28A0 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28a1 uni28A1 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28a2 uni28A2 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28a3 uni28A3 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28a4 uni28A4 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28a5 uni28A5 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28a6 uni28A6 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28a7 uni28A7 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28a8 uni28A8 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28a9 uni28A9 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28aa uni28AA 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28ab uni28AB 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28ac uni28AC 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28ad uni28AD 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28ae uni28AE 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28af uni28AF 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28b0 uni28B0 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28b1 uni28B1 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28b2 uni28B2 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28b3 uni28B3 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28b4 uni28B4 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28b5 uni28B5 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28b6 uni28B6 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28b7 uni28B7 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28b8 uni28B8 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28b9 uni28B9 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28ba uni28BA 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28bb uni28BB 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28bc uni28BC 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28bd uni28BD 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28be uni28BE 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28bf uni28BF 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28c0 uni28C0 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28c1 uni28C1 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28c2 uni28C2 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28c3 uni28C3 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28c4 uni28C4 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28c5 uni28C5 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28c6 uni28C6 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28c7 uni28C7 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28c8 uni28C8 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28c9 uni28C9 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28ca uni28CA 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28cb uni28CB 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28cc uni28CC 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28cd uni28CD 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28ce uni28CE 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28cf uni28CF 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28d0 uni28D0 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28d1 uni28D1 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28d2 uni28D2 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28d3 uni28D3 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28d4 uni28D4 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28d5 uni28D5 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28d6 uni28D6 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28d7 uni28D7 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28d8 uni28D8 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28d9 uni28D9 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28da uni28DA 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28db uni28DB 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28dc uni28DC 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28dd uni28DD 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28de uni28DE 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28df uni28DF 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28e0 uni28E0 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28e1 uni28E1 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28e2 uni28E2 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28e3 uni28E3 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28e4 uni28E4 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28e5 uni28E5 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28e6 uni28E6 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28e7 uni28E7 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28e8 uni28E8 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28e9 uni28E9 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28ea uni28EA 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28eb uni28EB 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28ec uni28EC 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28ed uni28ED 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28ee uni28EE 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28ef uni28EF 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28f0 uni28F0 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28f1 uni28F1 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28f2 uni28F2 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28f3 uni28F3 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28f4 uni28F4 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28f5 uni28F5 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28f6 uni28F6 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28f7 uni28F7 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28f8 uni28F8 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28f9 uni28F9 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28fa uni28FA 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28fb uni28FB 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28fc uni28FC 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28fd uni28FD 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28fe uni28FE 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+28ff uni28FF 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2900 uni2900 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2901 uni2901 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2902 uni2902 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2903 uni2903 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2904 uni2904 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2905 uni2905 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2906 uni2906 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2907 uni2907 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2908 uni2908 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2909 uni2909 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+290a uni290A 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+290b uni290B 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+290c uni290C 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+290d uni290D 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+290e uni290E 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+290f uni290F 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2910 uni2910 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2911 uni2911 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2912 uni2912 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2913 uni2913 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2914 uni2914 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2915 uni2915 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2916 uni2916 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2917 uni2917 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2918 uni2918 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2919 uni2919 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+291a uni291A 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+291b uni291B 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+291c uni291C 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+291d uni291D 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+291e uni291E 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+291f uni291F 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2920 uni2920 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2921 uni2921 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2922 uni2922 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2923 uni2923 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2924 uni2924 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2925 uni2925 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2926 uni2926 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2927 uni2927 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2928 uni2928 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2929 uni2929 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+292a uni292A 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+292b uni292B 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+292c uni292C 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+292d uni292D 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+292e uni292E 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+292f uni292F 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2930 uni2930 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2931 uni2931 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2932 uni2932 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2933 uni2933 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2934 uni2934 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2935 uni2935 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2936 uni2936 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2937 uni2937 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2938 uni2938 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2939 uni2939 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+293a uni293A 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+293b uni293B 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+293c uni293C 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+293d uni293D 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+293e uni293E 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+293f uni293F 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2940 uni2940 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2941 uni2941 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2942 uni2942 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2943 uni2943 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2944 uni2944 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2945 uni2945 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2946 uni2946 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2947 uni2947 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2948 uni2948 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2949 uni2949 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+294a uni294A 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+294b uni294B 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+294c uni294C 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+294d uni294D 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+294e uni294E 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+294f uni294F 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2950 uni2950 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2951 uni2951 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2952 uni2952 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2953 uni2953 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2954 uni2954 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2955 uni2955 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2956 uni2956 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2957 uni2957 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2958 uni2958 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2959 uni2959 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+295a uni295A 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+295b uni295B 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+295c uni295C 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+295d uni295D 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+295e uni295E 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+295f uni295F 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2960 uni2960 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2961 uni2961 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2962 uni2962 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2963 uni2963 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2964 uni2964 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2965 uni2965 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2966 uni2966 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2967 uni2967 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2968 uni2968 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2969 uni2969 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+296a uni296A 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+296b uni296B 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+296c uni296C 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+296d uni296D 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+296e uni296E 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+296f uni296F 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2970 uni2970 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2971 uni2971 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2972 uni2972 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2973 uni2973 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2974 uni2974 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2975 uni2975 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2976 uni2976 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2977 uni2977 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2978 uni2978 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2979 uni2979 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+297a uni297A 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+297b uni297B 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+297c uni297C 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+297d uni297D 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+297e uni297E 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+297f uni297F 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2983 uni2983 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+2984 uni2984 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+29ce uni29CE 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+29cf uni29CF 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+29d0 uni29D0 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+29d1 uni29D1 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+29d2 uni29D2 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+29d3 uni29D3 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+29d4 uni29D4 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+29d5 uni29D5 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+29eb uni29EB 2.2 +U+29fa uni29FA 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+29fb uni29FB 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+2a00 uni2A00 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a01 uni2A01 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a02 uni2A02 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a0c uni2A0C 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2a0d uni2A0D 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2a0e uni2A0E 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2a0f uni2A0F 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a10 uni2A10 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a11 uni2A11 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a12 uni2A12 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a13 uni2A13 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a14 uni2A14 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a15 uni2A15 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a16 uni2A16 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a17 uni2A17 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a18 uni2A18 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a19 uni2A19 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a1a uni2A1A 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a1b uni2A1B 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a1c uni2A1C 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a2f uni2A2F 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+2a7d uni2A7D 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a7e uni2A7E 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a7f uni2A7F 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a80 uni2A80 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a81 uni2A81 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a82 uni2A82 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a83 uni2A83 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a84 uni2A84 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a85 uni2A85 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a86 uni2A86 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a87 uni2A87 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a88 uni2A88 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a89 uni2A89 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a8a uni2A8A 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a8b uni2A8B 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a8c uni2A8C 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a8d uni2A8D 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a8e uni2A8E 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a8f uni2A8F 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a90 uni2A90 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a91 uni2A91 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a92 uni2A92 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a93 uni2A93 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a94 uni2A94 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a95 uni2A95 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a96 uni2A96 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a97 uni2A97 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a98 uni2A98 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a99 uni2A99 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a9a uni2A9A 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a9b uni2A9B 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a9c uni2A9C 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a9d uni2A9D 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a9e uni2A9E 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2a9f uni2A9F 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2aa0 uni2AA0 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2aae uni2AAE 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2aaf uni2AAF 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2ab0 uni2AB0 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2ab1 uni2AB1 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2ab2 uni2AB2 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2ab3 uni2AB3 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2ab4 uni2AB4 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2ab5 uni2AB5 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2ab6 uni2AB6 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2ab7 uni2AB7 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2ab8 uni2AB8 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2ab9 uni2AB9 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2aba uni2ABA 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2af9 uni2AF9 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2afa uni2AFA 2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2b00 uni2B00 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2b01 uni2B01 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2b02 uni2B02 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2b03 uni2B03 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2b04 uni2B04 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2b05 uni2B05 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2b06 uni2B06 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2b07 uni2B07 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2b08 uni2B08 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2b09 uni2B09 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2b0a uni2B0A 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2b0b uni2B0B 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2b0c uni2B0C 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2b0d uni2B0D 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2b0e uni2B0E 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2b0f uni2B0F 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2b10 uni2B10 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2b11 uni2B11 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2b12 uni2B12 2.3 +U+2b13 uni2B13 2.3 +U+2b14 uni2B14 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+2b15 uni2B15 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+2b16 uni2B16 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+2b17 uni2B17 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+2b18 uni2B18 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+2b19 uni2B19 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+2b1a uni2B1A 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+2b1f uni2B1F 2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Sans Bold) +U+2b20 uni2B20 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2b21 uni2B21 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2b22 uni2B22 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2b23 uni2B23 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2b24 uni2B24 2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Sans Bold) +U+2b53 uni2B53 2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Sans Bold) +U+2b54 uni2B54 2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Sans Bold) +U+2c60 uni2C60 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+2c61 uni2C61 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+2c62 uni2C62 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+2c63 uni2C63 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+2c64 uni2C64 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.27 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2c65 uni2C65 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+2c66 uni2C66 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+2c67 uni2C67 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2c68 uni2C68 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2c69 uni2C69 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2c6a uni2C6A 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2c6b uni2C6B 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2c6c uni2C6C 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+2c6d uni2C6D 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.31 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+2c6e uni2C6E 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2c6f uni2C6F 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.28 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.31 (Serif Condensed Italic) +U+2c70 uni2C70 2.31 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+2c71 uni2C71 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.31 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+2c72 uni2C72 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.31 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+2c73 uni2C73 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.31 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+2c74 uni2C74 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+2c75 uni2C75 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.20 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+2c76 uni2C76 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.20 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+2c77 uni2C77 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.20 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) +U+2c79 uni2C79 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.28 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.31 (Serif Condensed Italic) +U+2c7a uni2C7A 2.27 +U+2c7b uni2C7B 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+2c7c uni2C7C 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.28 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.31 (Serif Condensed Italic) +U+2c7d uni2C7D 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.28 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.31 (Serif Condensed Italic) +U+2c7e uni2C7E 2.31 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+2c7f uni2C7F 2.31 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+2d00 uni2D00 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d01 uni2D01 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d02 uni2D02 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d03 uni2D03 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d04 uni2D04 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d05 uni2D05 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d06 uni2D06 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d07 uni2D07 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d08 uni2D08 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d09 uni2D09 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d0a uni2D0A 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d0b uni2D0B 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d0c uni2D0C 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d0d uni2D0D 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d0e uni2D0E 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d0f uni2D0F 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d10 uni2D10 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d11 uni2D11 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d12 uni2D12 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d13 uni2D13 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d14 uni2D14 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d15 uni2D15 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d16 uni2D16 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d17 uni2D17 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d18 uni2D18 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d19 uni2D19 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d1a uni2D1A 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d1b uni2D1B 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d1c uni2D1C 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d1d uni2D1D 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d1e uni2D1E 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d1f uni2D1F 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d20 uni2D20 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d21 uni2D21 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d22 uni2D22 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d23 uni2D23 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d24 uni2D24 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d25 uni2D25 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+2d30 uni2D30 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d31 uni2D31 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d32 uni2D32 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d33 uni2D33 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d34 uni2D34 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d35 uni2D35 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d36 uni2D36 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d37 uni2D37 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d38 uni2D38 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d39 uni2D39 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d3a uni2D3A 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d3b uni2D3B 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d3c uni2D3C 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d3d uni2D3D 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d3e uni2D3E 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d3f uni2D3F 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d40 uni2D40 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d41 uni2D41 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d42 uni2D42 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d43 uni2D43 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d44 uni2D44 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d45 uni2D45 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d46 uni2D46 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d47 uni2D47 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d48 uni2D48 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d49 uni2D49 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d4a uni2D4A 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d4b uni2D4B 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d4c uni2D4C 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d4d uni2D4D 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d4e uni2D4E 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d4f uni2D4F 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d50 uni2D50 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d51 uni2D51 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d52 uni2D52 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d53 uni2D53 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d54 uni2D54 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d55 uni2D55 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d56 uni2D56 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d57 uni2D57 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d58 uni2D58 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d59 uni2D59 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d5a uni2D5A 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d5b uni2D5B 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d5c uni2D5C 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d5d uni2D5D 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d5e uni2D5E 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d5f uni2D5F 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d60 uni2D60 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d61 uni2D61 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d62 uni2D62 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d63 uni2D63 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d64 uni2D64 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d65 uni2D65 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2d6f uni2D6F 2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+2e18 uni2E18 2.26 +U+2e22 uni2E22 2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.30 (Sans Bold) 2.31 (Serif Condensed Italic) +U+2e23 uni2E23 2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.30 (Sans Bold) 2.31 (Serif Condensed Italic) +U+2e24 uni2E24 2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.30 (Sans Bold) 2.31 (Serif Condensed Italic) +U+2e25 uni2E25 2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.30 (Sans Bold) 2.31 (Serif Condensed Italic) +U+2e2e uni2E2E 2.26 +U+4dc0 uni4DC0 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dc1 uni4DC1 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dc2 uni4DC2 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dc3 uni4DC3 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dc4 uni4DC4 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dc5 uni4DC5 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dc6 uni4DC6 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dc7 uni4DC7 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dc8 uni4DC8 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dc9 uni4DC9 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dca uni4DCA 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dcb uni4DCB 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dcc uni4DCC 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dcd uni4DCD 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dce uni4DCE 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dcf uni4DCF 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dd0 uni4DD0 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dd1 uni4DD1 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dd2 uni4DD2 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dd3 uni4DD3 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dd4 uni4DD4 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dd5 uni4DD5 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dd6 uni4DD6 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dd7 uni4DD7 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dd8 uni4DD8 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dd9 uni4DD9 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dda uni4DDA 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4ddb uni4DDB 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4ddc uni4DDC 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4ddd uni4DDD 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dde uni4DDE 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4ddf uni4DDF 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4de0 uni4DE0 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4de1 uni4DE1 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4de2 uni4DE2 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4de3 uni4DE3 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4de4 uni4DE4 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4de5 uni4DE5 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4de6 uni4DE6 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4de7 uni4DE7 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4de8 uni4DE8 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4de9 uni4DE9 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dea uni4DEA 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4deb uni4DEB 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dec uni4DEC 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4ded uni4DED 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dee uni4DEE 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4def uni4DEF 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4df0 uni4DF0 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4df1 uni4DF1 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4df2 uni4DF2 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4df3 uni4DF3 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4df4 uni4DF4 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4df5 uni4DF5 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4df6 uni4DF6 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4df7 uni4DF7 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4df8 uni4DF8 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4df9 uni4DF9 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dfa uni4DFA 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dfb uni4DFB 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dfc uni4DFC 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dfd uni4DFD 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dfe uni4DFE 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+4dff uni4DFF 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a644 uniA644 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+a645 uniA645 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+a646 uniA646 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+a647 uniA647 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+a64c uniA64C 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a64d uniA64D 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a650 uniA650 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+a651 uniA651 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+a654 uniA654 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+a655 uniA655 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+a656 uniA656 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+a657 uniA657 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+a662 uniA662 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a663 uniA663 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a664 uniA664 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a665 uniA665 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a666 uniA666 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a667 uniA667 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a668 uniA668 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a669 uniA669 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a66a uniA66A 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a66b uniA66B 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a66c uniA66C 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a66d uniA66D 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a66e uniA66E 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a68a uniA68A 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a68b uniA68B 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a68c uniA68C 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a68d uniA68D 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a694 uniA694 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a695 uniA695 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a708 uniA708 2.27 +U+a709 uniA709 2.27 +U+a70a uniA70A 2.27 +U+a70b uniA70B 2.27 +U+a70c uniA70C 2.27 +U+a70d uniA70D 2.27 +U+a70e uniA70E 2.27 +U+a70f uniA70F 2.27 +U+a710 uniA710 2.27 +U+a711 uniA711 2.27 +U+a712 uniA712 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+a713 uniA713 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+a714 uniA714 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+a715 uniA715 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+a716 uniA716 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+a71b uniA71B 2.27 +U+a71c uniA71C 2.27 +U+a71d uniA71D 2.27 +U+a71e uniA71E 2.27 +U+a71f uniA71F 2.27 +U+a722 uniA722 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+a723 uniA723 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+a724 uniA724 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+a725 uniA725 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+a726 uniA726 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.30 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+a727 uniA727 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.30 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) +U+a728 uniA728 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a729 uniA729 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a72a uniA72A 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a72b uniA72B 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a730 uniA730 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a731 uniA731 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a732 uniA732 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a733 uniA733 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a734 uniA734 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a735 uniA735 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a736 uniA736 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a737 uniA737 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a738 uniA738 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a739 uniA739 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a73a uniA73A 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a73b uniA73B 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a73c uniA73C 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a73d uniA73D 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.32 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) +U+a73e uniA73E 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a73f uniA73F 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a746 uniA746 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a747 uniA747 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a748 uniA748 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a749 uniA749 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a74a uniA74A 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a74b uniA74B 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a74e uniA74E 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a74f uniA74F 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a750 uniA750 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a751 uniA751 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a752 uniA752 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a753 uniA753 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a756 uniA756 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a757 uniA757 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a764 uniA764 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a765 uniA765 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a766 uniA766 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a767 uniA767 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a780 uniA780 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a781 uniA781 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a782 uniA782 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a783 uniA783 2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+a789 uniA789 2.28 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+a78a uniA78A 2.28 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) +U+a78b uniA78B 2.26 +U+a78c uniA78C 2.26 +U+a78d uniA78D 2.31 +U+a7fb uniA7FB 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a7fc uniA7FC 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a7fd uniA7FD 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a7fe uniA7FE 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+a7ff uniA7FF 2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+e000 uniE000 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+e001 uniE001 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+e002 uniE002 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+e003 uniE003 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+e004 uniE004 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+e005 uniE005 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+e006 uniE006 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+e007 uniE007 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+e008 uniE008 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) +U+e009 uniE009 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) +U+e00a uniE00A 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) +U+e00b uniE00B 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) +U+e00c uniE00C 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) +U+e00d uniE00D 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) +U+e00e uniE00E 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) +U+e00f uniE00F 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) +U+e010 uniE010 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) +U+e011 uniE011 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) +U+e012 uniE012 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) +U+e013 uniE013 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) +U+e014 uniE014 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) +U+e015 uniE015 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+e016 uniE016 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+e017 uniE017 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+e018 uniE018 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+e019 uniE019 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+e01a uniE01A 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+e01b uniE01B 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+e01c uniE01C 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+e01d uniE01D 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+ef00 uni02E5.5 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+ef01 uni02E6.5 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+ef02 uni02E7.5 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+ef03 uni02E8.5 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+ef04 uni02E9.5 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+ef05 uni02E5.4 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+ef06 uni02E6.4 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+ef07 uni02E7.4 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+ef08 uni02E8.4 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+ef09 uni02E9.4 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+ef0a uni02E5.3 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+ef0b uni02E6.3 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+ef0c uni02E7.3 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+ef0d uni02E8.3 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+ef0e uni02E9.3 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+ef0f uni02E5.2 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+ef10 uni02E6.2 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+ef11 uni02E7.2 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+ef12 uni02E8.2 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+ef13 uni02E9.2 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+ef14 uni02E5.1 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+ef15 uni02E6.1 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+ef16 uni02E7.1 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+ef17 uni02E8.1 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+ef18 uni02E9.1 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+ef19 stem 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+f000 uniF000 2.10 (Sans) 2.11 (Sans Condensed) +U+f001 uniF001 2.10 (Sans) 2.11 (Sans Condensed) +U+f208 uniF208 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+f20a uniF20A 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+f215 uniF215 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+f216 uniF216 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+f217 uniF217 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+f21a uniF21A 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+f21b uniF21B 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+f25f uniF25F 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+f400 uniF400 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f401 uniF401 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f402 uniF402 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f403 uniF403 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f404 uniF404 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f405 uniF405 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f406 uniF406 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f407 uniF407 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f408 uniF408 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f409 uniF409 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f40a uniF40A 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f40b uniF40B 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f40c uniF40C 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f40d uniF40D 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f40e uniF40E 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f40f uniF40F 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f410 uniF410 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f411 uniF411 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f412 uniF412 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f413 uniF413 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f414 uniF414 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f415 uniF415 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f416 uniF416 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f417 uniF417 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f418 uniF418 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f419 uniF419 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f41a uniF41A 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f41b uniF41B 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f41c uniF41C 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f41d uniF41D 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f41e uniF41E 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f41f uniF41F 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f420 uniF420 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f421 uniF421 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f422 uniF422 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f423 uniF423 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f424 uniF424 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f425 uniF425 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f426 uniF426 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f428 uniF428 2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+f5c5 uniF5C5 2.9 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+f6c4 uniF6C4 2.10 (Serif Bold Italic, Serif Italic) 2.11 (Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed) +U+f6c5 uniF6C5 2.5 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.9 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Condensed Oblique, Sans Oblique) 2.18 (Sans ExtraLight) 2.23 (Serif Italic Condensed) +U+f6c6 uniF6C6 2.5 (Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+f6c7 uniF6C7 2.11 (Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+f6c8 uniF6C8 2.11 (Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+f6d1 cyrBreve 2.5 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+f6d4 cyrbreve 2.5 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+fb00 uniFB00 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.8 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+fb01 fi original +U+fb02 fl original +U+fb03 uniFB03 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.8 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+fb04 uniFB04 2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.8 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+fb05 uniFB05 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+fb06 uniFB06 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+fb13 uniFB13 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb14 uniFB14 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb15 uniFB15 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb16 uniFB16 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb17 uniFB17 2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb1d uniFB1D 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb1e uniFB1E 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+fb1f uniFB1F 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb20 uniFB20 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb21 uniFB21 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+fb22 uniFB22 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+fb23 uniFB23 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+fb24 uniFB24 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+fb25 uniFB25 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+fb26 uniFB26 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+fb27 uniFB27 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+fb28 uniFB28 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+fb29 uniFB29 2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans ExtraLight, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+fb2a uniFB2A 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb2b uniFB2B 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb2c uniFB2C 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb2d uniFB2D 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb2e uniFB2E 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb2f uniFB2F 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb30 uniFB30 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb31 uniFB31 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb32 uniFB32 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb33 uniFB33 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb34 uniFB34 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb35 uniFB35 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb36 uniFB36 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb37 uniFB37 2.11 (Sans Condensed Oblique, Sans Oblique) +U+fb38 uniFB38 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb39 uniFB39 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb3a uniFB3A 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb3b uniFB3B 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb3c uniFB3C 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb3e uniFB3E 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb40 uniFB40 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb41 uniFB41 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb43 uniFB43 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb44 uniFB44 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb46 uniFB46 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb47 uniFB47 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb48 uniFB48 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb49 uniFB49 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb4a uniFB4A 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb4b uniFB4B 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb4c uniFB4C 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb4d uniFB4D 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb4e uniFB4E 2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fb4f uniFB4F 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) +U+fb52 uniFB52 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb53 uniFB53 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb54 uniFB54 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb55 uniFB55 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb56 uniFB56 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb57 uniFB57 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb58 uniFB58 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb59 uniFB59 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb5a uniFB5A 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb5b uniFB5B 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb5c uniFB5C 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb5d uniFB5D 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb5e uniFB5E 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb5f uniFB5F 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb60 uniFB60 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb61 uniFB61 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb62 uniFB62 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb63 uniFB63 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb64 uniFB64 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb65 uniFB65 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb66 uniFB66 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb67 uniFB67 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb68 uniFB68 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb69 uniFB69 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb6a uniFB6A 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb6b uniFB6B 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb6c uniFB6C 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb6d uniFB6D 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb6e uniFB6E 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb6f uniFB6F 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb70 uniFB70 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb71 uniFB71 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb72 uniFB72 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb73 uniFB73 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb74 uniFB74 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb75 uniFB75 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb76 uniFB76 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb77 uniFB77 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb78 uniFB78 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb79 uniFB79 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb7a uniFB7A 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb7b uniFB7B 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb7c uniFB7C 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb7d uniFB7D 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb7e uniFB7E 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb7f uniFB7F 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb80 uniFB80 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb81 uniFB81 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb82 uniFB82 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fb83 uniFB83 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fb84 uniFB84 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fb85 uniFB85 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fb86 uniFB86 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fb87 uniFB87 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fb88 uniFB88 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fb89 uniFB89 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fb8a uniFB8A 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb8b uniFB8B 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb8c uniFB8C 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb8d uniFB8D 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb8e uniFB8E 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb8f uniFB8F 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb90 uniFB90 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb91 uniFB91 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb92 uniFB92 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb93 uniFB93 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb94 uniFB94 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb95 uniFB95 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb96 uniFB96 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fb97 uniFB97 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fb98 uniFB98 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fb99 uniFB99 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fb9a uniFB9A 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fb9b uniFB9B 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fb9c uniFB9C 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fb9d uniFB9D 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fb9e uniFB9E 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fb9f uniFB9F 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fba0 uniFBA0 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fba1 uniFBA1 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fba2 uniFBA2 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fba3 uniFBA3 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fbaa uniFBAA 2.16 (Sans Mono, Sans Mono Bold) 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fbab uniFBAB 2.16 (Sans Mono, Sans Mono Bold) 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fbac uniFBAC 2.16 (Sans Mono, Sans Mono Bold) 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fbad uniFBAD 2.16 (Sans Mono, Sans Mono Bold) 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fbd3 uniFBD3 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fbd4 uniFBD4 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fbd5 uniFBD5 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fbd6 uniFBD6 2.31 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fbd9 uniFBD9 2.7 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fbda uniFBDA 2.7 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) +U+fbe8 uniFBE8 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fbe9 uniFBE9 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fbfc uniFBFC 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fbfd uniFBFD 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fbfe uniFBFE 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fbff uniFBFF 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe00 uniFE00 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+fe01 uniFE01 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+fe02 uniFE02 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+fe03 uniFE03 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+fe04 uniFE04 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+fe05 uniFE05 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+fe06 uniFE06 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+fe07 uniFE07 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+fe08 uniFE08 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+fe09 uniFE09 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+fe0a uniFE0A 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+fe0b uniFE0B 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+fe0c uniFE0C 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+fe0d uniFE0D 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+fe0e uniFE0E 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+fe0f uniFE0F 2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+fe20 uniFE20 2.21 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fe21 uniFE21 2.21 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fe22 uniFE22 2.21 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fe23 uniFE23 2.21 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+fe70 uniFE70 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe71 uniFE71 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe72 uniFE72 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe73 uniFE73 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe74 uniFE74 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe76 uniFE76 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe77 uniFE77 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe78 uniFE78 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe79 uniFE79 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe7a uniFE7A 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe7b uniFE7B 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe7c uniFE7C 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe7d uniFE7D 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe7e uniFE7E 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe7f uniFE7F 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe80 uniFE80 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe81 uniFE81 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe82 uniFE82 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe83 uniFE83 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe84 uniFE84 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe85 uniFE85 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe86 uniFE86 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe87 uniFE87 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe88 uniFE88 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe89 uniFE89 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe8a uniFE8A 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe8b uniFE8B 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe8c uniFE8C 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe8d uniFE8D 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe8e uniFE8E 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe8f uniFE8F 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe90 uniFE90 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe91 uniFE91 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe92 uniFE92 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe93 uniFE93 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe94 uniFE94 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe95 uniFE95 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe96 uniFE96 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe97 uniFE97 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe98 uniFE98 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe99 uniFE99 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe9a uniFE9A 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe9b uniFE9B 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe9c uniFE9C 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe9d uniFE9D 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe9e uniFE9E 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fe9f uniFE9F 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fea0 uniFEA0 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fea1 uniFEA1 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fea2 uniFEA2 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fea3 uniFEA3 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fea4 uniFEA4 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fea5 uniFEA5 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fea6 uniFEA6 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fea7 uniFEA7 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fea8 uniFEA8 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fea9 uniFEA9 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+feaa uniFEAA 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+feab uniFEAB 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+feac uniFEAC 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fead uniFEAD 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+feae uniFEAE 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+feaf uniFEAF 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+feb0 uniFEB0 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+feb1 uniFEB1 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+feb2 uniFEB2 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+feb3 uniFEB3 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+feb4 uniFEB4 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+feb5 uniFEB5 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+feb6 uniFEB6 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+feb7 uniFEB7 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+feb8 uniFEB8 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+feb9 uniFEB9 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+feba uniFEBA 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+febb uniFEBB 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+febc uniFEBC 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+febd uniFEBD 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+febe uniFEBE 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+febf uniFEBF 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fec0 uniFEC0 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fec1 uniFEC1 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fec2 uniFEC2 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fec3 uniFEC3 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fec4 uniFEC4 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fec5 uniFEC5 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fec6 uniFEC6 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fec7 uniFEC7 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fec8 uniFEC8 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fec9 uniFEC9 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+feca uniFECA 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fecb uniFECB 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fecc uniFECC 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fecd uniFECD 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fece uniFECE 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fecf uniFECF 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fed0 uniFED0 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fed1 uniFED1 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fed2 uniFED2 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fed3 uniFED3 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fed4 uniFED4 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fed5 uniFED5 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fed6 uniFED6 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fed7 uniFED7 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fed8 uniFED8 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fed9 uniFED9 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+feda uniFEDA 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fedb uniFEDB 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fedc uniFEDC 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fedd uniFEDD 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fede uniFEDE 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fedf uniFEDF 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fee0 uniFEE0 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fee1 uniFEE1 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fee2 uniFEE2 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fee3 uniFEE3 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fee4 uniFEE4 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fee5 uniFEE5 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fee6 uniFEE6 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fee7 uniFEE7 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fee8 uniFEE8 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fee9 uniFEE9 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+feea uniFEEA 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+feeb uniFEEB 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+feec uniFEEC 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+feed uniFEED 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+feee uniFEEE 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+feef uniFEEF 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fef0 uniFEF0 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fef1 uniFEF1 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fef2 uniFEF2 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fef3 uniFEF3 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fef4 uniFEF4 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fef5 uniFEF5 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fef6 uniFEF6 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fef7 uniFEF7 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fef8 uniFEF8 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fef9 uniFEF9 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fefa uniFEFA 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fefb uniFEFB 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fefc uniFEFC 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+feff uniFEFF 2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold) +U+fff9 uniFFF9 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+fffa uniFFFA 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+fffb uniFFFB 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+fffc uniFFFC 2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) +U+fffd uniFFFD 1.12 +U+1d300 u1D300 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d301 u1D301 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d302 u1D302 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d303 u1D303 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d304 u1D304 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d305 u1D305 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d306 u1D306 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d307 u1D307 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d308 u1D308 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d309 u1D309 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d30a u1D30A 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d30b u1D30B 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d30c u1D30C 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d30d u1D30D 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d30e u1D30E 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d30f u1D30F 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d310 u1D310 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d311 u1D311 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d312 u1D312 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d313 u1D313 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d314 u1D314 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d315 u1D315 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d316 u1D316 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d317 u1D317 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d318 u1D318 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d319 u1D319 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d31a u1D31A 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d31b u1D31B 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d31c u1D31C 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d31d u1D31D 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d31e u1D31E 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d31f u1D31F 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d320 u1D320 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d321 u1D321 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d322 u1D322 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d323 u1D323 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d324 u1D324 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d325 u1D325 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d326 u1D326 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d327 u1D327 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d328 u1D328 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d329 u1D329 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d32a u1D32A 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d32b u1D32B 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d32c u1D32C 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d32d u1D32D 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d32e u1D32E 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d32f u1D32F 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d330 u1D330 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d331 u1D331 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d332 u1D332 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d333 u1D333 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d334 u1D334 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d335 u1D335 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d336 u1D336 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d337 u1D337 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d338 u1D338 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d339 u1D339 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d33a u1D33A 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d33b u1D33B 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d33c u1D33C 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d33d u1D33D 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d33e u1D33E 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d33f u1D33F 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d340 u1D340 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d341 u1D341 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d342 u1D342 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d343 u1D343 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d344 u1D344 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d345 u1D345 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d346 u1D346 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d347 u1D347 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d348 u1D348 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d349 u1D349 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d34a u1D34A 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d34b u1D34B 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d34c u1D34C 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d34d u1D34D 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d34e u1D34E 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d34f u1D34F 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d350 u1D350 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d351 u1D351 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d352 u1D352 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d353 u1D353 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d354 u1D354 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d355 u1D355 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d356 u1D356 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1d400 u1D400 2.23 (Serif Bold, Serif Condensed Bold) +U+1d401 u1D401 2.23 (Serif Bold, Serif Condensed Bold) +U+1d402 u1D402 2.23 (Serif Bold, Serif Condensed Bold) +U+1d403 u1D403 2.23 (Serif Bold, Serif Condensed Bold) +U+1d404 u1D404 2.23 (Serif Bold, Serif Condensed Bold) +U+1d405 u1D405 2.23 (Serif Bold, Serif Condensed Bold) +U+1d406 u1D406 2.23 (Serif Bold, Serif Condensed Bold) +U+1d407 u1D407 2.23 (Serif Bold, Serif Condensed Bold) +U+1d408 u1D408 2.23 (Serif Bold, Serif Condensed Bold) +U+1d409 u1D409 2.23 (Serif Bold, Serif Condensed Bold) +U+1d40a u1D40A 2.23 (Serif Bold, Serif Condensed Bold) +U+1d40b u1D40B 2.23 (Serif Bold, Serif Condensed Bold) +U+1d40c u1D40C 2.23 (Serif Bold, Serif Condensed Bold) +U+1d40d u1D40D 2.23 (Serif Bold, Serif Condensed Bold) +U+1d40e u1D40E 2.23 (Serif Bold, Serif Condensed Bold) +U+1d40f u1D40F 2.23 (Serif Bold, Serif Condensed Bold) +U+1d410 u1D410 2.23 (Serif Bold, Serif Condensed Bold) +U+1d411 u1D411 2.23 (Serif Bold, Serif Condensed Bold) +U+1d412 u1D412 2.23 (Serif Bold, Serif Condensed Bold) +U+1d413 u1D413 2.23 (Serif Bold, Serif Condensed Bold) +U+1d414 u1D414 2.23 (Serif Bold, Serif Condensed Bold) +U+1d415 u1D415 2.23 (Serif Bold, Serif Condensed Bold) +U+1d416 u1D416 2.23 (Serif Bold, Serif Condensed Bold) +U+1d417 u1D417 2.23 (Serif Bold, Serif Condensed Bold) +U+1d418 u1D418 2.23 (Serif Bold, Serif Condensed Bold) +U+1d419 u1D419 2.23 (Serif Bold, Serif Condensed Bold) +U+1d41a u1D41A 2.23 (Serif Bold, Serif Condensed Bold) +U+1d41b u1D41B 2.23 (Serif Bold, Serif Condensed Bold) +U+1d41c u1D41C 2.23 (Serif Bold, Serif Condensed Bold) +U+1d41d u1D41D 2.23 (Serif Bold, Serif Condensed Bold) +U+1d41e u1D41E 2.23 (Serif Bold, Serif Condensed Bold) +U+1d41f u1D41F 2.23 (Serif Bold, Serif Condensed Bold) +U+1d420 u1D420 2.23 (Serif Bold, Serif Condensed Bold) +U+1d421 u1D421 2.23 (Serif Bold, Serif Condensed Bold) +U+1d422 u1D422 2.23 (Serif Bold, Serif Condensed Bold) +U+1d423 u1D423 2.23 (Serif Bold, Serif Condensed Bold) +U+1d424 u1D424 2.23 (Serif Bold, Serif Condensed Bold) +U+1d425 u1D425 2.23 (Serif Bold, Serif Condensed Bold) +U+1d426 u1D426 2.23 (Serif Bold, Serif Condensed Bold) +U+1d427 u1D427 2.23 (Serif Bold, Serif Condensed Bold) +U+1d428 u1D428 2.23 (Serif Bold, Serif Condensed Bold) +U+1d429 u1D429 2.23 (Serif Bold, Serif Condensed Bold) +U+1d42a u1D42A 2.23 (Serif Bold, Serif Condensed Bold) +U+1d42b u1D42B 2.23 (Serif Bold, Serif Condensed Bold) +U+1d42c u1D42C 2.23 (Serif Bold, Serif Condensed Bold) +U+1d42d u1D42D 2.23 (Serif Bold, Serif Condensed Bold) +U+1d42e u1D42E 2.23 (Serif Bold, Serif Condensed Bold) +U+1d42f u1D42F 2.23 (Serif Bold, Serif Condensed Bold) +U+1d430 u1D430 2.23 (Serif Bold, Serif Condensed Bold) +U+1d431 u1D431 2.23 (Serif Bold, Serif Condensed Bold) +U+1d432 u1D432 2.23 (Serif Bold, Serif Condensed Bold) +U+1d433 u1D433 2.23 (Serif Bold, Serif Condensed Bold) +U+1d434 u1D434 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d435 u1D435 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d436 u1D436 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d437 u1D437 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d438 u1D438 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d439 u1D439 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d43a u1D43A 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d43b u1D43B 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d43c u1D43C 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d43d u1D43D 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d43e u1D43E 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d43f u1D43F 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d440 u1D440 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d441 u1D441 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d442 u1D442 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d443 u1D443 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d444 u1D444 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d445 u1D445 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d446 u1D446 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d447 u1D447 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d448 u1D448 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d449 u1D449 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d44a u1D44A 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d44b u1D44B 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d44c u1D44C 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d44d u1D44D 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d44e u1D44E 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d44f u1D44F 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d450 u1D450 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d451 u1D451 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d452 u1D452 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d453 u1D453 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d454 u1D454 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d456 u1D456 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d457 u1D457 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d458 u1D458 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d459 u1D459 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d45a u1D45A 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d45b u1D45B 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d45c u1D45C 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d45d u1D45D 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d45e u1D45E 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d45f u1D45F 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d460 u1D460 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d461 u1D461 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d462 u1D462 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d463 u1D463 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d464 u1D464 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d465 u1D465 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d466 u1D466 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d467 u1D467 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d468 u1D468 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d469 u1D469 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d46a u1D46A 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d46b u1D46B 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d46c u1D46C 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d46d u1D46D 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d46e u1D46E 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d46f u1D46F 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d470 u1D470 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d471 u1D471 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d472 u1D472 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d473 u1D473 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d474 u1D474 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d475 u1D475 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d476 u1D476 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d477 u1D477 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d478 u1D478 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d479 u1D479 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d47a u1D47A 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d47b u1D47B 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d47c u1D47C 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d47d u1D47D 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d47e u1D47E 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d47f u1D47F 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d480 u1D480 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d481 u1D481 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d482 u1D482 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d483 u1D483 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d484 u1D484 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d485 u1D485 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d486 u1D486 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d487 u1D487 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d488 u1D488 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d489 u1D489 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d48a u1D48A 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d48b u1D48B 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d48c u1D48C 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d48d u1D48D 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d48e u1D48E 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d48f u1D48F 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d490 u1D490 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d491 u1D491 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d492 u1D492 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d493 u1D493 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d494 u1D494 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d495 u1D495 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d496 u1D496 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d497 u1D497 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d498 u1D498 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d499 u1D499 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d49a u1D49A 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d49b u1D49B 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d538 u1D538 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d539 u1D539 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d53b u1D53B 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d53c u1D53C 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d53d u1D53D 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d53e u1D53E 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d540 u1D540 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d541 u1D541 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d542 u1D542 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d543 u1D543 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d544 u1D544 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d546 u1D546 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d54a u1D54A 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d54b u1D54B 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d54c u1D54C 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d54d u1D54D 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d54e u1D54E 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d54f u1D54F 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d550 u1D550 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d552 u1D552 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d553 u1D553 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d554 u1D554 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d555 u1D555 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d556 u1D556 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d557 u1D557 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d558 u1D558 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d559 u1D559 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d55a u1D55A 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d55b u1D55B 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d55c u1D55C 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d55d u1D55D 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d55e u1D55E 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d55f u1D55F 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d560 u1D560 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d561 u1D561 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d562 u1D562 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d563 u1D563 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d564 u1D564 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d565 u1D565 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d566 u1D566 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d567 u1D567 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d568 u1D568 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d569 u1D569 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d56a u1D56A 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d56b u1D56B 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) +U+1d5a0 u1D5A0 2.23 (Sans, Sans Condensed) +U+1d5a1 u1D5A1 2.23 (Sans, Sans Condensed) +U+1d5a2 u1D5A2 2.23 (Sans, Sans Condensed) +U+1d5a3 u1D5A3 2.23 (Sans, Sans Condensed) +U+1d5a4 u1D5A4 2.23 (Sans, Sans Condensed) +U+1d5a5 u1D5A5 2.23 (Sans, Sans Condensed) +U+1d5a6 u1D5A6 2.23 (Sans, Sans Condensed) +U+1d5a7 u1D5A7 2.23 (Sans, Sans Condensed) +U+1d5a8 u1D5A8 2.23 (Sans, Sans Condensed) +U+1d5a9 u1D5A9 2.23 (Sans, Sans Condensed) +U+1d5aa u1D5AA 2.23 (Sans, Sans Condensed) +U+1d5ab u1D5AB 2.23 (Sans, Sans Condensed) +U+1d5ac u1D5AC 2.23 (Sans, Sans Condensed) +U+1d5ad u1D5AD 2.23 (Sans, Sans Condensed) +U+1d5ae u1D5AE 2.23 (Sans, Sans Condensed) +U+1d5af u1D5AF 2.23 (Sans, Sans Condensed) +U+1d5b0 u1D5B0 2.23 (Sans, Sans Condensed) +U+1d5b1 u1D5B1 2.23 (Sans, Sans Condensed) +U+1d5b2 u1D5B2 2.23 (Sans, Sans Condensed) +U+1d5b3 u1D5B3 2.23 (Sans, Sans Condensed) +U+1d5b4 u1D5B4 2.23 (Sans, Sans Condensed) +U+1d5b5 u1D5B5 2.23 (Sans, Sans Condensed) +U+1d5b6 u1D5B6 2.23 (Sans, Sans Condensed) +U+1d5b7 u1D5B7 2.23 (Sans, Sans Condensed) +U+1d5b8 u1D5B8 2.23 (Sans, Sans Condensed) +U+1d5b9 u1D5B9 2.23 (Sans, Sans Condensed) +U+1d5ba u1D5BA 2.23 (Sans, Sans Condensed) +U+1d5bb u1D5BB 2.23 (Sans, Sans Condensed) +U+1d5bc u1D5BC 2.23 (Sans, Sans Condensed) +U+1d5bd u1D5BD 2.23 (Sans, Sans Condensed) +U+1d5be u1D5BE 2.23 (Sans, Sans Condensed) +U+1d5bf u1D5BF 2.23 (Sans, Sans Condensed) +U+1d5c0 u1D5C0 2.23 (Sans, Sans Condensed) +U+1d5c1 u1D5C1 2.23 (Sans, Sans Condensed) +U+1d5c2 u1D5C2 2.23 (Sans, Sans Condensed) +U+1d5c3 u1D5C3 2.23 (Sans, Sans Condensed) +U+1d5c4 u1D5C4 2.23 (Sans, Sans Condensed) +U+1d5c5 u1D5C5 2.23 (Sans, Sans Condensed) +U+1d5c6 u1D5C6 2.23 (Sans, Sans Condensed) +U+1d5c7 u1D5C7 2.23 (Sans, Sans Condensed) +U+1d5c8 u1D5C8 2.23 (Sans, Sans Condensed) +U+1d5c9 u1D5C9 2.23 (Sans, Sans Condensed) +U+1d5ca u1D5CA 2.23 (Sans, Sans Condensed) +U+1d5cb u1D5CB 2.23 (Sans, Sans Condensed) +U+1d5cc u1D5CC 2.23 (Sans, Sans Condensed) +U+1d5cd u1D5CD 2.23 (Sans, Sans Condensed) +U+1d5ce u1D5CE 2.23 (Sans, Sans Condensed) +U+1d5cf u1D5CF 2.23 (Sans, Sans Condensed) +U+1d5d0 u1D5D0 2.23 (Sans, Sans Condensed) +U+1d5d1 u1D5D1 2.23 (Sans, Sans Condensed) +U+1d5d2 u1D5D2 2.23 (Sans, Sans Condensed) +U+1d5d3 u1D5D3 2.23 (Sans, Sans Condensed) +U+1d5d4 u1D5D4 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5d5 u1D5D5 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5d6 u1D5D6 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5d7 u1D5D7 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5d8 u1D5D8 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5d9 u1D5D9 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5da u1D5DA 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5db u1D5DB 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5dc u1D5DC 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5dd u1D5DD 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5de u1D5DE 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5df u1D5DF 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5e0 u1D5E0 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5e1 u1D5E1 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5e2 u1D5E2 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5e3 u1D5E3 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5e4 u1D5E4 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5e5 u1D5E5 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5e6 u1D5E6 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5e7 u1D5E7 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5e8 u1D5E8 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5e9 u1D5E9 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5ea u1D5EA 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5eb u1D5EB 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5ec u1D5EC 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5ed u1D5ED 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5ee u1D5EE 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5ef u1D5EF 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5f0 u1D5F0 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5f1 u1D5F1 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5f2 u1D5F2 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5f3 u1D5F3 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5f4 u1D5F4 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5f5 u1D5F5 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5f6 u1D5F6 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5f7 u1D5F7 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5f8 u1D5F8 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5f9 u1D5F9 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5fa u1D5FA 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5fb u1D5FB 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5fc u1D5FC 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5fd u1D5FD 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5fe u1D5FE 2.23 (Sans Bold, Sans Condensed Bold) +U+1d5ff u1D5FF 2.23 (Sans Bold, Sans Condensed Bold) +U+1d600 u1D600 2.23 (Sans Bold, Sans Condensed Bold) +U+1d601 u1D601 2.23 (Sans Bold, Sans Condensed Bold) +U+1d602 u1D602 2.23 (Sans Bold, Sans Condensed Bold) +U+1d603 u1D603 2.23 (Sans Bold, Sans Condensed Bold) +U+1d604 u1D604 2.23 (Sans Bold, Sans Condensed Bold) +U+1d605 u1D605 2.23 (Sans Bold, Sans Condensed Bold) +U+1d606 u1D606 2.23 (Sans Bold, Sans Condensed Bold) +U+1d607 u1D607 2.23 (Sans Bold, Sans Condensed Bold) +U+1d608 u1D608 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d609 u1D609 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d60a u1D60A 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d60b u1D60B 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d60c u1D60C 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d60d u1D60D 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d60e u1D60E 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d60f u1D60F 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d610 u1D610 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d611 u1D611 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d612 u1D612 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d613 u1D613 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d614 u1D614 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d615 u1D615 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d616 u1D616 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d617 u1D617 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d618 u1D618 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d619 u1D619 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d61a u1D61A 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d61b u1D61B 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d61c u1D61C 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d61d u1D61D 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d61e u1D61E 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d61f u1D61F 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d620 u1D620 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d621 u1D621 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d622 u1D622 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d623 u1D623 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d624 u1D624 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d625 u1D625 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d626 u1D626 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d627 u1D627 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d628 u1D628 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d629 u1D629 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d62a u1D62A 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d62b u1D62B 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d62c u1D62C 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d62d u1D62D 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d62e u1D62E 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d62f u1D62F 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d630 u1D630 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d631 u1D631 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d632 u1D632 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d633 u1D633 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d634 u1D634 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d635 u1D635 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d636 u1D636 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d637 u1D637 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d638 u1D638 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d639 u1D639 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d63a u1D63A 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d63b u1D63B 2.23 (Sans Condensed Oblique, Sans Oblique) +U+1d63c u1D63C 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d63d u1D63D 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d63e u1D63E 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d63f u1D63F 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d640 u1D640 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d641 u1D641 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d642 u1D642 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d643 u1D643 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d644 u1D644 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d645 u1D645 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d646 u1D646 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d647 u1D647 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d648 u1D648 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d649 u1D649 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d64a u1D64A 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d64b u1D64B 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d64c u1D64C 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d64d u1D64D 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d64e u1D64E 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d64f u1D64F 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d650 u1D650 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d651 u1D651 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d652 u1D652 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d653 u1D653 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d654 u1D654 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d655 u1D655 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d656 u1D656 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d657 u1D657 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d658 u1D658 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d659 u1D659 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d65a u1D65A 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d65b u1D65B 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d65c u1D65C 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d65d u1D65D 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d65e u1D65E 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d65f u1D65F 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d660 u1D660 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d661 u1D661 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d662 u1D662 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d663 u1D663 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d664 u1D664 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d665 u1D665 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d666 u1D666 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d667 u1D667 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d668 u1D668 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d669 u1D669 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d66a u1D66A 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d66b u1D66B 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d66c u1D66C 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d66d u1D66D 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d66e u1D66E 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d66f u1D66F 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d670 u1D670 2.23 (Sans Mono) +U+1d671 u1D671 2.23 (Sans Mono) +U+1d672 u1D672 2.23 (Sans Mono) +U+1d673 u1D673 2.23 (Sans Mono) +U+1d674 u1D674 2.23 (Sans Mono) +U+1d675 u1D675 2.23 (Sans Mono) +U+1d676 u1D676 2.23 (Sans Mono) +U+1d677 u1D677 2.23 (Sans Mono) +U+1d678 u1D678 2.23 (Sans Mono) +U+1d679 u1D679 2.23 (Sans Mono) +U+1d67a u1D67A 2.23 (Sans Mono) +U+1d67b u1D67B 2.23 (Sans Mono) +U+1d67c u1D67C 2.23 (Sans Mono) +U+1d67d u1D67D 2.23 (Sans Mono) +U+1d67e u1D67E 2.23 (Sans Mono) +U+1d67f u1D67F 2.23 (Sans Mono) +U+1d680 u1D680 2.23 (Sans Mono) +U+1d681 u1D681 2.23 (Sans Mono) +U+1d682 u1D682 2.23 (Sans Mono) +U+1d683 u1D683 2.23 (Sans Mono) +U+1d684 u1D684 2.23 (Sans Mono) +U+1d685 u1D685 2.23 (Sans Mono) +U+1d686 u1D686 2.23 (Sans Mono) +U+1d687 u1D687 2.23 (Sans Mono) +U+1d688 u1D688 2.23 (Sans Mono) +U+1d689 u1D689 2.23 (Sans Mono) +U+1d68a u1D68A 2.23 (Sans Mono) +U+1d68b u1D68B 2.23 (Sans Mono) +U+1d68c u1D68C 2.23 (Sans Mono) +U+1d68d u1D68D 2.23 (Sans Mono) +U+1d68e u1D68E 2.23 (Sans Mono) +U+1d68f u1D68F 2.23 (Sans Mono) +U+1d690 u1D690 2.23 (Sans Mono) +U+1d691 u1D691 2.23 (Sans Mono) +U+1d692 u1D692 2.23 (Sans Mono) +U+1d693 u1D693 2.23 (Sans Mono) +U+1d694 u1D694 2.23 (Sans Mono) +U+1d695 u1D695 2.23 (Sans Mono) +U+1d696 u1D696 2.23 (Sans Mono) +U+1d697 u1D697 2.23 (Sans Mono) +U+1d698 u1D698 2.23 (Sans Mono) +U+1d699 u1D699 2.23 (Sans Mono) +U+1d69a u1D69A 2.23 (Sans Mono) +U+1d69b u1D69B 2.23 (Sans Mono) +U+1d69c u1D69C 2.23 (Sans Mono) +U+1d69d u1D69D 2.23 (Sans Mono) +U+1d69e u1D69E 2.23 (Sans Mono) +U+1d69f u1D69F 2.23 (Sans Mono) +U+1d6a0 u1D6A0 2.23 (Sans Mono) +U+1d6a1 u1D6A1 2.23 (Sans Mono) +U+1d6a2 u1D6A2 2.23 (Sans Mono) +U+1d6a3 u1D6A3 2.23 (Sans Mono) +U+1d6a4 u1D6A4 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6a5 u1D6A5 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6a8 u1D6A8 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6a9 u1D6A9 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6aa u1D6AA 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6ab u1D6AB 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6ac u1D6AC 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6ad u1D6AD 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6ae u1D6AE 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6af u1D6AF 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6b0 u1D6B0 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6b1 u1D6B1 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6b2 u1D6B2 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6b3 u1D6B3 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6b4 u1D6B4 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6b5 u1D6B5 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6b6 u1D6B6 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6b7 u1D6B7 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6b8 u1D6B8 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6b9 u1D6B9 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6ba u1D6BA 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6bb u1D6BB 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6bc u1D6BC 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6bd u1D6BD 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6be u1D6BE 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6bf u1D6BF 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6c0 u1D6C0 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6c1 u1D6C1 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6c2 u1D6C2 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6c3 u1D6C3 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6c4 u1D6C4 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6c5 u1D6C5 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6c6 u1D6C6 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6c7 u1D6C7 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6c8 u1D6C8 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6c9 u1D6C9 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6ca u1D6CA 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6cb u1D6CB 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6cc u1D6CC 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6cd u1D6CD 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6ce u1D6CE 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6cf u1D6CF 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6d0 u1D6D0 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6d1 u1D6D1 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6d2 u1D6D2 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6d3 u1D6D3 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6d4 u1D6D4 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6d5 u1D6D5 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6d6 u1D6D6 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6d7 u1D6D7 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6d8 u1D6D8 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6d9 u1D6D9 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6da u1D6DA 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6db u1D6DB 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6dc u1D6DC 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6dd u1D6DD 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6de u1D6DE 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6df u1D6DF 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6e0 u1D6E0 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6e1 u1D6E1 2.23 (Serif Bold, Serif Condensed Bold) +U+1d6e2 u1D6E2 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6e3 u1D6E3 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6e4 u1D6E4 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6e5 u1D6E5 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6e6 u1D6E6 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6e7 u1D6E7 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6e8 u1D6E8 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6e9 u1D6E9 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6ea u1D6EA 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6eb u1D6EB 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6ec u1D6EC 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6ed u1D6ED 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6ee u1D6EE 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6ef u1D6EF 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6f0 u1D6F0 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6f1 u1D6F1 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6f2 u1D6F2 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6f3 u1D6F3 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6f4 u1D6F4 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6f5 u1D6F5 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6f6 u1D6F6 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6f7 u1D6F7 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6f8 u1D6F8 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6f9 u1D6F9 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6fa u1D6FA 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6fb u1D6FB 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6fc u1D6FC 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6fd u1D6FD 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6fe u1D6FE 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d6ff u1D6FF 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d700 u1D700 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d701 u1D701 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d702 u1D702 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d703 u1D703 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d704 u1D704 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d705 u1D705 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d706 u1D706 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d707 u1D707 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d708 u1D708 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d709 u1D709 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d70a u1D70A 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d70b u1D70B 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d70c u1D70C 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d70d u1D70D 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d70e u1D70E 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d70f u1D70F 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d710 u1D710 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d711 u1D711 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d712 u1D712 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d713 u1D713 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d714 u1D714 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d715 u1D715 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d716 u1D716 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d717 u1D717 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d718 u1D718 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d719 u1D719 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d71a u1D71A 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d71b u1D71B 2.23 (Serif Italic, Serif Italic Condensed) 2.31 (Serif Condensed Italic) +U+1d71c u1D71C 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d71d u1D71D 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d71e u1D71E 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d71f u1D71F 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d720 u1D720 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d721 u1D721 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d722 u1D722 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d723 u1D723 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d724 u1D724 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d725 u1D725 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d726 u1D726 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d727 u1D727 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d728 u1D728 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d729 u1D729 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d72a u1D72A 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d72b u1D72B 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d72c u1D72C 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d72d u1D72D 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d72e u1D72E 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d72f u1D72F 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d730 u1D730 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d731 u1D731 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d732 u1D732 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d733 u1D733 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d734 u1D734 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d735 u1D735 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d736 u1D736 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d737 u1D737 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d738 u1D738 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d739 u1D739 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d73a u1D73A 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d73b u1D73B 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d73c u1D73C 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d73d u1D73D 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d73e u1D73E 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d73f u1D73F 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d740 u1D740 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d741 u1D741 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d742 u1D742 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d743 u1D743 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d744 u1D744 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d745 u1D745 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d746 u1D746 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d747 u1D747 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d748 u1D748 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d749 u1D749 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d74a u1D74A 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d74b u1D74B 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d74c u1D74C 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d74d u1D74D 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d74e u1D74E 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d74f u1D74F 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d750 u1D750 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d751 u1D751 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d752 u1D752 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d753 u1D753 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d754 u1D754 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d755 u1D755 2.23 (Serif Bold Italic, Serif Condensed Bold Italic) +U+1d756 u1D756 2.23 (Sans Bold, Sans Condensed Bold) +U+1d757 u1D757 2.23 (Sans Bold, Sans Condensed Bold) +U+1d758 u1D758 2.23 (Sans Bold, Sans Condensed Bold) +U+1d759 u1D759 2.23 (Sans Bold, Sans Condensed Bold) +U+1d75a u1D75A 2.23 (Sans Bold, Sans Condensed Bold) +U+1d75b u1D75B 2.23 (Sans Bold, Sans Condensed Bold) +U+1d75c u1D75C 2.23 (Sans Bold, Sans Condensed Bold) +U+1d75d u1D75D 2.23 (Sans Bold, Sans Condensed Bold) +U+1d75e u1D75E 2.23 (Sans Bold, Sans Condensed Bold) +U+1d75f u1D75F 2.23 (Sans Bold, Sans Condensed Bold) +U+1d760 u1D760 2.23 (Sans Bold, Sans Condensed Bold) +U+1d761 u1D761 2.23 (Sans Bold, Sans Condensed Bold) +U+1d762 u1D762 2.23 (Sans Bold, Sans Condensed Bold) +U+1d763 u1D763 2.23 (Sans Bold, Sans Condensed Bold) +U+1d764 u1D764 2.23 (Sans Bold, Sans Condensed Bold) +U+1d765 u1D765 2.23 (Sans Bold, Sans Condensed Bold) +U+1d766 u1D766 2.23 (Sans Bold, Sans Condensed Bold) +U+1d767 u1D767 2.23 (Sans Bold, Sans Condensed Bold) +U+1d768 u1D768 2.23 (Sans Bold, Sans Condensed Bold) +U+1d769 u1D769 2.23 (Sans Bold, Sans Condensed Bold) +U+1d76a u1D76A 2.23 (Sans Bold, Sans Condensed Bold) +U+1d76b u1D76B 2.23 (Sans Bold, Sans Condensed Bold) +U+1d76c u1D76C 2.23 (Sans Bold, Sans Condensed Bold) +U+1d76d u1D76D 2.23 (Sans Bold, Sans Condensed Bold) +U+1d76e u1D76E 2.23 (Sans Bold, Sans Condensed Bold) +U+1d76f u1D76F 2.23 (Sans Bold, Sans Condensed Bold) +U+1d770 u1D770 2.23 (Sans Bold, Sans Condensed Bold) +U+1d771 u1D771 2.23 (Sans Bold, Sans Condensed Bold) +U+1d772 u1D772 2.23 (Sans Bold, Sans Condensed Bold) +U+1d773 u1D773 2.23 (Sans Bold, Sans Condensed Bold) +U+1d774 u1D774 2.23 (Sans Bold, Sans Condensed Bold) +U+1d775 u1D775 2.23 (Sans Bold, Sans Condensed Bold) +U+1d776 u1D776 2.23 (Sans Bold, Sans Condensed Bold) +U+1d777 u1D777 2.23 (Sans Bold, Sans Condensed Bold) +U+1d778 u1D778 2.23 (Sans Bold, Sans Condensed Bold) +U+1d779 u1D779 2.23 (Sans Bold, Sans Condensed Bold) +U+1d77a u1D77A 2.23 (Sans Bold, Sans Condensed Bold) +U+1d77b u1D77B 2.23 (Sans Bold, Sans Condensed Bold) +U+1d77c u1D77C 2.23 (Sans Bold, Sans Condensed Bold) +U+1d77d u1D77D 2.23 (Sans Bold, Sans Condensed Bold) +U+1d77e u1D77E 2.23 (Sans Bold, Sans Condensed Bold) +U+1d77f u1D77F 2.23 (Sans Bold, Sans Condensed Bold) +U+1d780 u1D780 2.23 (Sans Bold, Sans Condensed Bold) +U+1d781 u1D781 2.23 (Sans Bold, Sans Condensed Bold) +U+1d782 u1D782 2.23 (Sans Bold, Sans Condensed Bold) +U+1d783 u1D783 2.23 (Sans Bold, Sans Condensed Bold) +U+1d784 u1D784 2.23 (Sans Bold, Sans Condensed Bold) +U+1d785 u1D785 2.23 (Sans Bold, Sans Condensed Bold) +U+1d786 u1D786 2.23 (Sans Bold, Sans Condensed Bold) +U+1d787 u1D787 2.23 (Sans Bold, Sans Condensed Bold) +U+1d788 u1D788 2.23 (Sans Bold, Sans Condensed Bold) +U+1d789 u1D789 2.23 (Sans Bold, Sans Condensed Bold) +U+1d78a u1D78A 2.23 (Sans Bold, Sans Condensed Bold) +U+1d78b u1D78B 2.23 (Sans Bold, Sans Condensed Bold) +U+1d78c u1D78C 2.23 (Sans Bold, Sans Condensed Bold) +U+1d78d u1D78D 2.23 (Sans Bold, Sans Condensed Bold) +U+1d78e u1D78E 2.23 (Sans Bold, Sans Condensed Bold) +U+1d78f u1D78F 2.23 (Sans Bold, Sans Condensed Bold) +U+1d790 u1D790 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d791 u1D791 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d792 u1D792 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d793 u1D793 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d794 u1D794 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d795 u1D795 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d796 u1D796 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d797 u1D797 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d798 u1D798 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d799 u1D799 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d79a u1D79A 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d79b u1D79B 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d79c u1D79C 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d79d u1D79D 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d79e u1D79E 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d79f u1D79F 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7a0 u1D7A0 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7a1 u1D7A1 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7a2 u1D7A2 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7a3 u1D7A3 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7a4 u1D7A4 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7a5 u1D7A5 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7a6 u1D7A6 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7a7 u1D7A7 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7a8 u1D7A8 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7a9 u1D7A9 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7aa u1D7AA 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7ab u1D7AB 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7ac u1D7AC 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7ad u1D7AD 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7ae u1D7AE 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7af u1D7AF 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7b0 u1D7B0 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7b1 u1D7B1 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7b2 u1D7B2 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7b3 u1D7B3 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7b4 u1D7B4 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7b5 u1D7B5 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7b6 u1D7B6 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7b7 u1D7B7 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7b8 u1D7B8 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7b9 u1D7B9 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7ba u1D7BA 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7bb u1D7BB 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7bc u1D7BC 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7bd u1D7BD 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7be u1D7BE 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7bf u1D7BF 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7c0 u1D7C0 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7c1 u1D7C1 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7c2 u1D7C2 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7c3 u1D7C3 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7c4 u1D7C4 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7c5 u1D7C5 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7c6 u1D7C6 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7c7 u1D7C7 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7c8 u1D7C8 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7c9 u1D7C9 2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique) +U+1d7ca u1D7CA 2.23 (Serif Bold, Serif Condensed Bold) +U+1d7cb u1D7CB 2.23 (Serif Bold, Serif Condensed Bold) +U+1d7ce u1D7CE 2.23 (Serif Bold, Serif Condensed Bold) +U+1d7cf u1D7CF 2.23 (Serif Bold, Serif Condensed Bold) +U+1d7d0 u1D7D0 2.23 (Serif Bold, Serif Condensed Bold) +U+1d7d1 u1D7D1 2.23 (Serif Bold, Serif Condensed Bold) +U+1d7d2 u1D7D2 2.23 (Serif Bold, Serif Condensed Bold) +U+1d7d3 u1D7D3 2.23 (Serif Bold, Serif Condensed Bold) +U+1d7d4 u1D7D4 2.23 (Serif Bold, Serif Condensed Bold) +U+1d7d5 u1D7D5 2.23 (Serif Bold, Serif Condensed Bold) +U+1d7d6 u1D7D6 2.23 (Serif Bold, Serif Condensed Bold) +U+1d7d7 u1D7D7 2.23 (Serif Bold, Serif Condensed Bold) +U+1d7d8 u1D7D8 2.22 (Serif, Serif Condensed) 2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Sans Bold) +U+1d7d9 u1D7D9 2.22 (Serif, Serif Condensed) 2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Sans Bold) +U+1d7da u1D7DA 2.22 (Serif, Serif Condensed) 2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Sans Bold) +U+1d7db u1D7DB 2.22 (Serif, Serif Condensed) 2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Sans Bold) +U+1d7dc u1D7DC 2.22 (Serif, Serif Condensed) 2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Sans Bold) +U+1d7dd u1D7DD 2.22 (Serif, Serif Condensed) 2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Sans Bold) +U+1d7de u1D7DE 2.22 (Serif, Serif Condensed) 2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Sans Bold) +U+1d7df u1D7DF 2.22 (Serif, Serif Condensed) 2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Sans Bold) +U+1d7e0 u1D7E0 2.22 (Serif, Serif Condensed) 2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Sans Bold) +U+1d7e1 u1D7E1 2.22 (Serif, Serif Condensed) 2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Sans Bold) +U+1d7e2 u1D7E2 2.23 (Sans, Sans Condensed) +U+1d7e3 u1D7E3 2.23 (Sans, Sans Condensed) +U+1d7e4 u1D7E4 2.23 (Sans, Sans Condensed) +U+1d7e5 u1D7E5 2.23 (Sans, Sans Condensed) +U+1d7e6 u1D7E6 2.23 (Sans, Sans Condensed) +U+1d7e7 u1D7E7 2.23 (Sans, Sans Condensed) +U+1d7e8 u1D7E8 2.23 (Sans, Sans Condensed) +U+1d7e9 u1D7E9 2.23 (Sans, Sans Condensed) +U+1d7ea u1D7EA 2.23 (Sans, Sans Condensed) +U+1d7eb u1D7EB 2.23 (Sans, Sans Condensed) +U+1d7ec u1D7EC 2.23 (Sans Bold, Sans Condensed Bold) +U+1d7ed u1D7ED 2.23 (Sans Bold, Sans Condensed Bold) +U+1d7ee u1D7EE 2.23 (Sans Bold, Sans Condensed Bold) +U+1d7ef u1D7EF 2.23 (Sans Bold, Sans Condensed Bold) +U+1d7f0 u1D7F0 2.23 (Sans Bold, Sans Condensed Bold) +U+1d7f1 u1D7F1 2.23 (Sans Bold, Sans Condensed Bold) +U+1d7f2 u1D7F2 2.23 (Sans Bold, Sans Condensed Bold) +U+1d7f3 u1D7F3 2.23 (Sans Bold, Sans Condensed Bold) +U+1d7f4 u1D7F4 2.23 (Sans Bold, Sans Condensed Bold) +U+1d7f5 u1D7F5 2.23 (Sans Bold, Sans Condensed Bold) +U+1d7f6 u1D7F6 2.23 (Sans Mono) +U+1d7f7 u1D7F7 2.23 (Sans Mono) +U+1d7f8 u1D7F8 2.23 (Sans Mono) +U+1d7f9 u1D7F9 2.23 (Sans Mono) +U+1d7fa u1D7FA 2.23 (Sans Mono) +U+1d7fb u1D7FB 2.23 (Sans Mono) +U+1d7fc u1D7FC 2.23 (Sans Mono) +U+1d7fd u1D7FD 2.23 (Sans Mono) +U+1d7fe u1D7FE 2.23 (Sans Mono) +U+1d7ff u1D7FF 2.23 (Sans Mono) +U+1f030 u1F030 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f031 u1F031 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f032 u1F032 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f033 u1F033 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f034 u1F034 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f035 u1F035 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f036 u1F036 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f037 u1F037 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f038 u1F038 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f039 u1F039 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f03a u1F03A 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f03b u1F03B 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f03c u1F03C 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f03d u1F03D 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f03e u1F03E 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f03f u1F03F 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f040 u1F040 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f041 u1F041 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f042 u1F042 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f043 u1F043 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f044 u1F044 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f045 u1F045 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f046 u1F046 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f047 u1F047 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f048 u1F048 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f049 u1F049 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f04a u1F04A 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f04b u1F04B 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f04c u1F04C 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f04d u1F04D 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f04e u1F04E 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f04f u1F04F 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f050 u1F050 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f051 u1F051 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f052 u1F052 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f053 u1F053 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f054 u1F054 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f055 u1F055 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f056 u1F056 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f057 u1F057 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f058 u1F058 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f059 u1F059 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f05a u1F05A 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f05b u1F05B 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f05c u1F05C 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f05d u1F05D 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f05e u1F05E 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f05f u1F05F 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f060 u1F060 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f061 u1F061 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f062 u1F062 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f063 u1F063 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f064 u1F064 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f065 u1F065 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f066 u1F066 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f067 u1F067 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f068 u1F068 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f069 u1F069 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f06a u1F06A 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f06b u1F06B 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f06c u1F06C 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f06d u1F06D 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f06e u1F06E 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f06f u1F06F 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f070 u1F070 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f071 u1F071 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f072 u1F072 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f073 u1F073 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f074 u1F074 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f075 u1F075 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f076 u1F076 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f077 u1F077 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f078 u1F078 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f079 u1F079 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f07a u1F07A 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f07b u1F07B 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f07c u1F07C 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f07d u1F07D 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f07e u1F07E 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f07f u1F07F 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f080 u1F080 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f081 u1F081 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f082 u1F082 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f083 u1F083 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f084 u1F084 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f085 u1F085 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f086 u1F086 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f087 u1F087 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f088 u1F088 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f089 u1F089 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f08a u1F08A 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f08b u1F08B 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f08c u1F08C 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f08d u1F08D 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f08e u1F08E 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f08f u1F08F 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f090 u1F090 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f091 u1F091 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f092 u1F092 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) +U+1f093 u1F093 2.32 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) diff --git a/libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/unicover.txt b/libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/unicover.txt new file mode 100644 index 000000000..081044c00 --- /dev/null +++ b/libraries/tcpdf/fonts/dejavu-fonts-ttf-2.32/unicover.txt @@ -0,0 +1,203 @@ +This is the Unicode coverage file for DejaVu fonts +($Id$) + +Control and similar characters are discounted from totals. + + Sans Serif Sans Mono +U+0000 Basic Latin 100% (95/95) 100% (95/95) 100% (95/95) +U+0080 Latin-1 Supplement 100% (96/96) 100% (96/96) 100% (96/96) +U+0100 Latin Extended-A 100% (128/128) 100% (128/128) 100% (128/128) +U+0180 Latin Extended-B 100% (208/208) 99% (207/208) 86% (179/208) +U+0250 IPA Extensions 100% (96/96) 100% (96/96) 100% (96/96) +U+02b0 Spacing Modifier Letters 78% (63/80) 57% (46/80) 60% (48/80) +U+0300 Combining Diacritical Marks 83% (93/112) 60% (68/112) 59% (67/112) +U+0370 Greek and Coptic 100% (134/134) 85% (115/134) 82% (110/134) +U+0400 Cyrillic 100% (256/256) 78% (200/256) 70% (180/256) +U+0500 Cyrillic Supplement 94% (36/38) 26% (10/38) 15% (6/38) +U+0530 Armenian 100% (86/86) (0/86) (0/86) +U+0590 Hebrew 62% (54/87) (0/87) (0/87) +U+0600 Arabic 64% (161/250) (0/250) 39% (99/250) +U+0700 Syriac (0/77) (0/77) (0/77) +U+0750 Arabic Supplement (0/48) (0/48) (0/48) +U+0780 Thaana (0/50) (0/50) (0/50) +U+07c0 NKo 91% (54/59) (0/59) (0/59) +U+0800 Samaritan (0/61) (0/61) (0/61) +U+0900 Devanagari (0/117) (0/117) (0/117) +U+0980 Bengali (0/92) (0/92) (0/92) +U+0a00 Gurmukhi (0/79) (0/79) (0/79) +U+0a80 Gujarati (0/83) (0/83) (0/83) +U+0b00 Oriya (0/84) (0/84) (0/84) +U+0b80 Tamil (0/72) (0/72) (0/72) +U+0c00 Telugu (0/93) (0/93) (0/93) +U+0c80 Kannada (0/86) (0/86) (0/86) +U+0d00 Malayalam (0/95) (0/95) (0/95) +U+0d80 Sinhala (0/80) (0/80) (0/80) +U+0e00 Thai 1% (1/87) (0/87) (0/87) +U+0e80 Lao 100% (65/65) (0/65) 70% (46/65) +U+0f00 Tibetan (0/205) (0/205) (0/205) +U+1000 Myanmar (0/160) (0/160) (0/160) +U+10a0 Georgian 100% (83/83) 100% (83/83) 54% (45/83) +U+1100 Hangul Jamo (0/256) (0/256) (0/256) +U+1200 Ethiopic (0/356) (0/356) (0/356) +U+1380 Ethiopic Supplement (0/26) (0/26) (0/26) +U+13a0 Cherokee (0/85) (0/85) (0/85) +U+1400 Unified Canadian Aboriginal Syllabics 63% (404/640) (0/640) (0/640) +U+1680 Ogham 100% (29/29) (0/29) (0/29) +U+16a0 Runic (0/81) (0/81) (0/81) +U+1700 Tagalog (0/20) (0/20) (0/20) +U+1720 Hanunoo (0/23) (0/23) (0/23) +U+1740 Buhid (0/20) (0/20) (0/20) +U+1760 Tagbanwa (0/18) (0/18) (0/18) +U+1780 Khmer (0/114) (0/114) (0/114) +U+1800 Mongolian (0/156) (0/156) (0/156) +U+18b0 Unified Canadian Aboriginal Syllabics Extended (0/70) (0/70) (0/70) +U+1900 Limbu (0/66) (0/66) (0/66) +U+1950 Tai Le (0/35) (0/35) (0/35) +U+1980 New Tai Lue (0/83) (0/83) (0/83) +U+19e0 Khmer Symbols (0/32) (0/32) (0/32) +U+1a00 Buginese (0/30) (0/30) (0/30) +U+1a20 Tai Tham (0/127) (0/127) (0/127) +U+1b00 Balinese (0/121) (0/121) (0/121) +U+1b80 Sundanese (0/55) (0/55) (0/55) +U+1c00 Lepcha (0/74) (0/74) (0/74) +U+1c50 Ol Chiki (0/48) (0/48) (0/48) +U+1cd0 Vedic Extensions (0/35) (0/35) (0/35) +U+1d00 Phonetic Extensions 82% (106/128) 48% (62/128) 48% (62/128) +U+1d80 Phonetic Extensions Supplement 59% (38/64) 57% (37/64) 57% (37/64) +U+1dc0 Combining Diacritical Marks Supplement 14% (6/42) 14% (6/42) (0/42) +U+1e00 Latin Extended Additional 98% (252/256) 96% (248/256) 71% (182/256) +U+1f00 Greek Extended 100% (233/233) 100% (233/233) 100% (233/233) +U+2000 General Punctuation 100% (107/107) 81% (87/107) 47% (51/107) +U+2070 Superscripts and Subscripts 100% (34/34) 100% (34/34) 100% (34/34) +U+20a0 Currency Symbols 92% (23/25) 24% (6/25) 92% (23/25) +U+20d0 Combining Diacritical Marks for Symbols 21% (7/33) (0/33) (0/33) +U+2100 Letterlike Symbols 93% (75/80) 40% (32/80) 21% (17/80) +U+2150 Number Forms 94% (55/58) 94% (55/58) 22% (13/58) +U+2190 Arrows 100% (112/112) 100% (112/112) 100% (112/112) +U+2200 Mathematical Operators 100% (256/256) 39% (100/256) 62% (159/256) +U+2300 Miscellaneous Technical 27% (65/233) 15% (35/233) 50% (117/233) +U+2400 Control Pictures 5% (2/39) 2% (1/39) 2% (1/39) +U+2440 Optical Character Recognition (0/11) (0/11) (0/11) +U+2460 Enclosed Alphanumerics 6% (10/160) (0/160) (0/160) +U+2500 Box Drawing 100% (128/128) 100% (128/128) 100% (128/128) +U+2580 Block Elements 100% (32/32) 100% (32/32) 100% (32/32) +U+25a0 Geometric Shapes 100% (96/96) 100% (96/96) 100% (96/96) +U+2600 Miscellaneous Symbols 74% (186/250) 12% (30/250) 59% (149/250) +U+2700 Dingbats 99% (174/175) 0% (1/175) 82% (144/175) +U+27c0 Miscellaneous Mathematical Symbols-A 20% (9/44) 11% (5/44) 11% (5/44) +U+27f0 Supplemental Arrows-A 100% (16/16) 100% (16/16) (0/16) +U+2800 Braille Patterns 100% (256/256) 100% (256/256) (0/256) +U+2900 Supplemental Arrows-B 4% (6/128) 100% (128/128) (0/128) +U+2980 Miscellaneous Mathematical Symbols-B 10% (13/128) 0% (1/128) 2% (3/128) +U+2a00 Supplemental Mathematical Operators 28% (72/256) 1% (4/256) 0% (1/256) +U+2b00 Miscellaneous Symbols and Arrows 40% (35/87) 31% (27/87) 10% (9/87) +U+2c00 Glagolitic (0/94) (0/94) (0/94) +U+2c60 Latin Extended-C 96% (31/32) 71% (23/32) 43% (14/32) +U+2c80 Coptic (0/121) (0/121) (0/121) +U+2d00 Georgian Supplement (0/38) 100% (38/38) (0/38) +U+2d30 Tifinagh 100% (55/55) (0/55) (0/55) +U+2d80 Ethiopic Extended (0/79) (0/79) (0/79) +U+2de0 Cyrillic Extended-A (0/32) (0/32) (0/32) +U+2e00 Supplemental Punctuation 12% (6/50) 12% (6/50) 12% (6/50) +U+2e80 CJK Radicals Supplement (0/115) (0/115) (0/115) +U+2f00 Kangxi Radicals (0/214) (0/214) (0/214) +U+2ff0 Ideographic Description Characters (0/12) (0/12) (0/12) +U+3000 CJK Symbols and Punctuation (0/64) (0/64) (0/64) +U+3040 Hiragana (0/93) (0/93) (0/93) +U+30a0 Katakana (0/96) (0/96) (0/96) +U+3100 Bopomofo (0/41) (0/41) (0/41) +U+3130 Hangul Compatibility Jamo (0/94) (0/94) (0/94) +U+3190 Kanbun (0/16) (0/16) (0/16) +U+31a0 Bopomofo Extended (0/24) (0/24) (0/24) +U+31c0 CJK Strokes (0/36) (0/36) (0/36) +U+31f0 Katakana Phonetic Extensions (0/16) (0/16) (0/16) +U+3200 Enclosed CJK Letters and Months (0/254) (0/254) (0/254) +U+3300 CJK Compatibility (0/256) (0/256) (0/256) +U+3400 CJK Unified Ideographs Extension A (0/0) (0/0) (0/0) +U+4dc0 Yijing Hexagram Symbols 100% (64/64) (0/64) (0/64) +U+4e00 CJK Unified Ideographs (0/0) (0/0) (0/0) +U+a000 Yi Syllables (0/1165) (0/1165) (0/1165) +U+a490 Yi Radicals (0/55) (0/55) (0/55) +U+a4d0 Lisu (0/48) (0/48) (0/48) +U+a500 Vai (0/300) (0/300) (0/300) +U+a640 Cyrillic Extended-B 39% (31/78) 12% (10/78) (0/78) +U+a6a0 Bamum (0/88) (0/88) (0/88) +U+a700 Modifier Tone Letters 62% (20/32) 62% (20/32) 62% (20/32) +U+a720 Latin Extended-D 50% (57/114) 2% (3/114) 8% (10/114) +U+a800 Syloti Nagri (0/44) (0/44) (0/44) +U+a830 Common Indic Number Forms (0/10) (0/10) (0/10) +U+a840 Phags-pa (0/56) (0/56) (0/56) +U+a880 Saurashtra (0/81) (0/81) (0/81) +U+a8e0 Devanagari Extended (0/28) (0/28) (0/28) +U+a900 Kayah Li (0/48) (0/48) (0/48) +U+a930 Rejang (0/37) (0/37) (0/37) +U+a960 Hangul Jamo Extended-A (0/29) (0/29) (0/29) +U+a980 Javanese (0/91) (0/91) (0/91) +U+aa00 Cham (0/83) (0/83) (0/83) +U+aa60 Myanmar Extended-A (0/28) (0/28) (0/28) +U+aa80 Tai Viet (0/72) (0/72) (0/72) +U+abc0 Meetei Mayek (0/56) (0/56) (0/56) +U+ac00 Hangul Syllables (0/0) (0/0) (0/0) +U+d7b0 Hangul Jamo Extended-B (0/72) (0/72) (0/72) +U+d800 High Surrogates (0/0) (0/0) (0/0) +U+db80 High Private Use Surrogates (0/0) (0/0) (0/0) +U+dc00 Low Surrogates (0/0) (0/0) (0/0) +U+e000 Private Use Area (0/0) (0/0) (0/0) +U+f900 CJK Compatibility Ideographs (0/470) (0/470) (0/470) +U+fb00 Alphabetic Presentation Forms 100% (58/58) 12% (7/58) 3% (2/58) +U+fb50 Arabic Presentation Forms-A 16% (98/595) (0/595) 12% (72/595) +U+fe00 Variation Selectors 100% (16/16) 100% (16/16) (0/16) +U+fe10 Vertical Forms (0/10) (0/10) (0/10) +U+fe20 Combining Half Marks 57% (4/7) (0/7) (0/7) +U+fe30 CJK Compatibility Forms (0/32) (0/32) (0/32) +U+fe50 Small Form Variants (0/26) (0/26) (0/26) +U+fe70 Arabic Presentation Forms-B 100% (141/141) (0/141) 100% (141/141) +U+ff00 Halfwidth and Fullwidth Forms (0/225) (0/225) (0/225) +U+fff0 Specials 100% (5/5) 100% (5/5) 100% (5/5) +U+10000 Linear B Syllabary (0/88) (0/88) (0/88) +U+10080 Linear B Ideograms (0/123) (0/123) (0/123) +U+10100 Aegean Numbers (0/57) (0/57) (0/57) +U+10140 Ancient Greek Numbers (0/75) (0/75) (0/75) +U+10190 Ancient Symbols (0/12) (0/12) (0/12) +U+101d0 Phaistos Disc (0/46) (0/46) (0/46) +U+10280 Lycian (0/29) (0/29) (0/29) +U+102a0 Carian (0/49) (0/49) (0/49) +U+10300 Old Italic (0/35) (0/35) (0/35) +U+10330 Gothic (0/27) (0/27) (0/27) +U+10380 Ugaritic (0/31) (0/31) (0/31) +U+103a0 Old Persian (0/50) (0/50) (0/50) +U+10400 Deseret (0/80) (0/80) (0/80) +U+10450 Shavian (0/48) (0/48) (0/48) +U+10480 Osmanya (0/40) (0/40) (0/40) +U+10800 Cypriot Syllabary (0/55) (0/55) (0/55) +U+10840 Imperial Aramaic (0/31) (0/31) (0/31) +U+10900 Phoenician (0/29) (0/29) (0/29) +U+10920 Lydian (0/27) (0/27) (0/27) +U+10a00 Kharoshthi (0/65) (0/65) (0/65) +U+10a60 Old South Arabian (0/32) (0/32) (0/32) +U+10b00 Avestan (0/61) (0/61) (0/61) +U+10b40 Inscriptional Parthian (0/30) (0/30) (0/30) +U+10b60 Inscriptional Pahlavi (0/27) (0/27) (0/27) +U+10c00 Old Turkic (0/73) (0/73) (0/73) +U+10e60 Rumi Numeral Symbols (0/31) (0/31) (0/31) +U+11080 Kaithi (0/66) (0/66) (0/66) +U+12000 Cuneiform (0/879) (0/879) (0/879) +U+12400 Cuneiform Numbers and Punctuation (0/103) (0/103) (0/103) +U+13000 Egyptian Hieroglyphs (0/1071) (0/1071) (0/1071) +U+1d000 Byzantine Musical Symbols (0/246) (0/246) (0/246) +U+1d100 Musical Symbols (0/220) (0/220) (0/220) +U+1d200 Ancient Greek Musical Notation (0/70) (0/70) (0/70) +U+1d300 Tai Xuan Jing Symbols 100% (87/87) (0/87) (0/87) +U+1d360 Counting Rod Numerals (0/18) (0/18) (0/18) +U+1d400 Mathematical Alphanumeric Symbols 11% (117/996) 5% (55/996) 6% (62/996) +U+1f000 Mahjong Tiles (0/44) (0/44) (0/44) +U+1f030 Domino Tiles 100% (100/100) (0/100) (0/100) +U+1f100 Enclosed Alphanumeric Supplement (0/63) (0/63) (0/63) +U+1f200 Enclosed Ideographic Supplement (0/44) (0/44) (0/44) +U+20000 CJK Unified Ideographs Extension B (0/0) (0/0) (0/0) +U+2a700 CJK Unified Ideographs Extension C (0/0) (0/0) (0/0) +U+2f800 CJK Compatibility Ideographs Supplement (0/542) (0/542) (0/542) +U+e0000 Tags (0/98) (0/98) (0/98) +U+e0100 Variation Selectors Supplement (0/240) (0/240) (0/240) +U+f0000 Supplementary Private Use Area-A (0/0) (0/0) (0/0) +U+100000 Supplementary Private Use Area-B (0/0) (0/0) (0/0) diff --git a/libraries/tcpdf/fonts/dejavusans.ctg.z b/libraries/tcpdf/fonts/dejavusans.ctg.z new file mode 100644 index 0000000000000000000000000000000000000000..010e8babe48ce1bcae960627de110dfce5a71887 GIT binary patch literal 10030 zcmb=p_4W?yl&@Oz6bcknS{xcwz89BcfbVP9y{!FR_3UiU_r8+%Jo}418vZl+@P2C8qac5RpR1v1fq({2SHq$O5*mD74U-m#Xz-qD*t9@KgI}wmYk|-To>dL2 z7D%n&%W9alKx_r?tA_ghyB5f;;FoG>TOgRhGpk|Q0?7=%sD^0^L^F7AHEdfTo563@ z(6>PN1<$UAbql0l@KrU;TOj^|_gBNd1@bTW*%}%X1SELc8Wtu$H=uHs5!LzMlZG!X-zOsh73F0?+zcuVlkiWst*UwuARw!|n%iJNV@q+8+p3 z@XTvi{y?&VFRo$w1JMfJdkxzk$X4*%HS|9a{=u`aVf_Q?AAEHU^B;(_2sp9ub}Z!7 z^;p2GS)$M^vn#-XQ}oLMerAa#!2}lxPPewegb)c{w|2t>9|`VbZG{Oj68y*7ITM^_ zaHzF;CIrpkQES&s@S4H3tSvJkY6jo3cF6>{8JuZtkqKclc+=V~6Z~dyKWnQ@h?~Lx zterK%F@i&^%{3t~f=8@fHNi82Yg$`sLSzKrw06-1*9gwAw$Oyo2;Q)E(*)lL?rUwO z39%9U*V=g#oNsWLwfQCl-{3K8*G=%g!L_X|HzE24-?nzy1os=9Wo@wu;Wv28+HDj3 zZ*YHWt4)Z%!T+tD`GJE42Va}>g8&O2zINpY9u{1EZOIQJEcp7`g&(+BaQd|cKM1kl z^=mhN;A6pkuC4e%j0OL>cJ2pGJ2>>(ydMPZ;L&T>e&Dr(Yh7FRgQy*R>)NFsxb5J~ zYm0smwu3jX-THyw4(@kt)equ!@V{$kf8bcbA=l>qAh3c*u3i0sX9d^1w)6*)6@2sB z#UHpKRE2#{2v7W;IV7hf8hOtYhPRb zgXkZ8``YCnxc}g+Ym0vn{)4x!-Ts094{k;lK_|9DCtSpoPPmC!b}076s7!F-syyM& z$hD9|L#eApX|aZeR#)4i#S$87U9CxrEj0AH+8-@u(NOei5n8OGq3P8&X|afgs#j~! zViOHrul7rec{G$ywHPhd(a=8CwrR19hWe@2qQy2E`ls4IEoNGwpw+^)SZRfZR$JF% zp%p4xtzL_bR_JK8pIXedLTOct)?%#{TC3VtEtXoLwyHI2vDFH_Rqd}9v#n6fYLQy3 zwn8(jZPsG36{=aSQH#x1=w`LwTFkdX`BjV6V!ajGuiADkmRq6zs{{laWl^SedWFYKxsC|Aq0drhSX@Us(TYtXmX+Y`$H>f<~Ul=jF|A7#!Xf7NOLZ8*tcg z#zEfi_kUCfwV6zLD7jBiLQ&bNBGyHDlHkpbB$vOjF(%5p1P^y)9x+OiE_grq%tmbe)y@0@tZBXfySkaT9x7B?&9y%P_fkPw@B@+ymRAUy!_(n7r9>ye@XrA`FD&Vd4b^xi5wooHmSos z507yqFEKnNk=tWzlRe2n$+qQa9qa$*eE zNnP)GeT?_E!L0qc4)tA+x=K>hx)tL>c@6F^xw7re#}^* zAlJhFSg}GwuC4vCV1!`mKA#Q z+MhpWtx$|>5r3>&p&8dU{jq3;YFumhW7GOw`5&V8@U1^C{lRU|%l`KcdnEG@Mt?Nh zBm4e<^+&xu((eyef3({pFMojjqhgJO{6Y7RhBY$t52%0CtdW|3F#V%tja>Wz@sFxC zlJN(_KbqFa-sgD#UTt4%{$uMOdi&bnw@;OS(EdZPu4n#(3@Co59a@v&gqk(blG5I=B#O+KDU=FOEzNg$=mh7zDLt1 zQ|q#Et+9b~8jJBF$&)=fZib6zT|Dz5jmLPIj3>|5JToOt%XsU|V?No-j4#iYJkyh=X1sak(KA_T#+zqbo|&^hd;aM&xz7wg z&-(eVtN3ib7{_ff6Ykbr?*HA3UF)Xn|9W1#aYM)*oy2J--ZPh;HA;)zJSXzrnuIVD z?U_^0YNds4o)vj_P2x3^?3r87TBXHqo)>vP=fm!KQnPx`97_}4yz=ImoV;xY(X-Z` zxt1oqdF{<}Ir(J<*0biGIhQ8BdG$?Qon6%xv*q?@-@p7O^_$u68MSBY(&~#FEHB8U z@R_yGa6X&(tf08X^3(ak#dX<+w`7w0Opniee3tW>OYtPjn{$%4oN52e<7b7Rd48T!dCMkwp6U6S z&(Cr{JGx)uq4)mN@qFIl{~o=#`hWTB_p>VR?n%67l0S3%S?g!9pXXJ|XZ$xf!~V?q z^TeMwYLe_s=g&NUR{WXw=czw$)g?je+<17~L;K#1kN&xa*l6#YdcaF!ns!?=1u=n1VHQO?uiyxvFGJPPAny(ILMmTcXgp3rMr=~K6BMToBT3QJwx6>7R? z->lHsc>7u3%HwRaB23pth2^g93%$N7{pxn92;Q}BVacmIuU^SYGu<8)p}RILEPHkD z)oWSlTen+9$gcGZOJCi6_3Ep%((P3dwrk_U@>lm?{m%dUefrn!Y!S?B9j_&1cbHz0 zO5@$`7NNX0@LEQ8kLfk3^xo}i5yERducc&nnO>ch=DR&D!gy`uwVdoe)9bU+&u$ls z;9l!`Eh)Qm>y@Z9-R)r!+G|6r-kJDb{?}gLw07IIi0rkc*Q&Ccw;Hb5bMjVB?#69V zx7WPA#+SW(>*-s$Z#RC6`n~4wHOAKqN>5nj$Z~dDXUT5vi&kGV`I_eIEv3h-vgd9- z7cIV~`~_BGwt+e(k`lD_tAUg`a+1luigk^O7cuLZxJ`Sng! z;@&NBk?Yr*UyFV{_v^i13AH@ke^P3Dq5XxizZ8`sCBv~O}0?c>vVrKnMFm>(?w{q zii)PE+oZ`NDyp8YL6c2XbUocKP3BQiKIvjKSw}_tq}!&+GAimPU5h5$sOX<`|1_Ct ziGrpJ*JPz78k%lhlZBS3Xu5h$Hd>;i>3(W5*Ak_bE?SedmT0YXTQyl~iP}ontjShO z^j5mRn#{IDG4spvi|W0e!k4C)D4+G@zBFlz(ppdHOVhR}zx8ClG_gc!uBZ5=sU^yH zJ^3$9{-U(kQ~uKQFUo&UG8j$ZQEEOZU^InC`S3{&qe(qVi%&`znXS2Bm|`>2L2Z&} ziqTA`Ws@>ftY$iQVR*jHpJXkX7^5`(q-fF980G6HdpG>cpA`MXY^U?PN!3s6Djnn|xj!+i zbecCQ{fT9zV_e(OJxc3ON`IQRNBR9p_D>UQl;)ol|1`Bm`Tj}%Pm}*_YUIsLkv7}r zdwbK#{d-R3-d?sX*?9Ktb-Fp3+P62?T5oVJW3gT&d$KRb{im+kD%rDrdB-;--`e=* zMwyKDI@$Am`RW^l|2gjOd~>8s$a>}6Gk$r?Hw52W`Q}QQl=a%V=lt^1HyHm*zqhk& z*@xU`|Mj#d&OLhWm;9}GGwa=R51-3?zNz?j<(oa<2;ZW8bLv~Ive4bLV(+d?yuKy-=GL$3?ckzj*0Rk1 z^KFZ-ZhU>~>ziL?%)1xfJ&~7VzH#=gvu~c2aqnJw_f%f)_Kml1y?yhotbN0czB2XQ zo9`ZdmsP%b_ifuZ^UCyhZ@+u|UG{hG_pA5Y9+1o6-^6~~`OU&_2Gtc2cR8w;*q)Nh z?caF(*5fxHzp+#=vOPI3$A9DUTbJLw{Kiwg%=YxW-18fs-}?OK=QpP6g?mrL<>+sm ze(Us`r{B1$m+n0km%D!B^;@sseEr5&y?F1*dotHPi&d}Qd-h)5`wiu{cE7p%O|E+V z-t+hJsdv9Mt{1*M2 z)8A@;3;jK-_U^vK`&;sFZhve2E%x`k+WU10_FLp{_PnNcFlcH_Y&n>OQutFe65)|JZWQ45wKgYRfz`f@bxo zE!WKOn$@*zS!PDmtiEN-B{SS+b*3$g%m|y+o3`9C!*5pivt^YTakKiLEoaSejOq|u z=9&>0)g!iCHN!KiYud8ZjL4|IY0E`3T%$U}mW5`7M)ig*H_h;k>b|zDG$S^u|Jrii z4Ch-NX3Kmtf^YShE!WNPzSXsDS#C!3t-fu`Wi#Awb(SrQ%?Q8MTejRb!~a(Iw`H{% z@wfWFEoXk=VAa95%=txtRS(~COZ%f`-Ri44!vdGFM@XU=q=ZN;kB!4-LmW#QM>xqEth`bwyQI5S@esr zUA=kBtzY=<>VCJZ`bFHX{&&mSUpQ8E$Sre!5m?nDw_N>&XI0m{W$7;>tNP|G7k}Ye z)fu-e{6%P0Z`^Y87rs^9_m-8vh^^|sx19fl^REuOW&SUMfA!cc*MH&tt83q~{1>sNna{+H>@GA|U47i>tjn&vF?+y5h9sZ6`&okCf` zxM_VwHpk1E)StK%C|OOMbHYzVeUZ*G@j?DSt1XO?~m?lPBM#6dtM5onoy+Ctx_nab&6STr zN>^E4oh#+%yL?*k?Uj$Ol)ke3diZz#1CtUd%ig(ae!?v`xTs+tCTtxaD<9jn7_>`zwPM)ioxZd>Y%x6C3X%@zFBhTfe_ZeTG`TR_|m<9J- z*K?0HJocWm^qf)p&drA+U#=+%v(BEg^_*4u-pvPZO4O~JJ?HE>vGmoO&)$>^yY=u* zNtxyDxwhxx(&ul!Z}~u`gwL{luJXCS=QE1$SU#Ln;@7&}`t6*;b8TwYfzdFSUVmCtO-<1F;&hM&uR z-uwAlWIxgnphZVBQ{?(fiqHR+6>i1&q$+bbCxD( zMruu)wKOp^(rVhg)C9>$wP`a`6C)$drpT`5?f3sRnL7NZPk-9@XAOh)39gMF z_NOGdMg)fSh^DJXc!qUNO-qf44C|YkE*jw)))|@>8W9@S8=7t!;TzU{HLWxvHcWp_ zZ0)rM)0Ezb$M$jdk;2!em?oc%1)%rCclkjzc#TnX>O$WwW+1acO&_) z8Qbg=fBkp+n)7S;f4}|C6k&hu|M{JaIS=x;HvhAIZ7+SMZNtJG3F&ig8z$z6NS{5{ zaNJ)Xz6+wl(Ocbl*tY)}otw`bN>V zrnM=nZ)9z2Tbug&M%A{)+?3fj(zdncrry3$wypVX%I+I^+uGlz{=QLH)*zeGej~B0 zMK<;Ljl!~~xhczUyxefzUbrqV@w$%n@pGHG-ze=qqPJQ5jn?jC>o!ZjQQLhqZ?p9q zz1_#(ZDxO?Sbaopv-%s&>SOaZi@#B=J{q^#{Ecq)@q3&3-zfh+Vz*iUjrQ+j`!>tJ zQU86Ev0bLHIXSPWTR89k<&J`1zdt_YOP^Cbom+3`Bf0OD2b^t~`cEi-JYmDte`@i^ z7dCADCzC(ku;J@J{rKY#8%F;V!XJ;=aQdH`{PBqmtN+R1k5_DX{ZC*1_{E0#{0ZZa zXKc97pW6KKjSc(xlf@tJ*zlh}{rTgcJq-FMxIZ4+!=Znw`{ScMEcz$CKVI6yqksDJ z$4`5h)}PS+cxn&V`ctbvzS_gK{$%#YTYLD{pML%E*B-|F6Ve}#?cvNnHT&bUJ*@dB zqd#8T!<&El_Q!8~nBSkU{&;Q=_xn@3Kfc?;{{Ce3$9sGD-=F^d@m~#t{0a7t2WvRw zPqlx1Si>TJ(*5Jb8Xo!6$3K3oVVZwJ{o~0RuKA~ye|%ZPHveS$$D1{L^G`qj__KyF z{)G6)qcxoIr>1{=TEiNDGW_G!8s7NR*FS!(VZMLD{Nvdg?)#^rc)9`1}uR{mJ-`*Z=U=pT7U``yb~2C+t6- z|HJ+N)c%j}|FHi*S-hynW^EGr8}!6-4h^d*@o7^!By4&*i=^E3n=*_s+RI@$IW`pMCr8TS4`% zy?5^A$!}kO`~2JYdgn(rKZCs4k^`px(6&DM8h1^3Cn>??BLoqT8GyB!}sRg^bb zU!42Ik5AvXaQQ!F+owA&-+B42=f0Qm;q9CMDdc_If9vp^{TgRWpYQy9m-U@f`NZ8f zVjt<1PTzU@uIM|j@~OLT#XeqFdVS~XyS)F;ZNB#+@0Ygn;d$+MbRX_qTi<^1?z6oA zyU)JiD__3*^xe1b3cv6Aedq5x#_tR2R{fVg_I^V34ckX@rTsgP-xYr6`F%?DE!)TQ zO3&|newX{5>-S03H}^h@D_y_y`d#UFzTc-+-`@N9Ug`Ut-|w=&bN)W@_l?>|cBS)o zp1&*p&inh+-?wTX?<>8(^Zi}^ckbUO|GxS6QC;c&o%ip`zw`e-oq>r(+kBAkz#0dHy5$AMqn&_b- z=IIhN(MLsG)5U9|*AlTzm#B$;OT;Bz+$MUah()@DP4rC>w{-EF=>0^j(j{)9{}XXm z7so&k5iwVnz(5}naa9-3K(8rcsVFUEMz1wu*+-%_`mGU{KH|2~Ge<1? zNZ3Z-9C7O-ejB~th*ckn+vxvBoc)Mnp@)o^`;ovx9~p7=Bc6p`bHvh*L>BtZ5f?w= zTId-g7JekO&^Jch{D^O%_Z_kFBe8}4cf|RRIDho85%WJ1{L#loT>psoN3T6%`A4EZ z`t1>yKjQw;vqmibNcczJ8gct0{vW-WI8`UL9l11Rn#!eVAy$(-^0CPpcTM^ii99TEu9nk81E~ z6Qi|0>X%RR7%e`dVtiW1X!RMj&8KCImY-2AK5b*P{*3zP(@dKd=%{d?R@$^eN3Hv` z(559is@|uKHm%W7KYf~O)1oyh+NZTPty-hD`n1%hWouNkPg`wTx8}S5_x?5d(kI$B zP0Z1mePY?BnK^pVC#G$hnxlLB#I{XybM&oG^lh5_MrZelb(?0t`8WOh{5Oi#r{Xq! zzn{-Kp*AJ{rhl7lv5Y-8!T70;W%Rj;#ZPT4?bkeI+8LlXsr#wW&JexHr=N1|3|cp7^;4;xVe2Np ze#*8pFmKZAr(!!p^CsVZ%C|H4-K5=5<#vX@oBaDJV`YFG*X!p65mrk5r;fzBjG>No=M6z3Kc9=pX{1f+|o^{jWpM?MPt($KD#Q&!^Bdcgo+o4k- z)0AGF_h;|YayL9Wb#==mFHQfSS^P#QVV)sDQ+-s!HA7C_Ki}-NH0b}^&C4(S(VHK(H27sG+tk3+Uu*R?pIWqO zRgTu~Qwxh$#b|9mwfNJj8m;|W3%FJ}t=gcqsB2ZysvTMjy;cRS+M>1i)T*LYdsZ#b zTIIEB)2cvQ@EJ+ixxYwyHL3 zztsZ1RnD(ASS{*XmHcXl)k42j!LPPhEk3uZ_|=|W3-nfbzuL5G(YjUHuXgQPn71nW z)wW%W->s^CwXbS{+$#518><%0Tb2H5XVt>ERpGC;RxQ4_s{Ga7UkmJ3`M=uyYtg<{ z`LA~WT3EL#Uhcz!cALY8=e>-S`JPj5rqnF$9u;m>i?3`_z{_s26AHV+>douNl*Wbsr=AXT)Q}=9&vs}L?{NU;rp}(Y~!v2}}hkac2Z`%52 zq2IIqIQsampB8?5_2a8wUsZnH%NFOne&Y2T*^f-W&Z<1SS1j)I{#Q0pe;?O<{u))C zyJuUR_4>Wn559g;`pK#~cF(#v^Yy#0AAbGv>!+&f+CBT??APx%KOp^r_Y+&S^PYwG z4DxrFACi9A`^l|3dC$gsJL(^c9;+7K(|J!Nf0Oyq*{^&*FRM1*GxMHK{Tx;D1YVlGtuwXeh8~tz31vZsrV)?7L zpS}I=?T@uz{qm=8zkU1h+ppjLE}!?g?tMdD*yVo@PFcK={lr)8zGv}0!}mMN4_UvQ z`^m35eb455mhbnJAKd*S_LE+9_@34GOyBP+S6*|}_x-f;+q)m%{rax*SAF8&^z-ML z-!J@rqWX>P$9Yxf_dLJH{eJ29Q`K+xe!N%pe$V%N?C%$UKl%Gj?Z!AA;!o(m5&ziz>*$|Hb)5T`#GlfCJN@J7Ur+yhs$<>1DE{R7H{l;w|GN6;RUPmC zW$~xizrB9ZcmZinCB{3Xs;Rf#zb^j#`uFBP*50|0FS0NHjXCFi^RKgip8YFUe`DLy z`=|2XZvS}u*V{ke>e%-$zJK!loAQsl|Jl#;Hs8Pd{^9pO#Y^}8x%XfB*~0$&*WW+? z{+;~?^Iyk*3H2TJSLC1Ze|P_({5NpFYwx$?Ka&3z{`>La5=;Fe`;+tE_++wM z|9I-3)@B{;m%%K4AYs{uBRi z_kYsoKL!4uQGdt&;ruJw{mbYS|a)t}w} z?*51TU)%rO{wMo?UH$p}@9jUx|LXs9yz0t7>9hZZ|F4u|^}TEYMqB=0Qs0sbn-|c$SS9Aa0`~RT+i~Zkq?>7HG`u|n^=l#F!|IGilo`J={ zp;7R`0iHDtEM*SN>IsbecN|!Z0vg#J9E*Hd{E}QHT?;_xP|poJ)wUv+0QAB!$cgIv#RMID*(#HeGR?rI0&8&qF?i!-#EW z(;3HU3fU8MPslytC}P{$bjNX?LjDB(6Y?S)Tx_jPha4v^$OzEUkekBc#kRERlH<$; zIRSba@*x~rY*U*~IZj=W6`;F9?g~d1+t#LAj&m2}1?aDkH{puoybIC(+l1)U7J zEgVs7Yn!e)&R&pvK`%qTgu{w$Zk>IU8ZtZvBrr_#nZI0O3#0UaJO*6wE2gO?H_H`qi7uHgw| zUEOSY@K!?X2D=*qIXq^pvzv7fUQ3AHV0%OG4Nn>C?q=JA_Y&ea*jot5@bIy=H!B~! z_#mRd#zJrok00yuX5)i5AH)>c?GT9J(PN$7tbOq6gQx=A9fEgw@>sVwTOYjpAg;i^ zLcoScj<7Ca0yR8#tn-`o4_928,'Descent'=>-236,'CapHeight'=>30,'Flags'=>96,'FontBBox'=>'[-1021 -415 1681 1167]','ItalicAngle'=>20.8,'StemV'=>70,'MissingWidth'=>600); +$up=-63; +$ut=44; +$dw=600; +$cw=array( +0=>600,32=>318,33=>401,34=>460,35=>838,36=>636,37=>950,38=>780,39=>275,40=>390, +41=>390,42=>500,43=>838,44=>318,45=>361,46=>318,47=>337,48=>636,49=>636,50=>636, +51=>636,52=>636,53=>636,54=>636,55=>636,56=>636,57=>636,58=>337,59=>337,60=>838, +61=>838,62=>838,63=>531,64=>1000,65=>684,66=>686,67=>698,68=>770,69=>632,70=>575, +71=>775,72=>752,73=>295,74=>295,75=>656,76=>557,77=>863,78=>748,79=>787,80=>603, +81=>787,82=>695,83=>635,84=>611,85=>732,86=>684,87=>989,88=>685,89=>611,90=>685, +91=>390,92=>337,93=>390,94=>838,95=>500,96=>500,97=>613,98=>635,99=>550,100=>635, +101=>615,102=>352,103=>635,104=>634,105=>278,106=>278,107=>579,108=>278,109=>974,110=>634, +111=>612,112=>635,113=>635,114=>411,115=>521,116=>392,117=>634,118=>592,119=>818,120=>592, +121=>592,122=>525,123=>636,124=>337,125=>636,126=>838,8364=>636,8218=>318,402=>352,8222=>518, +8230=>1000,8224=>500,8225=>500,710=>500,8240=>1342,352=>635,8249=>400,338=>1070,381=>685,8216=>318, +8217=>318,8220=>518,8221=>518,8226=>590,8211=>500,8212=>1000,732=>500,8482=>1000,353=>521,8250=>400, +339=>1023,382=>525,376=>611,160=>318,161=>401,162=>636,163=>636,164=>636,165=>636,166=>337, +167=>500,168=>500,169=>1000,170=>471,171=>612,172=>838,173=>361,174=>1000,175=>500,176=>500, +177=>838,178=>401,179=>401,180=>500,181=>636,182=>636,183=>318,184=>500,185=>401,186=>471, +187=>612,188=>969,189=>969,190=>969,191=>531,192=>684,193=>684,194=>684,195=>684,196=>684, +197=>684,198=>974,199=>698,200=>632,201=>632,202=>632,203=>632,204=>295,205=>295,206=>295, +207=>295,208=>775,209=>748,210=>787,211=>787,212=>787,213=>787,214=>787,215=>838,216=>787, +217=>732,218=>732,219=>732,220=>732,221=>611,222=>605,223=>630,224=>613,225=>613,226=>613, +227=>613,228=>613,229=>613,230=>982,231=>550,232=>615,233=>615,234=>615,235=>615,236=>278, +237=>278,238=>278,239=>278,240=>612,241=>634,242=>612,243=>612,244=>612,245=>612,246=>612, +247=>838,248=>612,249=>634,250=>634,251=>634,252=>634,253=>592,254=>635,255=>592,256=>684, +257=>613,258=>684,259=>613,260=>684,261=>613,262=>698,263=>550,264=>698,265=>550,266=>698, +267=>550,268=>698,269=>550,270=>770,271=>635,272=>775,273=>635,274=>632,275=>615,276=>632, +277=>615,278=>632,279=>615,280=>632,281=>615,282=>632,283=>615,284=>775,285=>635,286=>775, +287=>635,288=>775,289=>635,290=>775,291=>635,292=>752,293=>634,294=>916,295=>695,296=>295, +297=>278,298=>295,299=>278,300=>295,301=>278,302=>295,303=>278,304=>295,305=>278,306=>590, +307=>556,308=>295,309=>278,310=>656,311=>579,312=>579,313=>557,314=>278,315=>557,316=>278, +317=>557,318=>375,319=>557,320=>342,321=>562,322=>284,323=>748,324=>634,325=>748,326=>634, +327=>748,328=>634,329=>813,330=>748,331=>634,332=>787,333=>612,334=>787,335=>612,336=>787, +337=>612,340=>695,341=>411,342=>695,343=>411,344=>695,345=>411,346=>635,347=>521,348=>635, +349=>521,350=>635,351=>521,354=>611,355=>392,356=>611,357=>392,358=>611,359=>392,360=>732, +361=>634,362=>732,363=>634,364=>732,365=>634,366=>732,367=>634,368=>732,369=>634,370=>732, +371=>634,372=>989,373=>818,374=>611,375=>592,377=>685,378=>525,379=>685,380=>525,383=>352, +384=>635,385=>735,386=>686,387=>635,388=>686,389=>635,390=>703,391=>698,392=>550,393=>775, +394=>819,395=>686,396=>635,397=>612,398=>632,399=>787,400=>614,401=>575,403=>775,404=>687, +405=>984,406=>354,407=>295,408=>746,409=>579,410=>278,411=>592,412=>974,413=>748,414=>634, +415=>787,416=>913,417=>612,418=>949,419=>759,420=>652,421=>635,422=>695,423=>635,424=>521, +425=>632,426=>336,427=>392,428=>611,429=>392,430=>611,431=>858,432=>634,433=>764,434=>721, +435=>744,436=>730,437=>685,438=>525,439=>666,440=>666,441=>578,442=>525,443=>636,444=>666, +445=>578,446=>510,447=>635,448=>295,449=>492,450=>459,451=>295,452=>1422,453=>1299,454=>1154, +455=>835,456=>787,457=>457,458=>931,459=>924,460=>797,461=>684,462=>613,463=>295,464=>278, +465=>787,466=>612,467=>732,468=>634,469=>732,470=>634,471=>732,472=>634,473=>732,474=>634, +475=>732,476=>634,477=>615,478=>684,479=>613,480=>684,481=>613,482=>974,483=>982,484=>775, +485=>635,486=>775,487=>635,488=>656,489=>579,490=>787,491=>612,492=>787,493=>612,494=>666, +495=>578,496=>278,497=>1422,498=>1299,499=>1154,500=>775,501=>635,502=>1113,503=>682,504=>748, +505=>634,506=>684,507=>613,508=>974,509=>982,510=>787,511=>612,512=>684,513=>613,514=>684, +515=>613,516=>632,517=>615,518=>632,519=>615,520=>295,521=>278,522=>295,523=>278,524=>787, +525=>612,526=>787,527=>612,528=>695,529=>411,530=>695,531=>411,532=>732,533=>634,534=>732, +535=>634,536=>635,537=>521,538=>611,539=>392,540=>627,541=>521,542=>752,543=>634,544=>735, +545=>838,546=>698,547=>610,548=>685,549=>525,550=>684,551=>613,552=>632,553=>615,554=>787, +555=>612,556=>787,557=>612,558=>787,559=>612,560=>787,561=>612,562=>611,563=>592,564=>475, +565=>843,566=>477,567=>278,568=>998,569=>998,570=>684,571=>698,572=>550,573=>557,574=>611, +575=>521,576=>525,577=>603,578=>479,579=>686,580=>732,581=>684,582=>632,583=>615,584=>295, +585=>278,586=>781,587=>635,588=>695,589=>411,590=>611,591=>592,592=>600,593=>635,594=>635, +595=>635,596=>549,597=>550,598=>635,599=>696,600=>615,601=>615,602=>819,603=>541,604=>532, +605=>775,606=>664,607=>278,608=>696,609=>635,610=>629,611=>596,612=>596,613=>634,614=>634, +615=>634,616=>278,617=>338,618=>372,619=>396,620=>487,621=>278,622=>706,623=>974,624=>974, +625=>974,626=>646,627=>642,628=>634,629=>612,630=>858,631=>728,632=>660,633=>414,634=>414, +635=>414,636=>411,637=>411,638=>530,639=>530,640=>604,641=>604,642=>521,643=>336,644=>336, +645=>461,646=>336,647=>392,648=>392,649=>634,650=>618,651=>598,652=>592,653=>818,654=>592, +655=>611,656=>525,657=>525,658=>578,659=>578,660=>510,661=>510,662=>510,663=>510,664=>787, +665=>580,666=>664,667=>708,668=>654,669=>292,670=>667,671=>507,672=>727,673=>510,674=>510, +675=>1014,676=>1058,677=>1013,678=>824,679=>610,680=>778,681=>848,682=>641,683=>654,684=>515, +685=>515,686=>661,687=>664,688=>404,689=>399,690=>175,691=>259,692=>295,693=>296,694=>379, +695=>515,696=>373,697=>278,698=>460,699=>318,700=>318,701=>318,702=>307,703=>307,704=>370, +705=>370,706=>500,707=>500,708=>500,709=>500,711=>500,712=>275,713=>500,714=>500,715=>500, +716=>275,717=>500,718=>500,719=>500,720=>337,721=>337,722=>307,723=>307,724=>500,725=>500, +726=>390,727=>317,728=>500,729=>500,730=>500,731=>500,733=>500,734=>315,735=>500,736=>426, +737=>166,738=>373,739=>444,740=>370,741=>493,742=>493,743=>493,744=>493,745=>493,748=>500, +749=>500,750=>518,755=>500,759=>500,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0, +774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0, +784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0, +794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0, +804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0, +814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0, +824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0, +834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0, +844=>0,845=>0,846=>0,847=>0,849=>0,850=>0,851=>0,855=>0,856=>0,858=>0, +860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,866=>0,880=>654,881=>568,882=>862, +883=>647,884=>278,885=>278,886=>748,887=>650,890=>500,891=>549,892=>550,893=>549,894=>337, +900=>500,901=>500,902=>692,903=>318,904=>746,905=>871,906=>408,908=>813,910=>825,911=>826, +912=>338,913=>684,914=>686,915=>557,916=>684,917=>632,918=>685,919=>752,920=>787,921=>295, +922=>656,923=>684,924=>863,925=>748,926=>632,927=>787,928=>752,929=>603,931=>632,932=>611, +933=>611,934=>787,935=>685,936=>787,937=>764,938=>295,939=>611,940=>659,941=>541,942=>634, +943=>338,944=>579,945=>659,946=>638,947=>592,948=>612,949=>541,950=>544,951=>634,952=>612, +953=>338,954=>589,955=>592,956=>636,957=>559,958=>558,959=>612,960=>602,961=>635,962=>587, +963=>634,964=>602,965=>579,966=>660,967=>578,968=>660,969=>837,970=>338,971=>579,972=>612, +973=>579,974=>837,975=>656,976=>614,977=>619,978=>699,979=>842,980=>699,981=>660,982=>837, +983=>664,984=>787,985=>612,986=>648,987=>587,988=>575,989=>458,990=>660,991=>660,992=>865, +993=>627,994=>934,995=>837,996=>758,997=>659,998=>792,999=>615,1000=>687,1001=>607,1002=>768, +1003=>625,1004=>699,1005=>612,1006=>611,1007=>536,1008=>664,1009=>635,1010=>550,1011=>278,1012=>787, +1013=>615,1014=>615,1015=>605,1016=>635,1017=>698,1018=>863,1019=>651,1020=>635,1021=>703,1022=>698, +1023=>703,1024=>632,1025=>632,1026=>786,1027=>610,1028=>698,1029=>635,1030=>295,1031=>295,1032=>295, +1033=>1094,1034=>1045,1035=>786,1036=>710,1037=>748,1038=>609,1039=>752,1040=>684,1041=>686,1042=>686, +1043=>610,1044=>781,1045=>632,1046=>1077,1047=>641,1048=>748,1049=>748,1050=>710,1051=>752,1052=>863, +1053=>752,1054=>787,1055=>752,1056=>603,1057=>698,1058=>611,1059=>609,1060=>861,1061=>685,1062=>776, +1063=>686,1064=>1069,1065=>1094,1066=>833,1067=>882,1068=>686,1069=>698,1070=>1080,1071=>695,1072=>613, +1073=>617,1074=>589,1075=>525,1076=>691,1077=>615,1078=>901,1079=>532,1080=>650,1081=>650,1082=>604, +1083=>639,1084=>754,1085=>654,1086=>612,1087=>654,1088=>635,1089=>550,1090=>583,1091=>592,1092=>855, +1093=>592,1094=>681,1095=>591,1096=>915,1097=>942,1098=>707,1099=>790,1100=>589,1101=>549,1102=>842, +1103=>602,1104=>615,1105=>615,1106=>625,1107=>525,1108=>549,1109=>521,1110=>278,1111=>278,1112=>278, +1113=>902,1114=>898,1115=>652,1116=>604,1117=>650,1118=>592,1119=>654,1120=>934,1121=>837,1122=>771, +1123=>672,1124=>942,1125=>749,1126=>879,1127=>783,1128=>1160,1129=>1001,1130=>787,1131=>612,1132=>1027, +1133=>824,1134=>636,1135=>541,1136=>856,1137=>876,1138=>787,1139=>612,1140=>781,1141=>665,1142=>781, +1143=>665,1144=>992,1145=>904,1146=>953,1147=>758,1148=>1180,1149=>1028,1150=>934,1151=>837,1152=>698, +1153=>550,1154=>502,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>418,1161=>418,1162=>772, +1163=>677,1164=>686,1165=>589,1166=>603,1167=>635,1168=>610,1169=>525,1170=>675,1171=>590,1172=>624, +1173=>530,1174=>1077,1175=>901,1176=>641,1177=>532,1178=>710,1179=>604,1180=>710,1181=>604,1182=>710, +1183=>604,1184=>856,1185=>832,1186=>752,1187=>661,1188=>1014,1189=>877,1190=>1081,1191=>916,1192=>878, +1193=>693,1194=>698,1195=>550,1196=>611,1197=>583,1198=>611,1199=>592,1200=>611,1201=>592,1202=>685, +1203=>592,1204=>934,1205=>807,1206=>686,1207=>591,1208=>686,1209=>591,1210=>686,1211=>634,1212=>941, +1213=>728,1214=>941,1215=>728,1216=>295,1217=>1077,1218=>901,1219=>656,1220=>604,1221=>776,1222=>670, +1223=>752,1224=>661,1225=>776,1226=>681,1227=>686,1228=>591,1229=>888,1230=>774,1231=>278,1232=>684, +1233=>613,1234=>684,1235=>613,1236=>974,1237=>982,1238=>632,1239=>615,1240=>787,1241=>615,1242=>787, +1243=>615,1244=>1077,1245=>901,1246=>641,1247=>532,1248=>666,1249=>578,1250=>748,1251=>650,1252=>748, +1253=>650,1254=>787,1255=>612,1256=>787,1257=>612,1258=>787,1259=>612,1260=>698,1261=>549,1262=>609, +1263=>592,1264=>609,1265=>592,1266=>609,1267=>592,1268=>686,1269=>591,1270=>610,1271=>525,1272=>882, +1273=>790,1274=>675,1275=>590,1276=>685,1277=>592,1278=>685,1279=>592,1280=>686,1281=>589,1282=>1006, +1283=>897,1284=>975,1285=>869,1286=>679,1287=>588,1288=>1072,1289=>957,1290=>1113,1291=>967,1292=>775, +1293=>660,1294=>773,1295=>711,1296=>614,1297=>541,1298=>752,1299=>639,1300=>1169,1301=>994,1302=>894, +1303=>864,1304=>1032,1305=>986,1306=>787,1307=>635,1308=>989,1309=>818,1312=>1081,1313=>905,1314=>1081, +1315=>912,1316=>793,1317=>683,1329=>867,1330=>732,1331=>882,1332=>882,1333=>732,1334=>644,1335=>682, +1336=>732,1337=>851,1338=>882,1339=>732,1340=>557,1341=>824,1342=>986,1343=>732,1344=>707,1345=>644, +1346=>882,1347=>777,1348=>882,1349=>732,1350=>840,1351=>732,1352=>732,1353=>732,1354=>791,1355=>644, +1356=>882,1357=>732,1358=>882,1359=>635,1360=>732,1361=>732,1362=>799,1363=>787,1364=>790,1365=>787, +1366=>635,1369=>307,1370=>318,1371=>500,1372=>500,1373=>392,1374=>526,1375=>500,1377=>974,1378=>634, +1379=>762,1380=>767,1381=>634,1382=>697,1383=>533,1384=>634,1385=>700,1386=>697,1387=>634,1388=>404, +1389=>894,1390=>641,1391=>634,1392=>634,1393=>635,1394=>702,1395=>634,1396=>659,1397=>278,1398=>760, +1399=>516,1400=>634,1401=>453,1402=>974,1403=>516,1404=>769,1405=>634,1406=>696,1407=>974,1408=>634, +1409=>635,1410=>501,1411=>974,1412=>648,1413=>612,1414=>629,1415=>763,1417=>337,1418=>433,1456=>0, +1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1466=>0, +1467=>0,1468=>0,1469=>0,1470=>361,1471=>0,1472=>295,1473=>0,1474=>0,1475=>295,1478=>441, +1479=>0,1488=>629,1489=>608,1490=>448,1491=>594,1492=>640,1493=>272,1494=>374,1495=>640,1496=>648, +1497=>272,1498=>592,1499=>556,1500=>599,1501=>640,1502=>659,1503=>272,1504=>441,1505=>700,1506=>563, +1507=>640,1508=>604,1509=>521,1510=>581,1511=>663,1512=>592,1513=>808,1514=>657,1520=>471,1521=>454, +1522=>471,1523=>416,1524=>645,1542=>637,1543=>637,1545=>757,1546=>977,1548=>323,1557=>0,1563=>318, +1567=>531,1569=>470,1570=>278,1571=>278,1572=>483,1573=>278,1574=>783,1575=>278,1576=>941,1577=>524, +1578=>941,1579=>941,1580=>646,1581=>646,1582=>646,1583=>445,1584=>445,1585=>483,1586=>483,1587=>1221, +1588=>1221,1589=>1209,1590=>1209,1591=>925,1592=>925,1593=>597,1594=>597,1600=>293,1601=>1037,1602=>776, +1603=>824,1604=>727,1605=>619,1606=>734,1607=>524,1608=>483,1609=>783,1610=>783,1611=>0,1612=>0, +1613=>0,1614=>0,1615=>0,1616=>0,1617=>0,1618=>0,1619=>0,1620=>0,1621=>0,1623=>0, +1626=>500,1632=>537,1633=>537,1634=>537,1635=>537,1636=>537,1637=>537,1638=>537,1639=>537,1640=>537, +1641=>537,1642=>537,1643=>325,1644=>318,1645=>545,1646=>941,1647=>776,1648=>0,1652=>292,1657=>941, +1658=>941,1659=>941,1660=>941,1661=>941,1662=>941,1663=>941,1664=>941,1665=>646,1666=>646,1667=>646, +1668=>646,1669=>646,1670=>646,1671=>646,1672=>445,1673=>445,1674=>445,1675=>445,1676=>445,1677=>445, +1678=>445,1679=>445,1680=>445,1681=>483,1682=>483,1683=>498,1684=>530,1685=>610,1686=>530,1687=>483, +1688=>483,1689=>483,1690=>1221,1691=>1221,1692=>1221,1693=>1209,1694=>1209,1695=>925,1696=>597,1697=>1037, +1698=>1037,1699=>1037,1700=>1037,1701=>1037,1702=>1037,1703=>776,1704=>776,1705=>895,1706=>1054,1707=>895, +1708=>824,1709=>824,1710=>824,1711=>895,1712=>895,1713=>895,1714=>895,1715=>895,1716=>895,1717=>727, +1718=>727,1719=>727,1720=>727,1721=>734,1722=>734,1723=>734,1724=>734,1725=>734,1726=>698,1727=>646, +1734=>483,1740=>783,1742=>783,1749=>524,1776=>537,1777=>537,1778=>537,1779=>537,1780=>537,1781=>537, +1782=>537,1783=>537,1784=>537,1785=>537,1984=>636,1985=>636,1986=>636,1987=>636,1988=>636,1989=>636, +1990=>636,1991=>636,1992=>636,1993=>636,1994=>278,1995=>571,1996=>424,1997=>592,1998=>654,1999=>654, +2000=>594,2001=>654,2002=>829,2003=>438,2004=>438,2005=>559,2006=>612,2007=>350,2008=>959,2009=>473, +2010=>783,2011=>654,2012=>625,2013=>734,2014=>530,2015=>724,2016=>473,2017=>625,2018=>594,2019=>530, +2020=>530,2021=>522,2022=>594,2023=>594,2027=>0,2028=>0,2029=>0,2030=>0,2031=>0,2032=>0, +2033=>0,2034=>0,2035=>0,2036=>313,2037=>313,2040=>560,2041=>560,2042=>361,3647=>636,3713=>670, +3714=>684,3716=>688,3719=>482,3720=>628,3722=>684,3725=>688,3732=>669,3733=>642,3734=>645,3735=>655, +3737=>659,3738=>625,3739=>625,3740=>745,3741=>767,3742=>687,3743=>687,3745=>702,3746=>688,3747=>684, +3749=>649,3751=>632,3754=>703,3755=>819,3757=>633,3758=>684,3759=>788,3760=>632,3761=>0,3762=>539, +3763=>539,3764=>0,3765=>0,3766=>0,3767=>0,3768=>0,3769=>0,3771=>0,3772=>0,3773=>663, +3776=>375,3777=>657,3778=>460,3779=>547,3780=>491,3782=>674,3784=>0,3785=>0,3786=>0,3787=>0, +3788=>0,3789=>0,3792=>636,3793=>641,3794=>641,3795=>670,3796=>625,3797=>625,3798=>703,3799=>670, +3800=>674,3801=>677,3804=>1028,3805=>1028,4256=>840,4257=>690,4258=>642,4259=>759,4260=>591,4261=>686, +4262=>789,4263=>811,4264=>467,4265=>565,4266=>789,4267=>793,4268=>584,4269=>837,4270=>750,4271=>688, +4272=>811,4273=>584,4274=>584,4275=>837,4276=>837,4277=>646,4278=>604,4279=>584,4280=>596,4281=>584, +4282=>721,4283=>795,4284=>584,4285=>566,4286=>584,4287=>669,4288=>799,4289=>542,4290=>664,4291=>542, +4292=>565,4293=>674,4304=>508,4305=>508,4306=>533,4307=>785,4308=>522,4309=>517,4310=>508,4311=>797, +4312=>507,4313=>518,4314=>1058,4315=>522,4316=>523,4317=>783,4318=>518,4319=>523,4320=>792,4321=>523, +4322=>656,4323=>524,4324=>788,4325=>523,4326=>782,4327=>523,4328=>522,4329=>522,4330=>566,4331=>523, +4332=>523,4333=>489,4334=>522,4335=>498,4336=>517,4337=>560,4338=>508,4339=>508,4340=>508,4341=>563, +4342=>824,4343=>595,4344=>522,4345=>554,4346=>553,4347=>586,4348=>304,5121=>684,5122=>684,5123=>684, +5124=>684,5125=>769,5126=>769,5127=>769,5129=>769,5130=>769,5131=>769,5132=>835,5133=>834,5134=>835, +5135=>834,5136=>835,5137=>834,5138=>967,5139=>1007,5140=>967,5141=>1007,5142=>769,5143=>967,5144=>1007, +5145=>967,5146=>1007,5147=>769,5149=>256,5150=>543,5151=>423,5152=>423,5153=>389,5154=>389,5155=>393, +5156=>389,5157=>466,5158=>385,5159=>256,5160=>389,5161=>389,5162=>389,5163=>1090,5164=>909,5165=>953, +5166=>1117,5167=>684,5168=>684,5169=>684,5170=>684,5171=>729,5172=>729,5173=>729,5175=>729,5176=>729, +5177=>729,5178=>835,5179=>684,5180=>835,5181=>834,5182=>835,5183=>834,5184=>967,5185=>1007,5186=>967, +5187=>1007,5188=>967,5189=>1007,5190=>967,5191=>1007,5192=>729,5193=>508,5194=>192,5196=>732,5197=>732, +5198=>732,5199=>732,5200=>730,5201=>730,5202=>730,5204=>730,5205=>730,5206=>730,5207=>921,5208=>889, +5209=>921,5210=>889,5211=>921,5212=>889,5213=>928,5214=>900,5215=>928,5216=>900,5217=>947,5218=>900, +5219=>947,5220=>900,5221=>947,5222=>434,5223=>877,5224=>877,5225=>866,5226=>890,5227=>628,5228=>628, +5229=>628,5230=>628,5231=>628,5232=>628,5233=>628,5234=>628,5235=>628,5236=>860,5237=>771,5238=>815, +5239=>816,5240=>815,5241=>816,5242=>860,5243=>771,5244=>860,5245=>771,5246=>815,5247=>816,5248=>815, +5249=>816,5250=>815,5251=>407,5252=>407,5253=>750,5254=>775,5255=>750,5256=>775,5257=>628,5258=>628, +5259=>628,5260=>628,5261=>628,5262=>628,5263=>628,5264=>628,5265=>628,5266=>860,5267=>771,5268=>815, +5269=>816,5270=>815,5271=>816,5272=>860,5273=>771,5274=>860,5275=>771,5276=>815,5277=>816,5278=>815, +5279=>816,5280=>815,5281=>435,5282=>435,5283=>610,5284=>557,5285=>557,5286=>557,5287=>610,5288=>610, +5289=>610,5290=>557,5291=>557,5292=>749,5293=>769,5294=>746,5295=>764,5296=>746,5297=>764,5298=>749, +5299=>769,5300=>749,5301=>769,5302=>746,5303=>764,5304=>746,5305=>764,5306=>746,5307=>386,5308=>508, +5309=>386,5312=>852,5313=>852,5314=>852,5315=>852,5316=>852,5317=>852,5318=>852,5319=>852,5320=>852, +5321=>1069,5322=>1035,5323=>1059,5324=>852,5325=>1059,5326=>852,5327=>852,5328=>600,5329=>453,5330=>600, +5331=>852,5332=>852,5333=>852,5334=>852,5335=>852,5336=>852,5337=>852,5338=>852,5339=>852,5340=>1069, +5341=>1035,5342=>1059,5343=>1030,5344=>1059,5345=>1030,5346=>1069,5347=>1035,5348=>1069,5349=>1035,5350=>1083, +5351=>1030,5352=>1083,5353=>1030,5354=>600,5356=>729,5357=>603,5358=>603,5359=>603,5360=>603,5361=>603, +5362=>603,5363=>603,5364=>603,5365=>603,5366=>834,5367=>754,5368=>792,5369=>771,5370=>792,5371=>771, +5372=>834,5373=>754,5374=>834,5375=>754,5376=>792,5377=>771,5378=>792,5379=>771,5380=>792,5381=>418, +5382=>420,5383=>418,5392=>712,5393=>712,5394=>712,5395=>892,5396=>892,5397=>892,5398=>892,5399=>910, +5400=>872,5401=>910,5402=>872,5403=>910,5404=>872,5405=>1140,5406=>1100,5407=>1140,5408=>1100,5409=>1140, +5410=>1100,5411=>1140,5412=>1100,5413=>641,5414=>627,5415=>627,5416=>627,5417=>627,5418=>627,5419=>627, +5420=>627,5421=>627,5422=>627,5423=>844,5424=>781,5425=>816,5426=>818,5427=>816,5428=>818,5429=>844, +5430=>781,5431=>844,5432=>781,5433=>816,5434=>818,5435=>816,5436=>818,5437=>816,5438=>418,5440=>389, +5441=>484,5442=>916,5443=>916,5444=>916,5445=>916,5446=>916,5447=>916,5448=>603,5449=>603,5450=>603, +5451=>603,5452=>603,5453=>603,5454=>834,5455=>754,5456=>418,5458=>729,5459=>684,5460=>684,5461=>684, +5462=>684,5463=>726,5464=>726,5465=>726,5466=>726,5467=>924,5468=>1007,5469=>508,5470=>732,5471=>732, +5472=>732,5473=>732,5474=>732,5475=>732,5476=>730,5477=>730,5478=>730,5479=>730,5480=>947,5481=>900, +5482=>508,5492=>831,5493=>831,5494=>831,5495=>831,5496=>831,5497=>831,5498=>831,5499=>563,5500=>752, +5501=>484,5502=>1047,5503=>1047,5504=>1047,5505=>1047,5506=>1047,5507=>1047,5508=>1047,5509=>825,5514=>831, +5515=>831,5516=>831,5517=>831,5518=>1259,5519=>1259,5520=>1259,5521=>1002,5522=>1002,5523=>1259,5524=>1259, +5525=>700,5526=>1073,5536=>852,5537=>852,5538=>852,5539=>852,5540=>852,5541=>852,5542=>600,5543=>643, +5544=>643,5545=>643,5546=>643,5547=>643,5548=>643,5549=>643,5550=>418,5551=>628,5598=>770,5601=>767, +5702=>468,5703=>468,5742=>444,5743=>1047,5744=>1310,5745=>1632,5746=>1632,5747=>1375,5748=>1375,5749=>1632, +5750=>1632,5760=>477,5761=>493,5762=>712,5763=>931,5764=>1150,5765=>1370,5766=>493,5767=>712,5768=>931, +5769=>1150,5770=>1370,5771=>498,5772=>718,5773=>938,5774=>1159,5775=>1379,5776=>493,5777=>712,5778=>930, +5779=>1149,5780=>1370,5781=>498,5782=>752,5783=>789,5784=>1205,5785=>1150,5786=>683,5787=>507,5788=>507, +7424=>592,7425=>717,7426=>982,7427=>586,7428=>550,7429=>605,7430=>605,7431=>491,7432=>541,7433=>278, +7434=>395,7435=>579,7436=>583,7437=>754,7438=>650,7439=>612,7440=>550,7441=>684,7442=>684,7443=>684, +7444=>1023,7446=>612,7447=>612,7448=>524,7449=>602,7450=>602,7451=>583,7452=>574,7453=>737,7454=>948, +7455=>638,7456=>592,7457=>818,7458=>525,7459=>526,7462=>583,7463=>592,7464=>564,7465=>524,7466=>590, +7467=>639,7468=>431,7469=>613,7470=>432,7472=>485,7473=>398,7474=>398,7475=>488,7476=>474,7477=>186, +7478=>186,7479=>413,7480=>351,7481=>543,7482=>471,7483=>471,7484=>496,7485=>439,7486=>380,7487=>438, +7488=>385,7489=>461,7490=>623,7491=>392,7492=>392,7493=>405,7494=>648,7495=>428,7496=>405,7497=>417, +7498=>417,7499=>360,7500=>359,7501=>405,7502=>179,7503=>426,7504=>623,7505=>409,7506=>414,7507=>370, +7508=>414,7509=>414,7510=>428,7511=>295,7512=>405,7513=>470,7514=>623,7515=>417,7517=>402,7518=>373, +7519=>385,7520=>416,7521=>364,7522=>179,7523=>259,7524=>405,7525=>417,7526=>402,7527=>373,7528=>412, +7529=>416,7530=>364,7543=>635,7544=>474,7547=>372,7549=>667,7557=>278,7579=>405,7580=>370,7581=>370, +7582=>414,7583=>360,7584=>296,7585=>233,7586=>405,7587=>405,7588=>261,7589=>250,7590=>261,7591=>261, +7592=>234,7593=>250,7594=>235,7595=>376,7596=>623,7597=>623,7598=>411,7599=>479,7600=>409,7601=>414, +7602=>414,7603=>360,7604=>287,7605=>295,7606=>508,7607=>418,7608=>361,7609=>406,7610=>417,7611=>366, +7612=>437,7613=>366,7614=>392,7615=>414,7620=>0,7621=>0,7622=>0,7623=>0,7624=>0,7625=>0, +7680=>684,7681=>613,7682=>686,7683=>635,7684=>686,7685=>635,7686=>686,7687=>635,7688=>698,7689=>550, +7690=>770,7691=>635,7692=>770,7693=>635,7694=>770,7695=>635,7696=>770,7697=>635,7698=>770,7699=>635, +7700=>632,7701=>615,7702=>632,7703=>615,7704=>632,7705=>615,7706=>632,7707=>615,7708=>632,7709=>615, +7710=>575,7711=>352,7712=>775,7713=>635,7714=>752,7715=>634,7716=>752,7717=>634,7718=>752,7719=>634, +7720=>752,7721=>634,7722=>752,7723=>634,7724=>295,7725=>278,7726=>295,7727=>278,7728=>656,7729=>579, +7730=>656,7731=>579,7732=>656,7733=>579,7734=>557,7735=>288,7736=>557,7737=>288,7738=>557,7739=>278, +7740=>557,7741=>278,7742=>863,7743=>974,7744=>863,7745=>974,7746=>863,7747=>974,7748=>748,7749=>634, +7750=>748,7751=>634,7752=>748,7753=>634,7754=>748,7755=>634,7756=>787,7757=>612,7758=>787,7759=>612, +7760=>787,7761=>612,7762=>787,7763=>612,7764=>603,7765=>635,7766=>603,7767=>635,7768=>695,7769=>411, +7770=>695,7771=>411,7772=>695,7773=>411,7774=>695,7775=>411,7776=>635,7777=>521,7778=>635,7779=>521, +7780=>635,7781=>521,7782=>635,7783=>521,7784=>635,7785=>521,7786=>611,7787=>392,7788=>611,7789=>392, +7790=>611,7791=>392,7792=>611,7793=>392,7794=>732,7795=>634,7796=>732,7797=>634,7798=>732,7799=>634, +7800=>732,7801=>634,7802=>732,7803=>634,7804=>684,7805=>592,7806=>684,7807=>592,7808=>989,7809=>818, +7810=>989,7811=>818,7812=>989,7813=>818,7814=>989,7815=>818,7816=>989,7817=>818,7818=>685,7819=>592, +7820=>685,7821=>592,7822=>611,7823=>592,7824=>685,7825=>525,7826=>685,7827=>525,7828=>685,7829=>525, +7830=>634,7831=>392,7832=>818,7833=>592,7834=>613,7835=>352,7836=>352,7837=>352,7838=>769,7839=>612, +7840=>684,7841=>613,7842=>684,7843=>613,7844=>684,7845=>613,7846=>684,7847=>613,7848=>684,7849=>613, +7850=>684,7851=>613,7852=>684,7853=>613,7854=>684,7855=>613,7856=>684,7857=>613,7858=>684,7859=>613, +7860=>684,7861=>613,7862=>684,7863=>613,7864=>632,7865=>615,7866=>632,7867=>615,7868=>632,7869=>615, +7870=>632,7871=>615,7872=>632,7873=>615,7874=>632,7875=>615,7876=>632,7877=>615,7878=>632,7879=>615, +7880=>295,7881=>278,7882=>295,7883=>278,7884=>787,7885=>612,7886=>787,7887=>612,7888=>787,7889=>612, +7890=>787,7891=>612,7892=>787,7893=>612,7894=>787,7895=>612,7896=>787,7897=>612,7898=>913,7899=>612, +7900=>913,7901=>612,7902=>913,7903=>612,7904=>913,7905=>612,7906=>913,7907=>612,7908=>732,7909=>634, +7910=>732,7911=>634,7912=>858,7913=>634,7914=>858,7915=>634,7916=>858,7917=>634,7918=>858,7919=>634, +7920=>858,7921=>634,7922=>611,7923=>592,7924=>611,7925=>592,7926=>611,7927=>592,7928=>611,7929=>592, +7930=>769,7931=>477,7936=>659,7937=>659,7938=>659,7939=>659,7940=>659,7941=>659,7942=>659,7943=>659, +7944=>684,7945=>684,7946=>877,7947=>877,7948=>769,7949=>801,7950=>708,7951=>743,7952=>541,7953=>541, +7954=>541,7955=>541,7956=>541,7957=>541,7960=>711,7961=>711,7962=>966,7963=>975,7964=>898,7965=>928, +7968=>634,7969=>634,7970=>634,7971=>634,7972=>634,7973=>634,7974=>634,7975=>634,7976=>837,7977=>835, +7978=>1086,7979=>1089,7980=>1027,7981=>1051,7982=>934,7983=>947,7984=>338,7985=>338,7986=>338,7987=>338, +7988=>338,7989=>338,7990=>338,7991=>338,7992=>380,7993=>374,7994=>635,7995=>635,7996=>570,7997=>600, +7998=>489,7999=>493,8000=>612,8001=>612,8002=>612,8003=>612,8004=>612,8005=>612,8008=>804,8009=>848, +8010=>1095,8011=>1100,8012=>938,8013=>970,8016=>579,8017=>579,8018=>579,8019=>579,8020=>579,8021=>579, +8022=>579,8023=>579,8025=>784,8027=>998,8029=>1012,8031=>897,8032=>837,8033=>837,8034=>837,8035=>837, +8036=>837,8037=>837,8038=>837,8039=>837,8040=>802,8041=>843,8042=>1089,8043=>1095,8044=>946,8045=>972, +8046=>921,8047=>952,8048=>659,8049=>659,8050=>541,8051=>548,8052=>634,8053=>654,8054=>338,8055=>338, +8056=>612,8057=>612,8058=>579,8059=>579,8060=>837,8061=>837,8064=>659,8065=>659,8066=>659,8067=>659, +8068=>659,8069=>659,8070=>659,8071=>659,8072=>684,8073=>684,8074=>877,8075=>877,8076=>769,8077=>801, +8078=>708,8079=>743,8080=>634,8081=>634,8082=>634,8083=>634,8084=>634,8085=>634,8086=>634,8087=>634, +8088=>837,8089=>835,8090=>1086,8091=>1089,8092=>1027,8093=>1051,8094=>934,8095=>947,8096=>837,8097=>837, +8098=>837,8099=>837,8100=>837,8101=>837,8102=>837,8103=>837,8104=>802,8105=>843,8106=>1089,8107=>1095, +8108=>946,8109=>972,8110=>921,8111=>952,8112=>659,8113=>659,8114=>659,8115=>659,8116=>659,8118=>659, +8119=>659,8120=>684,8121=>684,8122=>716,8123=>692,8124=>684,8125=>500,8126=>500,8127=>500,8128=>500, +8129=>500,8130=>634,8131=>634,8132=>654,8134=>634,8135=>634,8136=>805,8137=>746,8138=>931,8139=>871, +8140=>752,8141=>500,8142=>500,8143=>500,8144=>338,8145=>338,8146=>338,8147=>338,8150=>338,8151=>338, +8152=>295,8153=>295,8154=>475,8155=>408,8157=>500,8158=>500,8159=>500,8160=>579,8161=>579,8162=>579, +8163=>579,8164=>635,8165=>635,8166=>579,8167=>579,8168=>611,8169=>611,8170=>845,8171=>825,8172=>685, +8173=>500,8174=>500,8175=>500,8178=>837,8179=>837,8180=>837,8182=>837,8183=>837,8184=>941,8185=>813, +8186=>922,8187=>826,8188=>764,8189=>500,8190=>500,8192=>500,8193=>1000,8194=>500,8195=>1000,8196=>330, +8197=>250,8198=>167,8199=>636,8200=>318,8201=>200,8202=>100,8203=>0,8204=>0,8205=>0,8206=>0, +8207=>0,8208=>361,8209=>361,8210=>636,8213=>1000,8214=>500,8215=>500,8219=>318,8223=>518,8227=>590, +8228=>334,8229=>667,8231=>318,8232=>0,8233=>0,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0, +8239=>200,8241=>1735,8242=>227,8243=>374,8244=>520,8245=>227,8246=>374,8247=>520,8248=>339,8251=>838, +8252=>485,8253=>531,8254=>500,8255=>804,8256=>804,8257=>250,8258=>1000,8259=>500,8260=>167,8261=>390, +8262=>390,8263=>922,8264=>733,8265=>733,8266=>497,8267=>636,8268=>500,8269=>500,8270=>500,8271=>337, +8272=>804,8273=>500,8274=>450,8275=>1000,8276=>804,8277=>838,8278=>586,8279=>663,8280=>838,8281=>838, +8282=>318,8283=>797,8284=>838,8285=>318,8286=>318,8287=>222,8288=>0,8289=>0,8290=>0,8291=>0, +8292=>0,8298=>0,8299=>0,8300=>0,8301=>0,8302=>0,8303=>0,8304=>401,8305=>179,8308=>401, +8309=>401,8310=>401,8311=>401,8312=>401,8313=>401,8314=>528,8315=>528,8316=>528,8317=>246,8318=>246, +8319=>398,8320=>401,8321=>401,8322=>401,8323=>401,8324=>401,8325=>401,8326=>401,8327=>401,8328=>401, +8329=>401,8330=>528,8331=>528,8332=>528,8333=>246,8334=>246,8336=>392,8337=>417,8338=>414,8339=>444, +8340=>417,8352=>877,8353=>636,8354=>636,8355=>636,8356=>636,8357=>974,8358=>748,8359=>1272,8360=>1074, +8361=>989,8362=>784,8363=>636,8365=>636,8366=>636,8367=>1272,8368=>636,8369=>636,8370=>636,8371=>636, +8372=>774,8373=>636,8376=>636,8377=>636,8400=>0,8401=>0,8406=>0,8407=>0,8411=>0,8412=>0, +8417=>0,8448=>1019,8449=>1019,8450=>698,8451=>1123,8452=>642,8453=>1019,8454=>1067,8455=>614,8456=>698, +8457=>952,8459=>988,8460=>754,8461=>850,8462=>634,8463=>634,8464=>470,8465=>697,8466=>720,8467=>413, +8468=>818,8469=>801,8470=>1040,8471=>1000,8472=>697,8473=>701,8474=>787,8475=>798,8476=>814,8477=>792, +8478=>896,8479=>684,8480=>1020,8481=>1074,8483=>684,8484=>745,8485=>578,8486=>764,8487=>764,8488=>616, +8489=>338,8490=>656,8491=>684,8492=>786,8493=>703,8494=>854,8495=>592,8496=>605,8497=>786,8498=>575, +8499=>1069,8500=>462,8501=>745,8502=>674,8503=>466,8504=>645,8505=>380,8506=>926,8507=>1194,8508=>702, +8509=>728,8510=>654,8511=>849,8512=>811,8513=>775,8514=>557,8515=>557,8516=>611,8517=>819,8518=>708, +8519=>615,8520=>351,8521=>351,8523=>780,8526=>526,8528=>969,8529=>969,8530=>1370,8531=>969,8532=>969, +8533=>969,8534=>969,8535=>969,8536=>969,8537=>969,8538=>969,8539=>969,8540=>969,8541=>969,8542=>969, +8543=>568,8544=>295,8545=>492,8546=>689,8547=>923,8548=>684,8549=>922,8550=>1120,8551=>1317,8552=>917, +8553=>685,8554=>933,8555=>1131,8556=>557,8557=>698,8558=>770,8559=>863,8560=>278,8561=>458,8562=>637, +8563=>812,8564=>592,8565=>811,8566=>991,8567=>1170,8568=>819,8569=>592,8570=>822,8571=>1002,8572=>278, +8573=>550,8574=>635,8575=>974,8576=>1245,8577=>770,8578=>1245,8579=>703,8580=>549,8581=>698,8585=>969, +8592=>838,8593=>838,8594=>838,8595=>838,8596=>838,8597=>838,8598=>838,8599=>838,8600=>838,8601=>838, +8602=>838,8603=>838,8604=>838,8605=>838,8606=>838,8607=>838,8608=>838,8609=>838,8610=>838,8611=>838, +8612=>838,8613=>838,8614=>838,8615=>838,8616=>838,8617=>838,8618=>838,8619=>838,8620=>838,8621=>838, +8622=>838,8623=>838,8624=>838,8625=>838,8626=>838,8627=>838,8628=>838,8629=>838,8630=>838,8631=>838, +8632=>838,8633=>838,8634=>838,8635=>838,8636=>838,8637=>838,8638=>838,8639=>838,8640=>838,8641=>838, +8642=>838,8643=>838,8644=>838,8645=>838,8646=>838,8647=>838,8648=>838,8649=>838,8650=>838,8651=>838, +8652=>838,8653=>838,8654=>838,8655=>838,8656=>838,8657=>838,8658=>838,8659=>838,8660=>838,8661=>838, +8662=>838,8663=>838,8664=>838,8665=>838,8666=>838,8667=>838,8668=>838,8669=>838,8670=>838,8671=>838, +8672=>838,8673=>838,8674=>838,8675=>838,8676=>838,8677=>838,8678=>838,8679=>838,8680=>838,8681=>838, +8682=>838,8683=>838,8684=>838,8685=>838,8686=>838,8687=>838,8688=>838,8689=>838,8690=>838,8691=>838, +8692=>838,8693=>838,8694=>838,8695=>838,8696=>838,8697=>838,8698=>838,8699=>838,8700=>838,8701=>838, +8702=>838,8703=>838,8704=>684,8705=>636,8706=>517,8707=>632,8708=>632,8709=>871,8710=>669,8711=>669, +8712=>871,8713=>871,8714=>718,8715=>871,8716=>871,8717=>718,8718=>636,8719=>757,8720=>757,8721=>674, +8722=>838,8723=>838,8724=>838,8725=>337,8726=>637,8727=>838,8728=>626,8729=>626,8730=>637,8731=>637, +8732=>637,8733=>714,8734=>833,8735=>838,8736=>896,8737=>896,8738=>838,8739=>500,8740=>500,8741=>500, +8742=>500,8743=>732,8744=>732,8745=>732,8746=>732,8747=>521,8748=>789,8749=>1057,8750=>521,8751=>789, +8752=>1057,8753=>521,8754=>521,8755=>521,8756=>636,8757=>636,8758=>260,8759=>636,8760=>838,8761=>838, +8762=>838,8763=>838,8764=>838,8765=>838,8766=>838,8767=>838,8768=>375,8769=>838,8770=>838,8771=>838, +8772=>838,8773=>838,8774=>838,8775=>838,8776=>838,8777=>838,8778=>838,8779=>838,8780=>838,8781=>838, +8782=>838,8783=>838,8784=>838,8785=>838,8786=>839,8787=>839,8788=>1000,8789=>1000,8790=>838,8791=>838, +8792=>838,8793=>838,8794=>838,8795=>838,8796=>838,8797=>838,8798=>838,8799=>838,8800=>838,8801=>838, +8802=>838,8803=>838,8804=>838,8805=>838,8806=>838,8807=>838,8808=>838,8809=>838,8810=>1047,8811=>1047, +8812=>464,8813=>838,8814=>838,8815=>838,8816=>838,8817=>838,8818=>838,8819=>838,8820=>838,8821=>838, +8822=>838,8823=>838,8824=>838,8825=>838,8826=>838,8827=>838,8828=>838,8829=>838,8830=>838,8831=>838, +8832=>838,8833=>838,8834=>838,8835=>838,8836=>838,8837=>838,8838=>838,8839=>838,8840=>838,8841=>838, +8842=>838,8843=>838,8844=>732,8845=>732,8846=>732,8847=>838,8848=>838,8849=>838,8850=>838,8851=>780, +8852=>780,8853=>838,8854=>838,8855=>838,8856=>838,8857=>838,8858=>838,8859=>838,8860=>838,8861=>838, +8862=>838,8863=>838,8864=>838,8865=>838,8866=>871,8867=>871,8868=>871,8869=>871,8870=>521,8871=>521, +8872=>871,8873=>871,8874=>871,8875=>871,8876=>871,8877=>871,8878=>871,8879=>871,8880=>838,8881=>838, +8882=>838,8883=>838,8884=>838,8885=>838,8886=>1000,8887=>1000,8888=>838,8889=>838,8890=>521,8891=>732, +8892=>732,8893=>732,8894=>838,8895=>838,8896=>820,8897=>820,8898=>820,8899=>820,8900=>494,8901=>318, +8902=>626,8903=>838,8904=>1000,8905=>1000,8906=>1000,8907=>1000,8908=>1000,8909=>838,8910=>732,8911=>732, +8912=>838,8913=>838,8914=>838,8915=>838,8916=>838,8917=>838,8918=>838,8919=>838,8920=>1422,8921=>1422, +8922=>838,8923=>838,8924=>838,8925=>838,8926=>838,8927=>838,8928=>838,8929=>838,8930=>838,8931=>838, +8932=>838,8933=>838,8934=>838,8935=>838,8936=>838,8937=>838,8938=>838,8939=>838,8940=>838,8941=>838, +8942=>1000,8943=>1000,8944=>1000,8945=>1000,8946=>1000,8947=>871,8948=>718,8949=>871,8950=>871,8951=>718, +8952=>871,8953=>871,8954=>1000,8955=>871,8956=>718,8957=>871,8958=>718,8959=>871,8960=>602,8961=>602, +8962=>635,8963=>838,8964=>838,8965=>838,8966=>838,8967=>488,8968=>390,8969=>390,8970=>390,8971=>390, +8972=>809,8973=>809,8974=>809,8975=>809,8976=>838,8977=>513,8984=>1000,8985=>838,8988=>469,8989=>469, +8990=>469,8991=>469,8992=>521,8993=>521,8996=>1152,8997=>1152,8998=>1414,8999=>1152,9000=>1443,9003=>1414, +9004=>873,9075=>338,9076=>635,9077=>837,9082=>659,9085=>757,9095=>1152,9108=>873,9115=>500,9116=>500, +9117=>500,9118=>500,9119=>500,9120=>500,9121=>500,9122=>500,9123=>500,9124=>500,9125=>500,9126=>500, +9127=>750,9128=>750,9129=>750,9130=>750,9131=>750,9132=>750,9133=>750,9134=>521,9166=>838,9167=>945, +9187=>873,9189=>769,9192=>636,9250=>635,9251=>635,9312=>896,9313=>896,9314=>896,9315=>896,9316=>896, +9317=>896,9318=>896,9319=>896,9320=>896,9321=>896,9472=>602,9473=>602,9474=>602,9475=>602,9476=>602, +9477=>602,9478=>602,9479=>602,9480=>602,9481=>602,9482=>602,9483=>602,9484=>602,9485=>602,9486=>602, +9487=>602,9488=>602,9489=>602,9490=>602,9491=>602,9492=>602,9493=>602,9494=>602,9495=>602,9496=>602, +9497=>602,9498=>602,9499=>602,9500=>602,9501=>602,9502=>602,9503=>602,9504=>602,9505=>602,9506=>602, +9507=>602,9508=>602,9509=>602,9510=>602,9511=>602,9512=>602,9513=>602,9514=>602,9515=>602,9516=>602, +9517=>602,9518=>602,9519=>602,9520=>602,9521=>602,9522=>602,9523=>602,9524=>602,9525=>602,9526=>602, +9527=>602,9528=>602,9529=>602,9530=>602,9531=>602,9532=>602,9533=>602,9534=>602,9535=>602,9536=>602, +9537=>602,9538=>602,9539=>602,9540=>602,9541=>602,9542=>602,9543=>602,9544=>602,9545=>602,9546=>602, +9547=>602,9548=>602,9549=>602,9550=>602,9551=>602,9552=>602,9553=>602,9554=>602,9555=>602,9556=>602, +9557=>602,9558=>602,9559=>602,9560=>602,9561=>602,9562=>602,9563=>602,9564=>602,9565=>602,9566=>602, +9567=>602,9568=>602,9569=>602,9570=>602,9571=>602,9572=>602,9573=>602,9574=>602,9575=>602,9576=>602, +9577=>602,9578=>602,9579=>602,9580=>602,9581=>602,9582=>602,9583=>602,9584=>602,9585=>602,9586=>602, +9587=>602,9588=>602,9589=>602,9590=>602,9591=>602,9592=>602,9593=>602,9594=>602,9595=>602,9596=>602, +9597=>602,9598=>602,9599=>602,9600=>769,9601=>769,9602=>769,9603=>769,9604=>769,9605=>769,9606=>769, +9607=>769,9608=>769,9609=>769,9610=>769,9611=>769,9612=>769,9613=>769,9614=>769,9615=>769,9616=>769, +9617=>769,9618=>769,9619=>769,9620=>769,9621=>769,9622=>769,9623=>769,9624=>769,9625=>769,9626=>769, +9627=>769,9628=>769,9629=>769,9630=>769,9631=>769,9632=>945,9633=>945,9634=>945,9635=>945,9636=>945, +9637=>945,9638=>945,9639=>945,9640=>945,9641=>945,9642=>678,9643=>678,9644=>945,9645=>945,9646=>550, +9647=>550,9648=>769,9649=>769,9650=>769,9651=>769,9652=>502,9653=>502,9654=>769,9655=>769,9656=>502, +9657=>502,9658=>769,9659=>769,9660=>769,9661=>769,9662=>502,9663=>502,9664=>769,9665=>769,9666=>502, +9667=>502,9668=>769,9669=>769,9670=>769,9671=>769,9672=>769,9673=>873,9674=>494,9675=>873,9676=>873, +9677=>873,9678=>873,9679=>873,9680=>873,9681=>873,9682=>873,9683=>873,9684=>873,9685=>873,9686=>527, +9687=>527,9688=>791,9689=>970,9690=>970,9691=>970,9692=>387,9693=>387,9694=>387,9695=>387,9696=>873, +9697=>873,9698=>769,9699=>769,9700=>769,9701=>769,9702=>590,9703=>945,9704=>945,9705=>945,9706=>945, +9707=>945,9708=>769,9709=>769,9710=>769,9711=>1119,9712=>945,9713=>945,9714=>945,9715=>945,9716=>873, +9717=>873,9718=>873,9719=>873,9720=>769,9721=>769,9722=>769,9723=>830,9724=>830,9725=>732,9726=>732, +9727=>769,9728=>896,9729=>1000,9730=>896,9731=>896,9732=>896,9733=>896,9734=>896,9735=>573,9736=>896, +9737=>896,9738=>888,9739=>888,9740=>671,9741=>1013,9742=>1246,9743=>1250,9744=>896,9745=>896,9746=>896, +9747=>532,9748=>896,9749=>896,9750=>896,9751=>896,9752=>896,9753=>896,9754=>896,9755=>896,9756=>896, +9757=>609,9758=>896,9759=>609,9760=>896,9761=>896,9762=>896,9763=>896,9764=>669,9765=>746,9766=>649, +9767=>784,9768=>545,9769=>896,9770=>896,9771=>896,9772=>710,9773=>896,9774=>896,9775=>896,9776=>896, +9777=>896,9778=>896,9779=>896,9780=>896,9781=>896,9782=>896,9783=>896,9784=>896,9785=>896,9786=>896, +9787=>896,9788=>896,9789=>896,9790=>896,9791=>614,9792=>732,9793=>732,9794=>896,9795=>896,9796=>896, +9797=>896,9798=>896,9799=>896,9800=>896,9801=>896,9802=>896,9803=>896,9804=>896,9805=>896,9806=>896, +9807=>896,9808=>896,9809=>896,9810=>896,9811=>896,9812=>896,9813=>896,9814=>896,9815=>896,9816=>896, +9817=>896,9818=>896,9819=>896,9820=>896,9821=>896,9822=>896,9823=>896,9824=>896,9825=>896,9826=>896, +9827=>896,9828=>896,9829=>896,9830=>896,9831=>896,9832=>896,9833=>472,9834=>638,9835=>896,9836=>896, +9837=>472,9838=>357,9839=>484,9840=>748,9841=>766,9842=>896,9843=>896,9844=>896,9845=>896,9846=>896, +9847=>896,9848=>896,9849=>896,9850=>896,9851=>896,9852=>896,9853=>896,9854=>896,9855=>896,9856=>869, +9857=>869,9858=>869,9859=>869,9860=>869,9861=>869,9862=>896,9863=>896,9864=>896,9865=>896,9866=>896, +9867=>896,9868=>896,9869=>896,9870=>896,9871=>896,9872=>896,9873=>896,9874=>896,9875=>896,9876=>896, +9877=>541,9878=>896,9879=>896,9880=>896,9881=>896,9882=>896,9883=>896,9884=>896,9888=>896,9889=>702, +9890=>1004,9891=>1089,9892=>1175,9893=>903,9894=>838,9895=>838,9896=>838,9897=>838,9898=>838,9899=>838, +9900=>838,9901=>838,9902=>838,9903=>838,9904=>844,9905=>838,9906=>732,9907=>732,9908=>732,9909=>732, +9910=>850,9911=>732,9912=>732,9920=>838,9921=>838,9922=>838,9923=>838,9985=>838,9986=>838,9987=>838, +9988=>838,9990=>838,9991=>838,9992=>838,9993=>838,9996=>838,9997=>838,9998=>838,9999=>838,10000=>838, +10001=>838,10002=>838,10003=>838,10004=>838,10005=>838,10006=>838,10007=>838,10008=>838,10009=>838,10010=>838, +10011=>838,10012=>838,10013=>838,10014=>838,10015=>838,10016=>838,10017=>838,10018=>838,10019=>838,10020=>838, +10021=>838,10022=>838,10023=>838,10025=>838,10026=>838,10027=>838,10028=>838,10029=>838,10030=>838,10031=>838, +10032=>838,10033=>838,10034=>838,10035=>838,10036=>838,10037=>838,10038=>838,10039=>838,10040=>838,10041=>838, +10042=>838,10043=>838,10044=>838,10045=>838,10046=>838,10047=>838,10048=>838,10049=>838,10050=>838,10051=>838, +10052=>838,10053=>838,10054=>838,10055=>838,10056=>838,10057=>838,10058=>838,10059=>838,10061=>896,10063=>896, +10064=>896,10065=>896,10066=>896,10070=>896,10072=>838,10073=>838,10074=>838,10075=>322,10076=>322,10077=>538, +10078=>538,10081=>838,10082=>838,10083=>838,10084=>838,10085=>838,10086=>838,10087=>838,10088=>838,10089=>838, +10090=>838,10091=>838,10092=>838,10093=>838,10094=>838,10095=>838,10096=>838,10097=>838,10098=>838,10099=>838, +10100=>838,10101=>838,10102=>896,10103=>896,10104=>896,10105=>896,10106=>896,10107=>896,10108=>896,10109=>896, +10110=>896,10111=>896,10112=>838,10113=>838,10114=>838,10115=>838,10116=>838,10117=>838,10118=>838,10119=>838, +10120=>838,10121=>838,10122=>838,10123=>838,10124=>838,10125=>838,10126=>838,10127=>838,10128=>838,10129=>838, +10130=>838,10131=>838,10132=>838,10136=>838,10137=>838,10138=>838,10139=>838,10140=>838,10141=>838,10142=>838, +10143=>838,10144=>838,10145=>838,10146=>838,10147=>838,10148=>838,10149=>838,10150=>838,10151=>838,10152=>838, +10153=>838,10154=>838,10155=>838,10156=>838,10157=>838,10158=>838,10159=>838,10161=>838,10162=>838,10163=>838, +10164=>838,10165=>838,10166=>838,10167=>838,10168=>838,10169=>838,10170=>838,10171=>838,10172=>838,10173=>838, +10174=>838,10181=>390,10182=>390,10208=>494,10214=>495,10215=>495,10216=>390,10217=>390,10218=>556,10219=>556, +10224=>838,10225=>838,10226=>838,10227=>838,10228=>1157,10229=>1434,10230=>1434,10231=>1434,10232=>1434,10233=>1434, +10234=>1434,10235=>1434,10236=>1434,10237=>1434,10238=>1434,10239=>1434,10240=>732,10241=>732,10242=>732,10243=>732, +10244=>732,10245=>732,10246=>732,10247=>732,10248=>732,10249=>732,10250=>732,10251=>732,10252=>732,10253=>732, +10254=>732,10255=>732,10256=>732,10257=>732,10258=>732,10259=>732,10260=>732,10261=>732,10262=>732,10263=>732, +10264=>732,10265=>732,10266=>732,10267=>732,10268=>732,10269=>732,10270=>732,10271=>732,10272=>732,10273=>732, +10274=>732,10275=>732,10276=>732,10277=>732,10278=>732,10279=>732,10280=>732,10281=>732,10282=>732,10283=>732, +10284=>732,10285=>732,10286=>732,10287=>732,10288=>732,10289=>732,10290=>732,10291=>732,10292=>732,10293=>732, +10294=>732,10295=>732,10296=>732,10297=>732,10298=>732,10299=>732,10300=>732,10301=>732,10302=>732,10303=>732, +10304=>732,10305=>732,10306=>732,10307=>732,10308=>732,10309=>732,10310=>732,10311=>732,10312=>732,10313=>732, +10314=>732,10315=>732,10316=>732,10317=>732,10318=>732,10319=>732,10320=>732,10321=>732,10322=>732,10323=>732, +10324=>732,10325=>732,10326=>732,10327=>732,10328=>732,10329=>732,10330=>732,10331=>732,10332=>732,10333=>732, +10334=>732,10335=>732,10336=>732,10337=>732,10338=>732,10339=>732,10340=>732,10341=>732,10342=>732,10343=>732, +10344=>732,10345=>732,10346=>732,10347=>732,10348=>732,10349=>732,10350=>732,10351=>732,10352=>732,10353=>732, +10354=>732,10355=>732,10356=>732,10357=>732,10358=>732,10359=>732,10360=>732,10361=>732,10362=>732,10363=>732, +10364=>732,10365=>732,10366=>732,10367=>732,10368=>732,10369=>732,10370=>732,10371=>732,10372=>732,10373=>732, +10374=>732,10375=>732,10376=>732,10377=>732,10378=>732,10379=>732,10380=>732,10381=>732,10382=>732,10383=>732, +10384=>732,10385=>732,10386=>732,10387=>732,10388=>732,10389=>732,10390=>732,10391=>732,10392=>732,10393=>732, +10394=>732,10395=>732,10396=>732,10397=>732,10398=>732,10399=>732,10400=>732,10401=>732,10402=>732,10403=>732, +10404=>732,10405=>732,10406=>732,10407=>732,10408=>732,10409=>732,10410=>732,10411=>732,10412=>732,10413=>732, +10414=>732,10415=>732,10416=>732,10417=>732,10418=>732,10419=>732,10420=>732,10421=>732,10422=>732,10423=>732, +10424=>732,10425=>732,10426=>732,10427=>732,10428=>732,10429=>732,10430=>732,10431=>732,10432=>732,10433=>732, +10434=>732,10435=>732,10436=>732,10437=>732,10438=>732,10439=>732,10440=>732,10441=>732,10442=>732,10443=>732, +10444=>732,10445=>732,10446=>732,10447=>732,10448=>732,10449=>732,10450=>732,10451=>732,10452=>732,10453=>732, +10454=>732,10455=>732,10456=>732,10457=>732,10458=>732,10459=>732,10460=>732,10461=>732,10462=>732,10463=>732, +10464=>732,10465=>732,10466=>732,10467=>732,10468=>732,10469=>732,10470=>732,10471=>732,10472=>732,10473=>732, +10474=>732,10475=>732,10476=>732,10477=>732,10478=>732,10479=>732,10480=>732,10481=>732,10482=>732,10483=>732, +10484=>732,10485=>732,10486=>732,10487=>732,10488=>732,10489=>732,10490=>732,10491=>732,10492=>732,10493=>732, +10494=>732,10495=>732,10502=>838,10503=>838,10506=>838,10507=>838,10560=>683,10561=>683,10627=>734,10628=>734, +10702=>838,10703=>1000,10704=>1000,10705=>1000,10706=>1000,10707=>1000,10708=>1000,10709=>1000,10731=>494,10746=>838, +10747=>838,10752=>1000,10753=>1000,10754=>1000,10764=>1325,10765=>521,10766=>521,10767=>521,10768=>521,10769=>521, +10770=>521,10771=>521,10772=>521,10773=>521,10774=>521,10775=>521,10776=>521,10777=>521,10778=>521,10779=>521, +10780=>521,10799=>838,10877=>838,10878=>838,10879=>838,10880=>838,10881=>838,10882=>838,10883=>838,10884=>838, +10885=>838,10886=>838,10887=>838,10888=>838,10889=>838,10890=>838,10891=>838,10892=>838,10893=>838,10894=>838, +10895=>838,10896=>838,10897=>838,10898=>838,10899=>838,10900=>838,10901=>838,10902=>838,10903=>838,10904=>838, +10905=>838,10906=>838,10907=>838,10908=>838,10909=>838,10910=>838,10911=>838,10912=>838,10926=>838,10927=>838, +10928=>838,10929=>838,10930=>838,10931=>838,10932=>838,10933=>838,10934=>838,10935=>838,10936=>838,10937=>838, +10938=>838,11001=>838,11002=>838,11008=>838,11009=>838,11010=>838,11011=>838,11012=>838,11013=>838,11014=>838, +11015=>838,11016=>838,11017=>838,11018=>838,11019=>838,11020=>838,11021=>838,11022=>836,11023=>836,11024=>836, +11025=>836,11026=>945,11027=>945,11028=>945,11029=>945,11030=>769,11031=>769,11032=>769,11033=>769,11034=>945, +11039=>869,11040=>869,11041=>873,11042=>873,11043=>873,11044=>1119,11091=>869,11092=>869,11360=>557,11361=>278, +11362=>557,11363=>603,11364=>695,11365=>613,11366=>392,11367=>752,11368=>634,11369=>656,11370=>579,11371=>685, +11372=>525,11373=>781,11374=>863,11375=>684,11376=>781,11377=>734,11378=>1128,11379=>961,11380=>592,11381=>654, +11382=>568,11383=>660,11385=>414,11386=>612,11387=>491,11388=>175,11389=>431,11390=>635,11391=>685,11568=>646, +11569=>888,11570=>888,11571=>682,11572=>684,11573=>635,11574=>562,11575=>684,11576=>684,11577=>632,11578=>632, +11579=>683,11580=>875,11581=>685,11582=>491,11583=>685,11584=>888,11585=>888,11586=>300,11587=>627,11588=>752, +11589=>656,11590=>527,11591=>685,11592=>645,11593=>632,11594=>502,11595=>953,11596=>778,11597=>748,11598=>621, +11599=>295,11600=>778,11601=>295,11602=>752,11603=>633,11604=>888,11605=>888,11606=>752,11607=>320,11608=>749, +11609=>888,11610=>888,11611=>698,11612=>768,11613=>685,11614=>698,11615=>622,11616=>684,11617=>752,11618=>632, +11619=>788,11620=>567,11621=>788,11631=>515,11800=>531,11810=>390,11811=>390,11812=>390,11813=>390,11822=>531, +19904=>896,19905=>896,19906=>896,19907=>896,19908=>896,19909=>896,19910=>896,19911=>896,19912=>896,19913=>896, +19914=>896,19915=>896,19916=>896,19917=>896,19918=>896,19919=>896,19920=>896,19921=>896,19922=>896,19923=>896, +19924=>896,19925=>896,19926=>896,19927=>896,19928=>896,19929=>896,19930=>896,19931=>896,19932=>896,19933=>896, +19934=>896,19935=>896,19936=>896,19937=>896,19938=>896,19939=>896,19940=>896,19941=>896,19942=>896,19943=>896, +19944=>896,19945=>896,19946=>896,19947=>896,19948=>896,19949=>896,19950=>896,19951=>896,19952=>896,19953=>896, +19954=>896,19955=>896,19956=>896,19957=>896,19958=>896,19959=>896,19960=>896,19961=>896,19962=>896,19963=>896, +19964=>896,19965=>896,19966=>896,19967=>896,42564=>635,42565=>521,42566=>354,42567=>338,42572=>1180,42573=>1028, +42576=>1029,42577=>906,42580=>1080,42581=>842,42582=>977,42583=>843,42594=>1062,42595=>912,42596=>1066,42597=>901, +42598=>1178,42599=>1008,42600=>787,42601=>612,42602=>855,42603=>712,42604=>1358,42605=>1019,42606=>879,42634=>782, +42635=>685,42636=>611,42637=>583,42644=>686,42645=>634,42760=>493,42761=>493,42762=>493,42763=>493,42764=>493, +42765=>493,42766=>493,42767=>493,42768=>493,42769=>493,42770=>493,42771=>493,42772=>493,42773=>493,42774=>493, +42779=>369,42780=>369,42781=>252,42782=>252,42783=>252,42786=>385,42787=>356,42788=>472,42789=>472,42790=>752, +42791=>634,42792=>878,42793=>709,42794=>614,42795=>541,42800=>491,42801=>521,42802=>1250,42803=>985,42804=>1203, +42805=>990,42806=>1142,42807=>981,42808=>971,42809=>818,42810=>971,42811=>818,42812=>959,42813=>818,42814=>703, +42815=>549,42822=>680,42823=>392,42824=>582,42825=>427,42826=>807,42827=>704,42830=>1358,42831=>1019,42832=>603, +42833=>635,42834=>734,42835=>774,42838=>787,42839=>635,42852=>605,42853=>635,42854=>605,42855=>635,42880=>557, +42881=>278,42882=>735,42883=>634,42889=>337,42890=>376,42891=>401,42892=>275,42893=>686,43003=>575,43004=>603, +43005=>863,43006=>295,43007=>1199,61184=>213,61185=>238,61186=>257,61187=>264,61188=>267,61189=>238,61190=>213, +61191=>238,61192=>257,61193=>264,61194=>257,61195=>238,61196=>213,61197=>238,61198=>257,61199=>264,61200=>257, +61201=>238,61202=>213,61203=>238,61204=>267,61205=>264,61206=>257,61207=>238,61208=>213,61209=>275,61440=>977, +61441=>977,63173=>612,64256=>689,64257=>630,64258=>630,64259=>967,64260=>967,64261=>686,64262=>861,64275=>1202, +64276=>1202,64277=>1196,64278=>1186,64279=>1529,64285=>272,64286=>0,64287=>471,64288=>636,64289=>856,64290=>774, +64291=>906,64292=>771,64293=>843,64294=>855,64295=>807,64296=>875,64297=>838,64298=>808,64299=>808,64300=>808, +64301=>808,64302=>629,64303=>629,64304=>629,64305=>608,64306=>448,64307=>594,64308=>640,64309=>272,64310=>374, +64312=>648,64313=>336,64314=>592,64315=>556,64316=>599,64318=>659,64320=>441,64321=>700,64323=>640,64324=>604, +64326=>581,64327=>663,64328=>592,64329=>808,64330=>657,64331=>272,64332=>608,64333=>556,64334=>604,64335=>540, +64338=>941,64339=>982,64340=>278,64341=>302,64342=>941,64343=>982,64344=>278,64345=>302,64346=>941,64347=>982, +64348=>278,64349=>302,64350=>941,64351=>982,64352=>278,64353=>302,64354=>941,64355=>982,64356=>278,64357=>302, +64358=>941,64359=>982,64360=>278,64361=>302,64362=>1037,64363=>1035,64364=>478,64365=>506,64366=>1037,64367=>1035, +64368=>478,64369=>506,64370=>646,64371=>646,64372=>618,64373=>646,64374=>646,64375=>646,64376=>618,64377=>646, +64378=>646,64379=>646,64380=>618,64381=>646,64382=>646,64383=>646,64384=>618,64385=>646,64386=>445,64387=>525, +64388=>445,64389=>525,64390=>445,64391=>525,64392=>445,64393=>525,64394=>483,64395=>552,64396=>483,64397=>552, +64398=>895,64399=>895,64400=>476,64401=>552,64402=>895,64403=>895,64404=>476,64405=>552,64406=>895,64407=>895, +64408=>476,64409=>552,64410=>895,64411=>895,64412=>476,64413=>552,64414=>734,64415=>761,64416=>734,64417=>761, +64418=>278,64419=>302,64426=>698,64427=>632,64428=>527,64429=>461,64467=>824,64468=>843,64469=>476,64470=>552, +64473=>483,64474=>517,64488=>278,64489=>302,64508=>783,64509=>833,64510=>278,64511=>302,65024=>0,65025=>0, +65026=>0,65027=>0,65028=>0,65029=>0,65030=>0,65031=>0,65032=>0,65033=>0,65034=>0,65035=>0, +65036=>0,65037=>0,65038=>0,65039=>0,65056=>0,65057=>0,65058=>0,65059=>0,65136=>293,65137=>293, +65138=>293,65139=>262,65140=>293,65142=>293,65143=>293,65144=>293,65145=>293,65146=>293,65147=>293,65148=>293, +65149=>293,65150=>293,65151=>293,65152=>470,65153=>278,65154=>305,65155=>278,65156=>305,65157=>483,65158=>517, +65159=>278,65160=>305,65161=>783,65162=>833,65163=>278,65164=>302,65165=>278,65166=>305,65167=>941,65168=>982, +65169=>278,65170=>302,65171=>524,65172=>536,65173=>941,65174=>982,65175=>278,65176=>302,65177=>941,65178=>982, +65179=>278,65180=>302,65181=>646,65182=>646,65183=>618,65184=>646,65185=>646,65186=>646,65187=>618,65188=>646, +65189=>646,65190=>646,65191=>618,65192=>646,65193=>445,65194=>525,65195=>445,65196=>525,65197=>483,65198=>552, +65199=>483,65200=>552,65201=>1221,65202=>1275,65203=>838,65204=>892,65205=>1221,65206=>1275,65207=>838,65208=>892, +65209=>1209,65210=>1225,65211=>849,65212=>867,65213=>1209,65214=>1225,65215=>849,65216=>867,65217=>925,65218=>949, +65219=>796,65220=>820,65221=>925,65222=>949,65223=>796,65224=>820,65225=>597,65226=>532,65227=>597,65228=>482, +65229=>597,65230=>532,65231=>523,65232=>482,65233=>1037,65234=>1035,65235=>478,65236=>506,65237=>776,65238=>834, +65239=>478,65240=>506,65241=>824,65242=>843,65243=>476,65244=>552,65245=>727,65246=>757,65247=>305,65248=>331, +65249=>619,65250=>666,65251=>536,65252=>578,65253=>734,65254=>761,65255=>278,65256=>302,65257=>524,65258=>536, +65259=>527,65260=>461,65261=>483,65262=>517,65263=>783,65264=>833,65265=>783,65266=>833,65267=>278,65268=>302, +65269=>570,65270=>597,65271=>570,65272=>597,65273=>570,65274=>597,65275=>570,65276=>597,65279=>0,65529=>0, +65530=>0,65531=>0,65532=>0,65533=>1025); +$enc=''; +$diff=''; +$file='dejavusans.z'; +$ctg='dejavusans.ctg.z'; +$originalsize=683528; +// --- EOF --- \ No newline at end of file diff --git a/libraries/tcpdf/fonts/dejavusans.z b/libraries/tcpdf/fonts/dejavusans.z new file mode 100644 index 0000000000000000000000000000000000000000..4ef7dfd07906d1bc6dec394f1c01fd203aac9158 GIT binary patch literal 347072 zcmb=p^=2<;jfm?n`#&M^#c6%-UMjLUu?Y!rJQNUQ6r9N0afi*t!R1h`ydsm5f|6H) z;6zuKl!>8cjxH`Kjj4fxg8nfgE=M{#blMImIa#P!e75^qqJDX&K>ywO@BeQWIlp~g zNO*X-?fGDT+t|yt%sdPxES$4SUR+q6Ex+(u62mnq@9cZi?(I9w+^*LC;k_Nhp-H!^ zO5Xo`BOg`9AmGnvv-Q!odF9)Ff1KC-p221^bHLi@@AGL$1IB!>#ac##;|NFJtH_X?v?f7|O#>Zx3<9YiO+25o;e^B`S#+jAE zkM;$tH7!1^WMgllSN!HeOJHpHqx;eu_SGKx;dwKcug;iP=JPft89O`0>=!MwbM7-+ zxUXTF;QqierfNfV{o>`7|K45d4)-dqJJKAqTK&Nd$A*0hT+$7k>pAk3w@2UT{bPOT z_lbIinvOqm50jtR3w~4FA8*n2XMc5_at_a^iK&*4xd$OR~Z6VX(sP{GbvW#M4lyEWxotd z;5xPAO7XGBtcrYhs(t!cWbMQPZ%CZ;?<)l*0X>%+4C^r)p24wd)=1Vqdn@q%URvRDR<; z!{++@{S1r#E?O;R5WYrRj3vBO{M*5)FIIKeY~o)3bk>Vm9W~Rk#Xj-xeAe{hRN>Qv zlQ!3xbSlqm75I5PcIS!bJFhAHZ+h+fqHlcpI)wbQLtG8@Dv0uW2L5zbn$bsX^ zWp;+k@2|Qyt?0iL@BFV+_UpR$d`WW?G$fb|BdmW2M0L7cJ9x5vTVRqX)2+kl9qg^m zD?XlYJ?|*Qw=k3=ga5yqP4Bb=CxlqGv~-_{7uxXLY2ydwPl;Q28P_^F?0sziM0JaR zo7u~hpHB50OUhqd;$D`Tmde-UZoK(eU$bfRCL{Ml%MQ+btah;PpmJN>0U(azNn%Hg3@s-0PM4Jm&3;g;Q6Zn{#%?X^GyTUX9t)f7*}r$&1?L8)<(WK$1x)J8N0{rCJPtO<8leS&r=mQRezY8_#(<_6ZMN4zEtGZLo;z|CQ%x!ScG%kTsfb zfz2$3;*4IQmmGHk)cz(Y@HnqbS$HRXQOvW$N)cU~4i@LGwa{9Yzr;d;mu)1d8>Q1&d*qWI8<#}75yzH0odSW(m2`T5l1$jMRM>CqQf%y*~| zPF%Bek1K1<;Y(8X-W=ISc5~QU}ziV7#Qt8>7D0#_Cr6)2`SLoQH z4U(LXGj5zb?7gIa!Z&4EC#$9s8P4P)i|!Im%^tRnxQPp6jbd0O*R5Kk79_i*%ABWPhC4dG%jkzz@}Q&bJa#3pWV7-7WfS*2@>^MHi0iIR4+nReRd%i+1$I z2ytyv3YQ$&g!F+BDAs(&DwlzjqK|ayEevI|y_l=-!O}59cZTOlaeEV40hP!W^@A0R)uy6LA!h56}e zN)KZVs`)stD{qtIe81|Z*%Dcg-4pFxez9=AzgBpS!MZJ^qlE1xlhD1hTo&A{d#uHO z?A2NKnrWRa1UX4v@BZSzddDG3cwO7nIiaj^!Q9g8zG_|jl%4tW)#4wi%Dbc%l}Gsp zE|Gp5B>K4T*$%Johp$$utvmInkK?gGVF63BTZOsNtL>T#Mc=D?t;#sQYp5cZm99mn{xhy_!I4}1vf4N!ViKp9YR{b_=as*7zmbRJ!k*wwQ!`KLJPk~3+!PVHY)wd*cJ@@>Q)#KY zHw9OQ|Ma-IUM8qdoqMkny+aGMOw&`n7 zJ||eDVtq-*S5{XhSLS7(U!Ppxy}o~aj(viCg?%~4O^)jvU);yqceF3HZ))GwzO8+{ zeP{dL_RZ}pmzB5tX3b~WXVGWvXL-&_&+?Gp$(JR+<~XMNrpu<=rYol#r)#H2r?aPv zr?+kHFK#IAD4tT>RJ^HpSMfIE<2x_xJhJo7&QmjA$2`CD;?Ap@yE{+++*iE*bA$2y z$}5o%Y~Jb=#g#RB7w(K*rF|{*^wcL_rKW|Z|gI$lr?v!mm zE?aPXr}Mj%@>#oA?rz=PYkl|b$-9T|-oAU^_Jr*r+jDc@&U-fRY2B5*2ln3BduH#Y zy|?yW+k0^D&AoT`UjDo8xAOP8?~30AzZZVj{2uvTwcNt3tMJ&5q$Wet#(nb9)A#VQi97(yt>t9g;%ET4_#ap3Hb@xH-8fN$i+TXQbR_Ej9DB*fYmwtTkMJ z{7qM-eOmsR#u%hTa{K-yDFj&G9wjXXk)qbe`UiLffcTo*@t#{4o+SN5X z_m%GJ-M4n%_1fJv?|*;$#rNY=t$Qu&zRUZR?x))S5Z!-!{jcP|TmN|e3#k{bFRst7 zx2|`uH?P;PxBu_(-{8MQ{j~a3^~>t}>i5-8tY2B*`rq=u)c>mgYX8mt^Zn2J-~P}4 z5BuNtzsLWy{xkl^{ZD(hCeRb}u-LKqV)qR~%u%UoZcE5wQif= z?G?FK+@Zx9k=t`MBjWNmq35oXwu~LvpI{ zCX-!x8kd^Bw|rmT!vA@0vvJ60ljps0Gs73!&HlQwJ!~J#%I(F6m`_cQ_^~DX=%tB# z3UdOw+>UtI_`bt8# z*j7rlt?bl;m)a7WJIyYA&0O4~JZ;6&niE@=nm+w1vDK<>dY|g{$w#G%(-|Jl*R?P> z)!n^vS>d&eL&rk&qMuz{ex%;BX3^5Qks(QE=2{$DcyZRTz=i9dYAg&;j>=Oyn^9=s z-l?Rsk$q}==YE%rFFy@FnjMOo`q=-+w23Y2qxYOTp|$6fymp09H~-2b)mJuE@ULIW zzjblC;i`C}evf|M9kG%>KA&E^d8(B*2uHCKyH?>b-Qw(-=bpBHZ&khz#C6)XBQ^z6q=q4{S+Ynn>+BCZ*|IoTy- zq9kCxMpkdaC#1%T21Oy1hwL*&fbSjhK2hbj#{& z?TrTbMBP|L-l@abY%?XW#nN2i^3 zv8!F3VY#kr#Y#6(!4T1i)IGJl7q>p_KEm|rYKy9>NVPy%WRlySi<`B6Z83^ly(oTB z#vLinkT9q0EidJJt}g%6vo0cO-Q(4ZBQjeqEON?8IKrImwPDld746+C+FPa`;hB2& z-6z!&{RFqF?UQqI!{_Ndzn>G%HvOxgXw6E7I7`ocq7Lu0{2QV^G5s{mP}iTt@3`yF z+(&K4uO|7nOgD+#d^qjw(zC6(x4Imdb_dR1;Gg{e!t&Ss8}I(&{-yn9!M|1iw0_UB zuRPMnCe0=<6t&p@du;9YFwPI@=?i3o+*Ra)zdOBZKVo~_V2Pneq{ko5Ni#kE*wxty z)lbUPywvso$-K1={(CnZ{Zs6{jpxn;Cffz(U)miFn2tG``7}p<(9mf(x`8L`P*w!D zbb@hC``izDH7vg$3dl4*F5o(MNR`95({g4%You>j`_<&$2;;8*;t99qxqWxIaa=DH znfHuC_lQ)7@X9Co7lpnlT&?LZP?5dsQd8ZR)ZxXq>GcHu3z7DlY$HB}uPW|&wa2B@ zZoy*PirJ6O?onsjs^+(BaY($u57`jAmJeGsr2d*;cys&s#eI_D>DnJxFy!rf-8*fX znmOa_J0W>ps%M`_E4b|o%xf&W;g!c+_jOVgXVWWD-UYMN7QDUcayxjzv}YIQ2wcj_ zE?vl1ujkaaxPSYUAWzBp=^` zga3WcJXQbyvdEWc$tTZO34dFne*aOfw&kaEg`0jaHJ-8l{er1(OT27ZtL86 zALg8|ZVkT^Qxv;x^7nSpkJ*tI-xN>0n0`-w@p-q(lNvtz7Q6{e-1lf<_S5O|$v=g* z1!qdjZe5zP+*Qi@XJkjVcZJO95UIOuE2d~E#is67^gOgGC1awBwo+xDxk{O-iAr#j zN-=kr?oO5?)4sImdhSb_+oh5FJS?Q^u+A@~PRYlU-s|cvEbNqQ)17#vi^t@P$DW1v z7u2-f|5==(FJ#~F;k=lP#M7ICk4zsO7nIU{BKV)l{Uh_E{VH}BZNBU5U;b2sD@4xy zsrMq&-o;M$Uj%OU<2|%b%*KE7nnOLCqhzxMj?RzIyJdDgfqB;2mT*n`sHTWb+gMIV zv2KrZ+?lnr)a}d02l*j!WoD9Q2@5RyKP}$eQ&n<`eD9KZ%V3?t!VzDt$be>vMeq=ar^PB4dz|nQkQ02?cNv{5yrc) zU&LMLML^dytI(U93tbg&?mBhhPJY6cV;i+@|NFVk{aR9j{JwV*5y!rXN!s1nH7(M% zxV1EQpT%+!-KQDM?%o@G{-$tG)795-ef{f(aaZWn+1VKrHT}=cH@mK|De*K{^(?p8 zw7z0rPOeDT&b4V%bj`yPonFt;`uKT?V79$?*ef2XKoMQ-rqKOu+s$7^Joi5O_3j*Q z)juy!)hye(#7Af0hq$Rd=YoQcUDCQW@8YbhuQJ}$p3s)caN(#u!7Ul#=~=mYbJX;W zRh#Aox_BG^+P0A8?1_UDf^63MikXCYYD;M^6Fqyi*g;e~6IwE_*%M|GmZ&{T`_qn3 zt2c}GPQBH2Y*nsnGVAt58{MKWM%-MRvF=mYoKU&5SMPTfiiZ7BeY)|{RqbstYECbr zD^E|2S?$L9=J(}@$e65Nr}a|B(|)YmA++Yy>Ci{_wLa!7J1f8TO7=``osY}U-q>*` zXYGr{tL9w{vrn7ivRJ&hcD~fnF2N?jzec@bp@+KU)~~WyIO&ArBL zO|886sczGxNpGL-nanUNCVU;Yg84LQ=E>0~bR8Dd7EkBp|x#c%=4~H+PZVYl=lk{tKM>+?^pezIFtWx<}K&?zHb-iKd*lA#$Bdz z?W%H)sS-yQSBTDk6dvLl{Kcz`Cp+}loX_=--_E~Z}YtwYy}OS+ss8b9ozMHdr}!_Xm;8KK@kDg7P19%hW#@lA+0FS{;M(#}W=FQGvv9{P z5Vz`?WvuHl-+$Ix$?zO64}Xc1t6!`+-tpb_^^NGMix`@Mf;0IR+*$jD{aWH*P`gsYC7hS%7hPG!hl$XwFM^MaWut&z-aQjXGW7(7iSj6&C^UT zo*5{+*mUvJWp}bt^rx<$G_7E!r)5mqrP`2mLHW&BRHe&YSp@LWRtcpHR9{<&d%$9*6A)_Ww^z#K$PLu!TLwCYGTX$KX_gE zB^Iv|^Y2AH=i=+4b)MXhI1D>17)_`DoL{|vLhT{GO^4q|Xs4v#U@dbMVA=gZkjZI| zfY78?lZ7iUIAtg=;hx(f=aj#2zk!E@Vvq2q*33gX4+9e$H$+6Jtq}?1&Ti#Bl-AQ$ z#`T^{exac2OgD!XP-E~Z?yRR``h=0Gwb*N z58iRG{=$FDJ1_p9`Y*cWOZ{VewzXH5UlqL&RqGeao_lrr)w35O@2<*gpZ99^E4>$s z_pPsMnK!+0f$dt`dBk67&OyP~ z`&j26+COu;>637QI6>eplQcTW1}CEwr}+oCj0?+ecnuc+s} z&)4>RSDB}5v z>paQn@74dYJ-WPdzIotW+i9DVdRJf0s#1<}HM-Jl67zEQW3TyrhC%LKld6*EY!Q$< z?(vDUM=|~w#~;y6eNGmgf#3EAPQIVGq_*!iS9Oza+WXD?7xdo?2FaGnp6oN1vHlak z^8D)6SNE^l`D*nmwbK558Z(Yv&wrS3aFtfMf=!$<7$k!4BT z8+&Kyl?hdM>^=JLkwQ%PvCf;1ObVy{Sh2$)Mn_LLyleH*t&i9WH}8nOqq$GJPUW3A zf2aGA$B#5WuBq_k@t*W#N=;C}D$T1CUwQT}Nej|mx%P_VE2UJA+9iya1Tv?XIL^}X zou1}xdC4iWb4yIr*ZuzA{(nFD@BQ1!ev0%CGbzAwb&Q4+rKeBnNAJTocU7=7W?cw4|ZsP3Eo(>Gk^<-YlExAbfgziRU8!tW5LHdfxsZCf8? zcH8!BT5$1}!XtLqaGT9@at_CYzl_y!`z_q_W=`Ir9bb%IX#VdJdM)HHVKepo=A@D< zLcJaqi5nfFdc7yCi=KSSxU=5kSK9P~$xq*|5wVim^5A=5+y{Ypmp?sPZ*Eqo)pac7 zKCNR=nU%;q^+KFCXa2=xwM6&svU&Y68dJY@w|oz(^!s_uJVW)zBUZr>R`d!f?L&@h3o4}+{98G9URJHKRm z{Y}Qx)oqzAXE`RXSf;KeKk=TG*mOausy#jyy0?}U>h1P;x_f0yiF%;?k%TRC<}zFF z?M-mLH{p-#eUQT^s&9>}))vYG&#X`n4eGA=##l`;4TJ2_fT0<@HcUydwcF~%U zThC9QXWe}Ex$ftQHd?py*Th^o_gYL}%jNkFi=z>|yuW$A>ur=wet&s~^n`WF|BN5q z@0-?r?1p-DrCq;QMb>}MSDbrum1-RR{QC59w@-eW*Q`*rl6O(7cAhpW?)~}0^@@3y zVcU1*H$qbzHZGHXJk_pe-TP;MgR@WHUbQV_PQsVTwvM{eL8@y#RfG*^dS%2%8r;h< z-1FUVmGkf2N#0t9D*HP()VJjt%_t(X3bZ-`sq==;xhXNCQ{ zCBHwa>^Wb_bnAeW&)W}i>B@f?wtl@NLEU&zdDo!WH{3&%FQf!QP9hK6@j0 zx*M%O{yWaS_oLhj#XCoDZT@zF{e9wY$M`b#-ORrp-p$e9G5c$3?Lzz0DKiWB?_KX} zWXv&|&GUT|`weD;3HNOs)$ZB9Z9MpfX*bJZ*2sdx8V8%}47^_`^|Veu%9q6cBVteN z9$7oV-4FiUSAW)FxgkDAPp{qosMALknF%5%+1Nk&E$5S&v~K#kcKs#Kf{ITZ-#uIM z!&2MJb{zXQ@o(&JS#M}}zAfL-X+B^2o6T?f4^-ZosPU{kub}n*ZpRxR_deEP?umbH zd~oZHuPVZ^{yXQTnf0WG8!Uevc|Ge{(cTwT6Mx3)?~Y4b^*Z#r+OnNyySEw1F20ki zb8YM0t<9n3d!ODqn|1V$@-z80ef8Vx&Aq?ue_h|N`qTcy^UW#$6aNcdYkFV3VRne; z)Ej4OzBg|T3}1DAQ`xKdE2TQIwUKwvReiY2Z`Sa>Zi8c^JCpy$hmF&j^*3iWhBK|- zz|M4>`ToY2zm)!Rep|86E&g!Pm)>7)X8!lr<)?pc&OB)H?fCzFMEB;{VqDnYbt3PDOrV|LNsVm40qw>RPlzG_*4`OViV9)g_nA zbzA<~?_!Tnj?TZGay#vI;_cku7q;CmJ5hF|>`vLKvTJ20#kP5uEx()2e=Gae>l?3c zO5dD)Gy3N3Th=#r-!Oht`-Zt-TK^{h4gTBwx1Znk{D%0g={Kg|4!>Fa_VpX-x6yCc z-!6Yxb3fZY;rw>_t>QQQZ+E|$F8d%rCa?WfN9mO!70V!5UzxMAYh~Zc$jaW8*(>u` zhFSKoOtMU5-^#w3eU^Pc`&|2$_KEgAm&ulSEjwH0wv4sR?*HF&{=R>7^Oxg1!Fh%A za?YEa*Ezp<9_zfL^HS$cofmW7>b%?eu=B6y#m@U~TW!m3^K;(fc}(Xs{U<)(B)+HX z`rFXG8}CKkQ^{Yoy>t7{?OV6c-M)DH?CsOH&o5t4KBK(H{IvB|>&w>1t?%zXvHQyI zL%-*g_m=N1pIkn>yuEz;cjx!&_nPk=zL$K@>AmE8*7u_GA8h_@v#&w_ocJfz-j)Z&(}Ytf6o3H z{qy!O>mR#+82_pL!~Dnj&*DGAe6x|amP_usZDF@p%2uX0p1=Ob=#HH0 zM(&TxIl|on-^kZK>o8Tz5wSfL^zwzu9`$P8qcKYi6@o(Md$h9m>3pJzW-4pV^kk0g3 zfHhG_ss6Xw^i#)#!<2m%PJ8r1%6P)_`8GTcQXl1()CfF0@Ivw!$I<*1M>5V!yzR-D ze`M>Ge(Q?WI&!C%UfQ+C-iJ%#d8AvSP2n~BRpL_S^>O-IS7XI=?}%KT@}bQ&m@RDc z7R%jxmhqhBvgQcZsqN@~b^6q7{{xbx!DOasozZm~NU&ZFF z2|1xM$Km>1-#@-BOc-@5&Nv1*h0D)q;^)S}+ruP`d^NIe$fu&wdcmPOxm_pJ0@ z+%Bt|TzPMT+4R{Tk}6M5&s2<&Tl&0rpWyxpKLT2xn^^~D8~3Vvd#7iFe15w)EGt6l zv!H+O?9WFxY*9$8?ru?wc%yV%$@p;GBaZ7)Z&FRa7B(z(XIp2K*0QuU$NTJio$!;r zUZ|&?@@D>izSuZ?j^Nin&xBWo z)o;4AX_>_HzU7lT1M~B*-SG(DsoV7|ctx@9-dAansXgfxy^;TWjxM_;9JirjVY*In z)izi6=`U8~Xqu<|d;Y1&Y`xPxHyPjSQYkBM&O8<0v1oySeEy53g2hY2Z%&&Qyr^o+ zqKcVO7Vhq|CH>ihJ2!?+vfWU8WU{_-s?*!<;uU-Ne)3$JwPVVu%RIUv8vFwB;rnF1 zZV8#^@MrRs^HT%6jn11c$*Oq&=2YcjKGnyS4;Nlpmawtq+_ayj`m4CJ<$ZGBZ9MU3 z5^H*NP28MR-nXG{<^0p9g=~*#GK^2s-p=@q>*M;V?we~5GwWQolvhY_70P zU$py*)HK0+r?WYyb1rv{7Ukuxj(>E&!#!L;eA2U?8HYcp9h-XoGv8{HA9bnc#T(OWQpTHjq880e$P|e%J2fliBS-$p-(IP?F2>s< zm*~5Mi(UR7CqI`t$A0RclSNZyPG9AX|EaZb_Pop-r?>ByZJyV6&iwNHV{WI{mg)2@ zoYlU9wQ9M;B^|NL+PD0T7NntJ8R}&Hxcc3o6cPMDEg>V-zzz0-~7sBn>J0FF5dI?LE8$m z$mD3g``6cQ*tI20W#3}&J-SkNXYH*&w5d)cuzq#0r_od!mmirWe4NKuoD2D>bpQHO zjW_CdTxwtYXYAFV^~w1C;&al0n^dbbw|J;3M&&)SURo~k=jFrBsc(Mh9Y0cD6W zpu8+P^Z0hzHwV73YcvQ)yq8(Vx8-`Z^xLmxDOQ&smX$H@X0+N^wnnyOne2VNHOjkX zcU{_-Uw*CmYn$8}{@2{)8+YHdy)gam>36z!|H>X~JIG)*skf>6ri2-zQKZ>yuEQDX z6(-TguN{;qYy8WQoXKCI^p^3yfAxXcN54I?EeMcN;%j|>bmAiq3-vxRcjt)~VKUs$ zkA8equ|vU6aQOk(!afUmy-w~UtOA1Ko!t^0r;j}C>8uwEH}b5Bi#aY*xc7(R=T7;~ z`x}lWHU5yz?q98x9INVCwBcWntmZ`CNkL25ayqVfWSwjC%w4)IXU~<;SEtlGYM0pM zEHZJBIN&i96!b6)melE0afx$%p-nd_;^pKkoUwEEKOoLOJYU*^AItX@{D zGCNN`d4Ip{q3`opvrJmBzX5KDRpax@CXa z-0K(CeXhDyS~s(7uK9&^pWSYi{*!)dmA@?ZdHscTpQZoZ{imG6{?@Smq5c=~P5OTm z>u1O=`}=JD6~R{-Wi9(n&-bmIeD(KD&(d91b8DBM3rXK(yhZx2?OV6`%kRGEt}%}i zxO)BSb=Lj6obRfxcvbz%-N|&Hy6%zBwwVh#?@tz6_qh6!Q}ExyznlwA?@t!XdsuzR zDY|y^zQ`S+|99{6%{cyjd27i&d)+PO^~Dc!f1PbDUT}H6?v(}c(JMUnZxis}zfE9K zeDn(E{c+Ph_U{bnuPa_C`1jc%-Y>Jcb1%;8l}+padCxg@_vzdh;{FY#j;9Rj?tUo$ zGMh`m#5Jq2<*&$w`G2f^f2y}Q*{i%!um9$Fpzf1856he74S%29U#yd0|5JU#p&)@5 zk*+Ia@>YK;XFqjqb9m(8ZY&SzQqJeE!|dH90#|J%7urWKo*wVXV~6b57&vmZe|LWYo&AKB_%t zxR~{G#pz3*y@E5N-Bx!8FwLx37wPoJd!p+@Z$Uw+=`S2{q^Lo zv)T{Oa6OMH4Y@dT!yo(A_qCqA-KX{E(EG!Wa}A$An|6O)|NfPKD*o@7dPV=MR`;n$ zPqpd!Cne6zOuAUY89%GP?~H+Ml%2lw{(XPKzq~(tVz$^x({&k@4wvgECOXdM2T zWoc#A&E)-lvmTz2?-#x-w72x%)j!=E+x|?e`!wsisom=Dt@oeQ?x>1gay9VerTagh z@Sj>EzI0MdZp6{`ukwvl+P6z+KY4GGbn_TKe+GuFu%8If5_p7-uqP!{m?(H&#ruMU+VMx)V+p_PoA0d zGy2fy9a~ho`bxCFzDZm1^Yt$=JHOA)?!AAOv>RV zKW*)if3cg+MJY#Z`m)qWbKSp}7JbkDzKUOa-Dir-_sxb6&wP-)bbQgNN3N^ac!yaP z|1}QZ+Ywh4*Yt4mq2oUdb3*@%{&kL>@aI$g@;cT3+k4vn6+d>d?EAO1EJkX5&QIRz z%GFnk*6oy!);jjTZM$Bv{e=8u?D>cOZ~h;!y88sT%73?we`oKn{J$+A#)vumZ1!&N zr-JAAtvLE|zpndz?ZppkFYcXw$#zDc{pRkyKTq|o4tlor*zx~oe=Fac^)mNz{rtb$ zJIjAt8sErD4c}~0x27cS`F}6XXYS$m?oa=7=(pB7^^4g7YcgHlEMC7f{#m7e?B4$U z1?}11C-2TkZST8(w{-FDu9o>1_usEr`uqKx`O}V``sRPSe{IVDFW+zOfAR0#`_=Uq zS1f(>@ALbdzqOq2=hr{3oqGSqeiirdNB5KesQWKckVg&fAzo4uNP~4H=n=% znq|(LzNuR>BWJHWx}RhJ+ImgthyO$Vdqpq(7ka}{=k5Kg=`Ys*t$7x{Hv4_(pO9y> z&hLA=Kdt@$)*t`UPhabJ|DXAHy=v*<_kY8F*Z*I6e!2F~>p!P|5lufmdkcT=gK0+J zA6lkE5Zb#=&P##)`8d^UEQ?$qy3(!cpP$URt`|HJE$ibJfA(*HM%Djo+_oNIl!mLzR* zWcDe`=s3yPYhZcN*_2J((OjD6&GFisYqmHg>o?~Feem?n2kyDVgq(W=Q{ zo_J}Y=`w{oJu9W|DVDcH?2rvEebJ`L_wGOlvys8o7Hh+!&hb857sxMT*&!Xw@hf>1 zZ?fUlM#&jMiDt`GDkPpg$dEfYg{MDh6}RP#pai*PRU0HG^LRJ>-*(e@gV679I?EK+ z914;D*Q6&3+tm4g2TE%N^xb&c&Pv!>cVCM?)VA~%Y z!L~QLJ=^>ZOq=u#j~){AG1EBqq=`dKTv(#2>RF24ii1r$9C2a2q0JRy#~)2te=y5I zSS(5L!$zw$d`U*$ZLcGQud#$&>)P6+u)Fmx)73f4=PX~a^7Ew6LNV|6yxGHZ_R8`r z%L6_!^&P#iasI!q<0_N(sb1Rd^DE5bzS*VibHBXZ@Zxso-~1k%>sz`_a@BozdtNTP zRKk;a%X!wfNy}=NWZGv&srqIwdC9OO`O-q>WeRuNR<3zxy->WPS#L&`L%EOXMX%}^ z*982p1#nj-u5vS*$gtP2^?{zx)`k4btWs1vQ&c@uR7+2KO*-inbi(V^!d{y$p$BGx z^K+D@t~uy>?SX3cg$rW;nif~{1v6L3P3Bvz$p2H^fc2u?wMEzBkBD%;z7TflM3~g1 zwMQ1O&2d`!mp54VMo-ygj(?3S4Rel%u*WrDpZI**6dw?}(y~wdfz_tvY9Gv&y*{yO z)&c7o>y&Q?J+SrheOT*r{V@BCSqIx^tZTQOk*9Dv_`&=cvnKt$`5@WnY@+-!>6g;% zQ3ujzL>+iOBkF+ojHnscDkUy|O;NHi}^>hgr=-*VM|`z2hBEZxz$=8j+3yaQRAW(ge5 z+8EVw=TUM*ZkV)F%6CJZiKODM9?f_*gYB&hzlGd^PcQpko|s=S zr@`KWOSW}_pYhJspV^=DU+8^STt4UE_eXQQoU;AgwAb~E-DX(Zd;ZL_6^qkW{C>9L zq1cMuVJjA1v$$;asODAMW;N#Lp7C>d%OC4VbYHWdz2~vA1#{7bPvVQ8+H-n8)ZFqv zJ%RO)Wcq>4DZjHXZrhof@6vs*W!fIeZ3|TQH-6hCtXpFK_uAvQFM08cj*2+5)Xo$x zjp5xI)m*q&b@89*jnNm(V~gV4@>LEv{Hu}cTgd-Q_F&9rKBc`)Uu-UMCA^CJw@*V( z^yTl$gHKw$Do#F`8Rc;QzIMZsccI^zSFm4kR#^S>m0-at_p6UB7XOs=TR3qC6VprC zU0<3qXGYF!R!}$2eq(XNQbW5~<&Eqd%RHec{BnjS++1w;=bN&1weic&KiULd7hmd@ z(kFd#R-c5GM)y|9xt4m9ze<1>#{U8@jCTVsjOXi-?p1X^&VOF!bl0YL($iHPzHKNx z%v%1fY*!wUS>5sE$X1u9{@0T`&jtyt zSmJYh6W87Y^+L7oEBW8Pj7mv)`q){re97UqGiMBMZkSnM{qWqu=Hq@1<(&3PHVzdP zCuU4Mys+VeN#ex~6CWErG;(KC-q51i@^0c|w>0Ca24dVsk-CST7(Qn2Pt0ub<&5r; zwMtRRcAhcs==rxUH?oDkwR}~Vaj{@pbl=Z!e?8BaT+1)AKYEU-PFUMuxw_#Q?{q$U zzx$zVR*JQ&d2flhTPHS5*eA-F#BujZpZts4O##0WB7~G``}-};V_W=oO=H)+?w&4b zxp=#p#D(pz9z;d*+lJUnuq^)YE{U;fvFMI->zw;H%kDkXzCr#|;a^Ku*Me5hGiRB0 z1gUH^xz@8a?d2No*GGSCR?Oi!op$-A%(e#IMC}dsdeUKX=ROrr3>dx3h1xPdK0WjrG{fb8cz(rYt!$=j_>B6p-W7kYm#KXUo-jq*KOzb854iMnpw$h{NCeJ>b@Fd`=l@D z%g>znyDa@n`wQteGxzTdJa2zUM?U$P_Su^KGoR0{^t4`nX3vQ;>leJMk$Ct)<-+pF z4ErzL{0oj~76zQIJXFaf^h4hwK_{%J=c1w8aS7Sv8~WB!F`F*x8-IMyn6`8p^RlN? zr|j5h%kQz{QC;Kfx6|(|DlA>uYZf5h{~=$2uhH;c*|Ex^&zGjLOi1mQVR2li7w*1B z@w$W06k);Hr`t+YK4-PP5i;OkB>Ji4vvbH1vu9_rIt4Ssf5a7Vt~|8&k91FKc&qQB z`z>b=i6yT7P@XvZ1ApS~53@e(`p~w)xgz+6<{s5ILifb{xbJhOx4duNe8_U4hlPHO zNLQ=&q5eN}xdVlsceOs!TsccbJ9PRZ8PC4C>)K;B$MWxfw&UN+Tivyip84XP7vv^; zT-@YQxTzzsDBb0rdfV!n@+Xx%I*(rM<0-UUcVEeMs?yQPO0JWXj!sZ=?N>V5tK{0F zbhJz9?&=PU$KRCY4yYV*^ih&Ir1Hq-jQf+oMIM2RJU%Y;__&bc_(Fk?B5Hzu$wCi# z)FwW1V@o&ev}o@Z&`%J0D5NIXHIqkav*DNLXAa7A5%F{rs-irkJ|s9Gj*1=|sSi z839LbJXJd~Tk_QWB&UgYPvyD3Ibo%gwxC|{W%Ul1YqP())y%Q&`@!;C_|fDyo=2|c zm@4%vx^~IAc1eSgglm_O>lQ8Xs%0UHQ|mu3JW$Wvw|}GZh3{UThvXP-nQEs`Y57(n zcUqrAe8ThhA2`0e4HDXWQu#u;kLMS=euw)esu!benQq;TNyx}dr|*hnbH*k~()g zH%aE`zp1adlt0xj6||nQf0y82>!n*--L5zlZ*DcU33Ieve^BgOvX6d(PyGk+EuWdT zer9^+^H=6Q7t0>)AD_gxY@T*2vfDD4|8Z?=!*@~l^(*IYnp8Pa#rad{{)5(&S8qLV zBgJOF<(C6DGI)I2A}iK!V=DS6m!n?w;&4EN-B+&Q3)0sd*I%3SHR10Kfmw}m92t5s zj~|(+Cj}HMygH`8DceH*NyXW-{hzY4442MXKIOAe`jz#)HKu37tIouqS~)FB>iJdg z4lP;kh(6UzqF*n4Zdw|%HArvUl+|&kjz-?{SY(zpMQ(NEsiV`2wsvSs)-(0SJMv^& zL_c9!C9Jh_ZQQmKNBp+tq^*sx^jxQ{ep<80cIUo1TFX!JK6NWf-r0F4Bv0+W!hMbH z6QWO=pIrNN_EWP@Yo+YnKL+_I?>qbRz+sX6PbZejUb$5M`u$7!SO2frU$no<|0@1P z``7hflYecmTKF&jZ%>`y{ssRR#9vf)RMcR9>ll7P_zOGp!K{Nj5^T1!E1z?EXW?@p z?o!;fxQlUD|1J9)`@8*H+qY%kwtbto&HZ=8?~vaxy_Ljx{ zcKj_U?q~Uc;|R+iM%w_}0A+#o{uk7<%`>lOYyK+v>$tYDZ1J^-`D^VLm0rucT)gF7 zl>gg#35OFFCnT?3UpBq0e1qo)E8XCF)f*-id;d9Yi2T6z_Fls02fYWw4$f}QZLa4i zm`WB38-3rttH zv@>&7O|uK#9l6_a_4@Ny27`f#qw9o+SO&d?c#Sk?>4?+bi=B`dqeDo+6~DY zHrK^(i2lI$_F97e+S(8666|v`KFoV?;6cLMgAWXHQwo-t8CtkWOUta^FLH+Kp70rXwgtG}wtTS`3ZOgXadiU1vTkf~iZzaB6Q5K_p z#Vz^YRzgTZ@04-XE35V<30rcb~#B)fbvy zWGlXjJi4dUSHt#k^2-}4a&J#eesVG-TTSk1cCOKu20w$gbJcsdw3_SazHzFX^>5kI zC%IZTJynJ7iT>QcZ~F56?-g-obLYFh_1!Y3Sbpo#_im!6^`H4Jwq=;Y_TSEA0@IGD z?0R**qfc0_h#Z@Hp)E^w>W^~_Rnc#+GOQE1b(-$$D1p9y?5IrZ=YyK zA!B#N?+5nFP1s$Sc{*0`{c*bl%OeYqO;+@c_I|r=VOjCYyH~HgE57n>{z}~`i|@?c z?r=v|t-aj1h^^N71HFf{6!+Sg&WzlE0~q)d*yE>Hhs{xB%>8{0*p zti<;PzSp-auYI`RqWh;?!k_JFFKm`Rv3cR2u4R}%dpAGRyw}&*Uow9^ShdW~M}FOX zX`YwLUlf0N)N0&!)V^zLP{!9&+bqj;u6WCS35(-(7tFc0zKm|KU$Fn*y8O%AUqol} zpWDQp_(tx+y2irm%YM9?+WA^E{%}#fx$gJxy-)w;<^G(VvQ%t}%4xxWxwqxEb-bT& z;`(X-&+i)ziar`ksI912-^{M^pZ)E+r~3Ktt_Z!GRS%|qPg>Z!PqK1Z zK~w$V)`Gw{df!BTclV9SMQ?6aUg<5&8 z;aM7-UfNInp6V@~Z{&C~>|Q{bw!D_S=6o&t8~e7--5&ex&ZC)cXFfjp@yvIdXO*Wu zuX$d1KHj!+p15uO_dU;UKE3(&=Hs7tJ}-TrdtbCiB8w%Dql7DkC5~I9LFKTc4uknZE$NnSx1^>sbeZ*p`Xt%J|>3Yj< zpS^)i+%5D?wPxanSf@ZI3lkL+!z~6|RK9G#aNk+J-H!Wd`@VH=SJYO& zJ-2oD)w(6$_PEq1eLZrk^Q+Khq4(Z%rdcQ#<~^EpRCrjx3p^RC~qE_#1TcKYv# zcatj*?rGV>R=NF2>ABZ4%fs(|*wg-5?sRue_+OsgAIdfc#jM>?S@`;q+0pG{%f-v} z>-POv`iS{xdzZh6`=NUUNfy>MsxqB_Bn;OmvaD_iUJ@wqUf{h`?>BMvj>|_ZS6pm; z^ts4mpWi#}^i!Xo@P5jxTwmiBDB`}-En7R+b1`$^;_uV5zVzg_zg_ZHDC>*jl@~FW zUI?APJa7L5x9e4LpZ*-)%xwB=UHW?U``b@#7k`}Yu3%S?yuf=wc!K+bDeo@dekED8 z%`QIPRqCyPjQAW;{*MQLJo%ya@%s^fL(^YAf7V4!VBp-yxv-^=)7Gc=-fRQy#NtEm zT9`TG)#mu_5NNuvBA_fIFe5Z0J0t&v!wc>!8du6Dx>aA97hWBhl#_J!$dV&$os+#x zfB8IeU*`5&g?A12$<>p}muwJGJvui?-t?BN=`D3tDv0}$0M;77q=a)*LW8&CveZU ziujMukFp*OKP14{s@|f$*scD7RBw&&P05>rH|2g-Kbd->?S%Kl(uv~A+REBW{;t#9 z=Jn`w>hzuIwGo;rTxnsXaLN9X_9fd(YDL9MN|!_~DOAzDq%cWlrLBWe z-*sp!wfncdZhPJ0EdE*FuDI~$(NyvIyM8=5dR$*`&yO2NS;hZX6y7^Jr@L6+uBh+@@0zS*@|e_m{L+1Z))O4)%)(38hw6pU^27cz2Z&(Ps*w9p8KY1)8Uh^{mgXsL{zN%@cYnvuK%$Wn>K9t z;F9S0aC_^2Et{|(z7Marx^wZ1*G0~V{}K6cdFyZP``R_jKTJI|o$I>TGqGnP=X7hf z6!<+n+`5@-xoDbrny8V$+Zq*fg;s24(UCutqTE0ql&{Q9TjKtkI4K!U%xZvR>#j$kG&J`cU8tOsh()xQ>k_-=E?uopEfEv@ot_cEZBbP zs=R65BmGiVWzV#piES|*Q(X3Ua25$((q-W4b3C~3bG&{^SiinJY3z~N^)pJP$9L*$!+Oq_?@!!s z_-Q{O&Uv5gGYhfvdQWaA@4KzQ`t*IJcqacRje7o9*AG8!G<$v0{nw=bb`}l%Z|{FM z`}94bue2t7LcN4SgPE+uUhNEh#w*nguS>a~Wi&JH+4srrSw=VGy65=@?t9scCLFI6 zdeM61x7ab6-(n8CH}xKnc|N@__tw9bo%}0#KUwTA*}^XSd^zviu;XT50#DSpTfT~^ zXE~5}T;}O2eOEia;y0W7p5F{?`<2-I=7#v+?B+MR3{4q}58j@T-}%#G$;lJX69W9ouB6(W(vbU|<}Q2Wu}$Cn zE}L`nf3Wjx+TZ?@r}>S>{2%T-o9Y{W8hd1HFWYjl;!3E^wXOC1UkserCOy&r#Gg5_ zK+f{QdzA%$RTJ3fYW!xI^PY1>^m6gyIr*Hi6WwK17Mu|(cxO=IH!(7xy`7EWhCLW%u@^zAB!D`o#!cJ5rGmRiol+j>(nUt~AO z6!-GK$yz+;!#x>gAC*0Q*@n;N@)jjVZ{02VzUJY|ks0&x@D-J?(|N zTy2cfDf^994m`gexyObMiE1r+c*^VyA5&EARz;jAt z&=&W_S2LFP)1r9KgQf@M~f>+qINY1?IBI9=6l?Bubkz%SDN`d4SIIKhxn-_DS5(-DKd;gIWh|Jm*T0$r_7 z9=3b>@J7fS?aGS1HZohfzJA*9zj8;|s*LBAFXBI4NDH}AF84}-|M>bxHs_tCPd>ix z8hzF|`iyj+&8;lCUyE$6%>1SHETgz`4}XSu<%;<>c6wiyzNmU&J*WSbeXqbfo?Gj> z3U9Y==M4&6A0gXy(Jmw=y~}h-)``XXx^9)C=I(OWza?#1_~;tLtgcGwW|KAHJ>PIr2>S-bNBrea9V!8K7GxToe!&?O+K9YZ1Z8?2fMW9%jYp~zhJ&^TeH1`)s}X? z0%_aeGxIMz-#y{a%EfYDY6|^du$DXJ@8JG5#V)gkpQoWZQQ^b)+j6Zt4fy|Y)HkJW z5SrKiJi+wIp?F39xCZe=UE9<@Mr)SeXQ~(d$2R-L%%8d&Wd9wUKearrQAdKwIdO?G zPw+#114g&qaSbO8PStW0CG4!0^eK`rt7ko&*j2sjcmKP}B>nI4i99~y`E8~fc;%W7 z8l2nP^0nxF$@xd;9d@(q>7U8le;`=rK*{s+bH?Yq&&khmJ@@%T`FY_FYS~Y@cD^fq zxo*L){I6R+yYIMPd9d>4(>BWu403J96ZZY&e#ZUsX6AzBV*h#0AFxz(kKhz;eR|0F z5Z4Sf8|^_9tS;z$x@r3j&8Pkq-*@`I(f1SCpV05oc}Z%evQ3_cgA7N1^6k?vHDjZM#*MU^VUQn`WK=+}#`Z z)LO|t7Qd@-{pkPg{C5PTY##kz{KlJMvBsugQKJ4#3s%~3*06g&Ss1ii{KBqX{xmQbd|%U zKdV=zJ2`y&{ZBs8X!5*St6qh_|FJjx{na1y!sqdqRK-c&)^xt^rQ~43EYld2%Nuz zy#J?_42kd5SI$T;lovV?sLM3t{5jV}2ONc1Crn+&{!NOF?`Xr@YZLnpf0Ew(>C>&o zGpBu*JAGg{P!y4p;HHvl&3r9KTR0)%+{wx6ve9#99h;jwZ&7Yb@>j|F18cnTkZqq>bK1D$Cwq30xq)}{d`@qM<7I3(Q|6o5~0jZA=cOPx3 zdTjgd#tV(*hx0aTrA-bLQsxoRKK{XO>B|t4oyY$e|NQCu^GUgLSaMjH$5yEYjFLTU zlbd_D9=jzIC)n3ecPzi5uG;Kz`LCDC3CsIs>}xk%ymhqEVCCrIcS}FsV&9Om;2YnZfKxgbz8Qwz(%2Cxz18vd_Bd%?^NGi+Zqzg1@mX_5 z@2!b-XL-VG$Fh(2!q`<6ZYr=R7I7I#Jh6~??>KYi%)BYHW<_Rf*W%n{J+=4QQWN|3 zMcRvhc%75#sI|+Q$aHDm^9^dki=R{|nqF(0ZtFNvLPMont&e}=)(I!7ic=)zZe$;M zy@;pgN8?_xT^2F{oZ>P4=kmMG?XTN8@q<(H;hCp)S(4&yU>Ly>CiOUcTddS(qlxjEF|%@_Cr#S1 zsP@8pzey64FYCovklR~6b%VqX@_)ZaN_?p4Oi3Nu|_@thDrR7}1_Z7Q7&-!7lrxqTyj?eo>`pKq(mRv*ee!@ zyGmbjkn-79%Jeq(F7MF<2^l^9O}zcG?_|ZK#N+!IPqOWhTPwPnclDgBfmbH2e zJ8V{)W#@<8<1kE2IjNfnRr;v8cbm5$O+;+d#+3Ak>r9N_Wxf$EHK`x zy#4#NQ;EUPo&GH-{KFw}cT3Knr$7H+v0Jx>C-v{zcl@{6cyC^*J@n_C&x3>0+t$^r zcW^yDt6sM3)5+&1ZzJDcT9xR$;BU8OynWOMpMTT%g@pN2wrNYxvgJ$8%F#}c+$y?r z70-O;;>aYG8`Tn=SxQnH8x2;*2!eKxIltBn6yW;5Phu?s9}*MHLwId|Jbbxqd8 z>y2B}CNoG#^S{{?xzoYwXzi(8$2MQM?s7i%T-Fw$;`W(ZER|16ZY*Lxsj+;ouK3jO zbF=p^DD(aLYU`f2)@xsXzn?vK|6fMAzpuP+I20vsd-U^hBENs%*;*4_o z|9`!$dwVm`Y&kP$Bj2_;-!in{ZL0Ep+w}8uW%S}{|DT3OEtlWdDqr*8wx<7{yZDv% zO8L_ZM8AaJ)=*V#0u@R#^n(a%})$InmzUT_jC>S z4?*9n#)@|&b7G{WKC=EP=a{u%Ld(fxti}m??Y)&kpZ9H(>wCTAZEeu)+njxuua!5s z`X5sIcKZ80`P!h>O`HAt>i+L__dgUFCHnVSQ9<94C6;2ZFE(Vc3at^8;IoVr(EaRp zaYanVp=(oabQ}NJsmQYSMud>@yvN&(ssr3Uzmz?@Jdo|U+5CI1ac>SqNH_Uz&-qaM zCadVcQmL7~33lfOMTmA~q==bm-}Z+ zef*jyx~O)FzHtb9hw9ab8+j7AE~cGX#NnW}xlvE+*$L}Xi)-gS?p*z&op$2B+RI&A zUR_fyi#+mdMcKYs#I0-v-w|GFo)BdS>@7&8w-S0Ut2X! z`62dk?c41JVq(1~zDDnyvm|HJ5~(-MKhxfD-dLXbTCXf?{jNCkbC>d0se8j*{9&Q=#ZTu;U}ALF^FsmL zRm(n}5X`c9SravJ&gHL$A)DDYHt#%mD5uQK{BG=1p$+=al9CNIzT2=a`+PZR`L6k& z&M;41SGn=?ozFJb2l%#&u0Etv!)c24BJ)r zwWlikpPy5k_CoZgh)2V-G*6{1)MV{K2b6 zOVRPlffIMVzr6eSHd$22_vYGN+vJ>Sc$zQ66c!`Efgum62GSADsh{5M&XeFs!3 zrKiRJ2@ksT`|YM{I@Rl{e)pUVJ}o@?`|q0hZ>xWW9=e|VK`Q^KP3wkdvsWK;6i#O1 zN!DWNaa?g!?r03BRO*9=uGc)iu1ic{k&ryuJNM*quFj~}r(LYKCY*R&k=Z}l)z`Se zs`!_O|kK7;LWkOl9#G%*L^I3Lc%pL4Ve{W|6)R`5FN zx?5L&t0*>{ex;=I=L*g0_AqYmd&{%8aIU{7Ve{Q0U=7=ih=Wlpj~ugPDoJAs7Kr*`@;2h4F&CmRs~5W z_p1_5RK=vkoZXt+wrwY)@K)nn{zu>U%hx^Gc-?PK#oL3^*^1K3GqrWa-oCQ`xAO1t z=hip%N){}8=8$A`RrB1#71LBCg;n~s z@4ZX>6IU)2W;A1>Ua)EL&X=EZ#e!tj4|@I({MGTZ!}jFdCm-j&?{-(-u>Uewg;N*1 zfbh<#4gD)r>cd2C?JD^Etn~-u(tXmu>nd(ts=S{Z@9ekxTko|sv8}Eb?v^WG{`p|q z^m|pWm+G=#T(j#)%G>x`{?2Y0_J2Rj{l>p)iQD1ak5xUn?9Wzytcb1nutMr^q+qjz zc6TXT`}LNG5*<^m^%It_ZM=2m%>9+|n>?KFAM0E0bvl7{kKeUBeTPGC2e4GCO*{R# zs_^lQy$SmI3G)tiGc#Y<-)wp5&)Lisrs>7$?DuD!Uiy0CzN0gab!+xA-(Y{eOzmg_ z7yHj!KYF5Wcl}U3INjOs*b$R{~re@_a7ke{F7FcRJ2o+W%?8hHY-2 zSTa@9f_3x*Hu9>dB)v)PH#zX9QB42-w%nhe-rnAl`#G#3y8d@iv|;(v)3@~Z|5@~R z)7I-Cn`YXXX^lDr0)KF=*-`~zwe!lE~f6nIf(+f&&?$i!Hr)$mSZflx< zFZhSx!LK?$<1R>?GG{#ax@qcxQ0@HW?1PIm^4D%s%JQ7_;Ny?C9~Bf2CNIiq&R0m9 zyYKQp;fJ$UuwAd-=zhoD#{JQ~?)(p2yK~xe>bD!t$S>0Dzx^gLfOAu6oTo?IMCrpJ zKX&DxWu6gj^|tzt_FJ`(eFyDYLaUvBZ_DR>BlS!}|Cwk{Xil?y<23nw&4E`oAQjB-Kw84Ed6ts zkKU=YVVC<7d^v#ku+auKhiNv7CqBxoc(~K4&sCt{4BtOdMx_ZS*bKtW(_T(cdb4(e z{k?BC9rC)0>Sr47{G7di(<9zq=QF0ct=nEP{K>KY({tyzWyGPm>DyXfCL9XrSfBV& zcY}h%i3=013Mn44>ije3vB1mcZO3wM7UqUaTz7qD=ivK1o1ra%C%pMNUzP#eqihQ~ z#fTHd5_v^$_*5!@(Zao zhnU>=t(=i!+8=sZ__6A|sgK|26olLo*SdO9`$N~Uqq9`{raoSHQuuV$hhI%kBC3Tp z>bNaxe|se=X~hi>)&7b)5#yM@k-O_ce{#etUHE=LCv%(4?d8WezG2iUVEy3t+n?o9 z(_R%uYp)Hjo}A?8E0?je(XamZnE9Se=%05xcIj91%FmJ%sf@e)po=&8Ij`Kb;5&IY zgl%`ro_hV`-m`t(Z2afW6k2}1{rZOgYQbd%(Hr<)a<96&MnYNnZHeXGGw1eA`*w5M z-Gy^^p1a#=UA+72={$LP?x38S9z#_#Tf3#(b!~N*me1DvJB7P<#?uX2XYIY7_6hv- zVcz-W@yx}i*uyt(xOs597*mx&(=o*ij^lEUf%(mK+xs3YecN6i5-aUB?ccqBGyih` z+8l9m`z7-U9yvuf7|)!%cG&RX6Bj4xyQ*DDozErC3a5%*xx1JzqI2WLh-S?jrMo{K zy8P68`uTZVd47I2@4Nl?XndS(_~pu*r*c_eRlI$3?^C{4Tut(;C7c&NKDu-N7=OK+ z_4ajft7jW8FM7DS_@Q(D{Ko#N_682s{=1uEPRHH*b!bv<^wzk)RsX*|Y&VyCVZHyR z_}8b>{jyrK_W!Wk8uI(`?%7-GePrx2Pc)}4K6bYLndFV%Z<#loHx>=8&T_90U-x%e z?Wxz5mm8%04ZC>m1;1wwoAm6wQj_z-(6p2USBcFhnAn!v?9_;qj8w@_5K#^h<~cmE zLy=d)YfevKQL~)>o|` zEE-DlCf?9^;ne&vAS6YG{rKXU1y)tFDksfVJR`FDfs@Jc9eiukuWh(!bwW{&?QuHO ziwR|-s+mvkFWO_TpCh;PgHC#0nPGL_lEYlNdRyaY}WRT=NIetTRJmRULR zNq+8uKLw(1{(b7!-?v7#>E-J1H4$qi1%ChSwe%0qzr5~l&c3ET^Y}GUdr}y+uI`#< zYnl4#n{vL+tw$f`#(aMmZ`ka&x3p9Fe)lUT*((v3y`R|@Z57?e@@+%JpS9jetkXGL zWW01{Cf$&EIdSWSy6)Sr-72bB7Pl07w#O{r`Ltg{FXGqVJ<$%k*+e;>)y7+WJpO#k z^({9y2>o05$vyAO&51{E8NSuOW%)MZb2}1YhZ*#OTfIkN9zlZL9UH`!$E_;i}gW+*MoGZ=D>aD3>lD zv$*$q*OtJTXJ;i1*tWIiCVVN&U2EoE9Tx3eY7}|=XhjXPWvD-O>jZ#(OG_w6gA1H+{L49bT-*v0n9{U!j8kSH^R^ zt0l{~W>lZtbv!aRPEoJZ{XlZ=`LyFZc(~ZE_xetsEfsYw#M(JDN~l*nAyhcd)oj<- zUz^@%vrovK^(}VoHrLr~;)fqi4bYfa&DD{58M6z|i~>=hVZsheJ);E`0NUQ0lU4aiebQyA1*Q zvyaIx$l@xj3dok+KJ&5X`yJtT?(_DzJX~uUrTO+a16Sy7M#hD+ZgW4AvYdFH+y7&q zoqn)%V#h162%) zbIk*FQ`ap?N0cHeb3UyVJR7Nz^xWgk4tDhXPnl!n> z{IQV5nwhNOFYbK?ir&pQiRe_B_!{$~Hr{aO3F^!>CWA_hrZYJ6XWWxc~o zg;QqV^;z?+xY#W6wrhr4@%m-nFD5@LTi}|X5)tZZ zu{MGi(Q5OyTcrOtKUklR^U3pHPK_9gvv=Fv!G2O8r&U% zh6i1lx4GRADKvVYxck(McWO%3F44lfgzI;OF4@g$BXmCFev0wJKM8F!6gW@%JrQ_Q zWaK4Q&6QQZY-S5dBDskz-QvE!!>CeEPSN2 z{iZDI-n>CB=2Xbx-k#=PK{E|Fizzvo^Zgqv;0uRKJ_oZY*H3?~Z4f|9tgBwz|!Z3pXFry5%J< zqm|*?T(-7SY2I63{oh}EOTN9Hz2w!j7n_RLJ}SRz7O?jC`7k@vbss^3#I zIBW1u38-AlAX0b1BToC$&9Awgw^>}u1vW68x~~6=xy#S~#>@+!H{YN9@tFFpqw_bM z-^AOe*CKT-SNRt6>Kr!? z>zTOd%$zqx8?Q07zcJiYIOPIw%cZcp-<}H>-TstQes|8k{3XYNH7suX?VBW5B=LuH zjj+W+W>>?DIYJ&yo*FYbKb>^iG(+d-BkKcvE7ad~9xJ|lBl8Z=Z>PG28~WnaE8H&x z#BZ7VX3et8yhZYjiMppx>Fiy<=e7HDzVDGXpAT{VP-OA_JX<_dd-dw@Mb3ez=U+W` zxXX0$Z1KW$`~RmeHD@?{zPjq?XK{gh%~*Q;*!SP_5E14kWk8#ugAns zwN>c9ZaMICQgW%!)~RdRR!=st@a~+>8@HW7=#E}-+k+yNB^u&VADZIT+M1 z{i~CW`u0?PDKgr)(R@S9#5t^tUjonWS$8Isr#{3lB zNkI9ds`Z3D4hOZ4XlqQ;@||YpeThSD&+CJm?M>rtZ`O!1FOg37Ea7abjaa_q(Z@9o zp^IHoOc~bQ+T+4hoV&>VU5DY2 z2HLL+2z#2Cp;Xl)tv>z4(-lm%XG05$pO~(g)h*o6V!)J8*|$XAsqyF@bq|N6)SDb< zHug*|?b2JE^lf9^x#PcC=1WWvdaBZV{*CeT#eP0~v(L63;R~9#@PLHTcNW`3c^5e}7+nH5KK-h_TS@WWweq3`|QIR~FE)yhw*RFF1&9ecp;+&{|&PHxH@ zQi52#t|@*waPQEfg{ztmg`DgPpPm%DXF|jpmZck??tgV4pVMJV1Y?2FX=fE%e(j& zvF~I*y77hO7B0;|gJ~a6oivzwvQ<_x^q8Ht@#L90`O{9eaX7E+`^sO(z+#?9CA zr>r;Jd$%U)#@s)4TZH#C#)dDG7Km1AzM`KsH^9L(>+(vSUCV3cvblKLT;DJLZbzB# z;lH}S*JjR~_xW~}yu@ps8r5kBzcl_oZD+uyUm$*$L+$s0KU$Zr8_rU9cqSDjnx=l| z_{5z}c{=ib-J4&$3|D#Fm=laI{DOHEBvf~>s{*UlDeBmc5j8C-0qHJNa+%qvsXRe?0q<9QA%` zY2(g{g;7i^|5-boelb_S{Jd^-e0+F#LB_*(lh2wfR;A{iY-~)vFZu6%w#M!)HD9h2 z{|^3bcK&Xt)vLR@`SKe>b@FbPg&W*(`S8loXZ6|{^*j>m%R*v(_Fh!FdfZ}q#H%~m zu?Nz2+aEj8z0p=v?d&eUWbWxF{jOYGy^vY;WAUTx$C5VZPyFMar?q5ur9{Nzoot;f z2KV=EDtfB@sgS8>6@TP2GQSp8TUxPRiKJddc6edcIz%&CTl1 zZ~E*k?ffaXej&HWio5_$@lDUXE<5eKcj}t^^@#`Oo@J@BtU99QJ6*Zay0zuW|Kh1T zRP&D79^ZQ>_Vu#_?F-Xo`5vgYFjt)U{x@Ey>hp_>=G}2`?&sg`Nb5;5Qn1h9p1s-H z_U|Qk`B*Ri`%`Ch+1zA@fm>|tVKThe-E5x>~rA59xa2tG6#6oR(DGL_n!L5>D*4?qOWd0!hH6wJ-6e? z<1(d-noaBz&R#m~y!?iMpTeGdEAsEfUH|?ti2IS+@vFybrOI{tv>8}8Fo;@k--(e{ z3_dgE)``>wJku5$rO%9(GHji2!{71C+YcIPjE$3G6SQZ2leGVJ`AG6&`M+Nb-|i~o zS!Pzt+-kKY_hDO=v6kGwa~r?C{k~*tqwGSSw;N`cZA^Uo&vtf4+=(MB|3xp~;%i$e z=hx^~sLsFoK$LO4hg%sVhmiU#owj{^i=L+}n!>v)$n5fUle;?>YVKcnaM^O1^oh0G zbfj5#t=fDd^0kT{a#n7?g0nt&%fUAVKH1D32T#~NFgoVB&8s?OZ|h2bzALQ!o?oYJPkuZp*1_c7`P(`B z!@~1d zU*00UxXk{?gJtdicG&0NzbtQVTKnhAzCBh~o*w2Fx3ejGc!>X&`K|kpAKlNH{O#Mr zc6r%eMWLH--I^U(0pmq_Ollw#P4R+ zZs+@-?45V*Q{Vo_|MKQuXS@9GgygHcq5X`U2mbU0u6T5ht-U8-W6`0H%sv4oP4l?k z{w;i>(%9P@?xvZW`VyJxwreIERePswD> z!Q|67E-m@@eaAD!4Q4_&L>$jsGtZv>KRY3K;cgq{NR{qDjgFw5C4~luIHKlsr4@X> zp!ANlP&DfBTG4nnGoiCCY;IyfGZeg&X1;97k~u#`LfnwspegQ@zOb1=c5Cbz?K_MQ znI9HE6n`f5nY+5TS2fT}Xo-r4==zrjtEPN${w(+9#@1)aU-vA|WZHA3W^biAm&xSI zGxOKS9-4n3%H`cM)$6{dnlUQ@NoXS2yxrE0!!3sdgBet*T@GWX`UU+U>PcjMyYH z`;YwW6uzr#dhWk#)`tr&86|)1dSA`SSX2C_W-sp*>DL~6E~HgX*l1aOXX^XqY+Nx< z7tC2Npml_6rPDftDbm_LqR+UzTZ0mHw_n}0Zs(fvw8wWQidmF?eHXqu{O!HHucWqQ zhOhq{{F^gsrv85Wx<9|Q<>h`?_kLS=ZN=Y?sg-iqZt~rjc4Zhn)f3IxKX;qtYdb;wnz^Ns_e}vj_yQ^#!Q0Gy7*B}x6`gOiC=M}>y z{W6pH51+=a-N5okF-f8H_T5F>U;a^wSblEPk-yts2gtZueNR4f`Batrv+^(Ne*VpC zw$3?mlC7K}%`L}lR@LoE<*Qa_JKCJBj+*(=aChBr%R|vV@;3I`$3F4hYgl^lK*-G3 zOPrg|Bwt^@ymyA+D(Q`P?TWi3Uj23bcDC$LsMWEZXM-;K$mhQ|GhLtHB^#5F|2py8 z?KSH6Gw-!auKE(__dl<}sApr}!;ei5eiy{NSDBovo4tgTuJj?d-#FswZUY-6Qm;DO*+j-Dy=cRzmH6|DH)f_seS28E3 z`1H)&Xu$P2DM`}&apL18329l5uTEU)x?;KVbZ~a?`lZJb-shjX%jgjFp`e^$!V^t{ z?%(ev_GMgrag~+#cHPg@AHK`$+gfGao3wHLs`cxBzj}P>Z_dGaQ>HXBU%gjXeCwC1 zDLYeRc~McD?GJ~*Nva#G?k&6faL?wLGbR5YnI*>`qX4)#Pyvg70 zZF+Xg^{;u(KVz*(w%xDx>|=l3y)eYza)bEmooiQ4JMm${;&UBeryRZ@pS@Ro>YinGFl2YM1FBA5)4$%`m*d|GI9y^jeGr~-A!UH$0*TTgPd~c4FBsnW}#(qt! z+HAWsZjTlpTk}JMG>K@HX-z>EjWZAQJwEnX^^wU35uNl?H#6_#)G{U`2Y$B(5I-fyHjLk~Jk|DI^5Qx{+Tgf04#$%LD=o2Pv` zkxv(UYjCyFm%sMyiVLf{ouA}9X0ddC*IQL=n;KdtVS9#mQuh<}3&JrgZMfGT(^=QF z+UfO0tGul>9I}t>+>X!i-(kV$$#Y)HBGSa;$H^BidTL$0Pwy;>E|Qqzwy9ds!SUF6 zwL;FCrU@!+OI>c}b4Yxi!I#5s*ndPeP=A^F>P@Y`;?~}XeWh1!K4FG(n;!ox(0D$C~^g!epZ4X}>3GpM+c0mjt#I9y9uEV!(UO>AZpQ&GZky!ai(n z>{;ly z&^-11!4;u*vTE-BasR^h+3dGixVo&F`GW5=gWquGi9O{sSNWfKfPuOB^}gTV?v&rZ zmiher-_P;S4a(Ofs!ck6HY&~cvdbCexf^B99Av~`4zaWqFn1?^r_C7`ENx}CX*_u7ly zW)I${b>8=WXf-qSX~Z>6_0zF8%04NSbr^)`Oj68*FC!Milgh>1=CNYhJ>@9Da09u9=Kd>7q?7OGCG8 z5Nj5SWSBVV?uD*5Y_^W`gKYPhC+|&u{9Z5fNnOu5C6oQfnEjrp9urY@pDhx6U`p~U zUH%EbXSaDDe%e_yHM1{s>PaoCUkMLUa z^pVeJpVLYo_G~$@;lPd)TTbjbu_Qro2BP4{Qr%>H}i*V3=kN_FDA z&+(L+uVuLOmto7Q|F4#Z+ukcr*cShKjrN_7^5^bdSY4!Wdw-_s=N);|PyS4K{xQny zfvaiQmCpw^?hxs+KB$$a za|%&BhCR_f;|vr`-h#oPKxPu8YuB*yl&l@sIf?W*R$4Q=h;%y z9l?!-jk@bqxy|%hz9$A-H7TE1!rdd%`XF4^s(rDRNxObuLaN!W*ZJ1+^$WeHr}n@7 zvo`zt(q{R(ML9nnEPbyNU;A$qpsiFvU#ch-NAZhg1Jb?U8yv!C=CMY(K0_;S;RIsJ_5 z=H_iME;y2VGqYCtax1iYy-!l+lR!sTm_r%EDNxjSAJf#xo!GXUimFc(hugZxB2IEeVx9|zf<|F z?|I_BWuN8FyUwlu@7JLTsjKzkR?pk@X607<*cjj9RSz@Y*<9v3(%7)d;b<;P*|uZ3 z>kW@Fd+%`ydOgM1H(hF~@-MH88`2GC{@KFPw|Mah{&|Y!b%$mzo)?k%faUbDM+ys2p6N1m0J`G422v}p5IS=wN?L zw|>6Kv$A$>d9dzB!-Cj0JN9FY0<%A^(U^4TF)0h{Wo_zs~&)eR@D zWfx6c%ep#NTO@g{NGyklPG)cF0StzHrrd{Y- zbA8F7cj_}0I9!;XR0&LZF*`?!BeX;L$hY^qH=KU8JYlLCcdALHbieHHKVH+f-ucJ8 za;5b7nvFiE?`-9++xAB5$-lQ(|Mn$)5UB3B>%Kbr+3LNLC*P(RKXSa#{HM?@n(e0c z*64&7x4nPay^}ZCy<@M}xW|!`6SYYBN#U-`kKW9a==3x>F~PA@GehftNK{vPmXF8I zf}Mi*#X=oJE-5v6oP8qsOD*x+wC^A1Ufy)&PKKjBze3ak){`e46<3I>JZCFjymEa` zzG!s9Df`M#kCz;IGUfcdKTAFb$6B3z^XcRi|4EZ3O}3x;%ky1u*1s+8W_Fg9m%D?P zT``ESH~aedobfI(pR{|DoCsRLdxb<)LbdfX;@l+1+f1Jxd zEDwpA7QHPxOSgVYfn&~(=4TBsba zlKqwL1;1`Cy|wuGR-p*%fZP18Z~vAjSk5VpsOI1Q@3F%UNx93P9&G&druXRz|KjqJ z6+az*9?Lmp9dSRuv3f`8#3?o{dYdwY;d?z3#u^|FzlEE}qv> z*k3AF^CV0>jr*+nYp$>rKW8p9k#jlTYPDh6gU=_IJ@3tQpKQ;e;od9%WIcyS%A@a2 zYi#wLUmdv7{v?&>qo;EZ=f=vDoM$GyVOk@hH~FyUmtXvQKg?H~eOGVhlE}9qPhWSu z`*xA{S6?dQ)e6=H3X48|N!HAeY_S#UKQJre`K9}=s)rmqr%6>s#9b);*xR)3wBO&v z$m4w10zorCLwyrzwHR<3NLvA~vhY|;R6F)YYyj(Wpi5J7)YrbFF-k(d(dYg5rS!dDL zv?;$`F74T>T5xwW|5Y!AAkOeZ{%w;lrsNsv_ch!+$Dp~x@u<3g)@HwXPo@g1`%OsB zI4L>zevy1*#+v4;=De(;>62rv=k9v%lC*pB!f(sp*$WoS)Xb>3GsAjS_4I(kSx3tC z`=(b!%RfD&8O79mby?iQ%Qas=ujcwG+7y|yB`&o-eWI7iwxz#{Uj2@*%Jq(x`1{-T zcmXR9_ch1FOG}Q+&o}Y>oqN~nt@&S5k!xrFFWa$W$&wvEX8$}Nt0iZ+=*PrI-s?rq zX|Jh!dbRh}n?rfsRsWtoJG=i&+=<#REdO5g^1j|Od$O8sW4v?TUA7aCuRreU?%qGw z{CiO0#}gBeD({=Q|G}k>N00uW`T9GqzVNeLzLV>m=f9TE|9g7zbw$6{^qJ?jm}$u^ zX_}Z-)-~ZsRjwh|E|xvwq8~~xx%!pWN`5wf?)p>ve3ywp@+U1$n;a&S*LA zlNn**H_<^)cM0Eom!iK$H_h^Q{CfPn%2S@TXNv{Twp$0^)ub1SlvmHMHoSE^rsZ46 z_DH*=bGr_=^ZCraR+{+zo_5urm%eL1E=_m0H>s1;(sD1IWwmob_0=h>p5JVj_w!is zq2gQIYcq$p+y9)jsH!_3WY)=>Ad|o}^#)t4;>6|JRZm`a$yM%h>ie)a$v|p}_M#LO z|4k`EK958l4Me?89H`T8c$;?egkmFO>KvUZlJgC;eSLqXdz9$atS(RGy|1@=_wW2Q zMRSE#hHQTApCe?M>*me>!awK1hO*e*brN}%9C?|QD}QS}Um*T?Pg2jh#i29TIyR&) zI%#ehbK!himO`bPi{Sjn7y4%3o|*J!XIS(9%RgD)$bPyc_~mHFV(0!td90Dgt6Te? ze|=eYXhu1cO#jad6*e2g``-xMUT3ghVZHPFGFAQ(jhEBnb0$BM*Lb${$HdIP8zwF* zP35h4>nU(~n)_MfiA&{0mBQyw{u2|msmgyN=Ra}7&FpK|`foVsb%~q#V8Jvk?stlo z=l_apRxjK0r&H0{`}@0@0YaD8zFl;;*!ugsfE^RH_fCJ&^E>=({I5bE{ggro5PWHs){shcwjKI^@E zesz~@_57K~N*0#si2VrB{=aWCoTs!t2--n}ih z&{?on>Ts==f$4)_PO0oOYE^RWfhDK*IDK?qA|$r|nErcW<}aJNaLuc!{O7w?YK4(Z9dP#0x?$K99Z{D+E`^on`9DS`&^TN=7wh#z+C&TZwMaWs9S zdh^8dtUV>tnb*FTP7+)r&fmV#uVk8oBcE-%qWGQAR?fle?Mc3NUh8HxED*=PTu4eSAFj~ z|L>y9C4s-D{y$oL@q2cHYt|H5i&`yXuM-%R8G#NK$jmat@q#C z{rTs^dg%3uA17{<-#bygEd96SUA411)ini$A6FPE2YboCu~jesdG29OXYM6u|8OhW z&3863SABc=yTY+2{nb_YvYtN=hY>EDU#WsHHu3dT)RDRm5+{jdU+FWa&+ZLdb8jQFZtkr~^V1F1_4U1qH%V~#|L<&k!-t(bb8p)8?DbXf z+}hbuD}LtbL`e>1i#H)sXHLyD_7%@qSjgPFtyN=-s=bN4%-JUQY5P7O61R7lX8k)_ z^Znnq*~|8SO}c9x{^F+o3h_IKzbrB2T9bG3rcvT6A=lON{|p5TL0`%?^lqTaXazZmu=3Mgny-!o%28c!b;KP zP2%FheOHCDr0th*&pWN8<1SwipLBj_uat5_w@~p!SMjCsJ4D$&X4bKMHmQ-4n8JNM z^Oa>>?Wz9AifLhr>eFS4AFj9j`n0^;F6&>@#EXkp`m@fyJYOMVAxmbKJN_C@ZqHiMQJJ%(s&m%Au=Z}(?U#bD+&H{2zwXb+ z*-u&;InRgn%>Qua@{I$V-*vb1&)@&y+{5nR_^2HVwv`=R6gA6y)0DTRx7SIppV2c( zM{?bX8)fl=E(be!cWH3l5uNAEleFI8#%)2Icj&*_Ncw8&-VhB&97TO zlshK}8Tc18*iM+tyMF&<>zaz?Z+=ex^4c)%Om!wM}wu%(p0PdK+h4c5lMM z?>hbO8O};A<6i41Ah%id@o%=S2Qp{nnl8U9-20^O_2e(F!w&w`*vU8L@0^ob+%L7# z4H>niF7{oD$&bEssZ1pI^$mS%CYe0#m3@qi^OcPc+`G81-uw5&iQmkGbLBUQ&S*HB zwCL@|me%J@x$7l=9P}(*a52khmu=qWtB?DR_gkz!{@5(?uh{;JS!Pi>b@Q)2`aWqt zcW+*|XVSe=ua8&NUb4u~N`13DcvwJehPwplZ^c+9Lzpe5Qr-XTu%<4Ic3cla7 zlpmfs^XI)mfxYwQMeo+Qg6kZ=CaSzXOZ(F z3oqAR{#(rCCS;Hyo7(tq+TJpz7hhf#r#;xfRC?kL%;PSmnGw`cv&D>M8Xy!_j|sNa_++b&;zFJg`Oipi6G8!vEw-ou)GP0RFr zmTB~vuB%Cgv)71ip7S7uY}`dh~%(>09OOg+YWO6qk{`r6MMf|XuQyf$rB zrW(WIjg5juv+h1T^-}Nb^(=d*V6klW2PdZ~Wfj@qx#{bBU842V#gJU7mC46zrubBd zpJ|i)Vzu`1GMl+V&%XLjS^j=sT+#8bp1(>@z5Zb(5aMR)bgD@=_t*9ZwYH#bg<5==nzgGSAHTnkAA|b0h>Drhg*^b|e`pk;4(?yGR z915^ncP}kv2k(KdS=$z>>oL4jSeskgSh&i6Vwsdrg>3HCv}Of|>2tTvSQL{pEyuLd z#Xx(SR%#1PX&04^Half?osWHZ?{%7)_w1)<+s+<4`|Rwrv!~KtC%)WJbEDu! z#f_R9MG=-cp>7j)eJPl0+u42VrBR#q2mixSKiFax`(EhUGU@Sg|3gZ-@AoS&{c-1} z$5C6WEi!SJ9!)d4PztDKPZ>i_*4SE+>nf8jU+Oa9=yP8W0=UU07Th3m} zJjbee79KWE#YM8OO}%sWOnzaSzecG4-HY8jmcG@vWtL|DnBQ~9TFoc=96$feR6P2g z_hWg@vij5MZkNtmd^5fm(fP{heM7|2*S%LurH@=#(Xcwv{=lx>##{dDE`DE;z2RtD z_KPyJaOZ8?vcK5AmD;pC*13!+>&3jXg+6^}90WRKk|%iVYd)}%M`YuP$#38M3688% znXzw2?w+02m&KxNCvVPY;bc>tq3yWN?R4w$^bE_Wb0t3(UMsY+;q>2B`|Tcv3I`glYLJYH@1}eSlw9i?099e@5|gbMr`MoT}hdL_{cKVFtC#&;I`3Oz!iHKUiDdc5GiQ7S?<;vrl*)=?=icg_a>CEynEgI-3~j?{eGoauWne|%hGma-9QIM&G0L*5vKtORKUJckx8C`R{qpNE7e9VJ{Mi5K{N1tQ zxh#GcTuW!KRt+}&C3(iwLRaXp)9h}2gOg7dG-=E_eX@tw_oInoc%)Au0{SC-sWrS8MAxh_wOrsD4okMo%1gzHFarRze|=$*=N29oMtN) z_AI!6;**+u!sSI;i<4i!&HQ>M>i48=ZYM>ae`Z%TG}QQ1n6yY}s-o5cbxW%?FQ*iJ zc_sPxje+d3)VOQwCh?S<300XKwzWX)o>D~9v?rblx?&Zwc zbo$AsT{UxS=KlG+=Wos4zk7w%s?>jN`*^$MtzFRSr0e`Y7M^%l@3HQ5uZou3pO@?B z&r84d?nO!by>FA&`>*D%7T4YRe&x)$$L)fQo=n~P=#S=Sv3*DVet!5fb^Vc*sx$eQ zsruF=o_S}#Gilqg z%%5J-`F77vP21*mxAsO0 z@4uKyS$=tsGbZN_e^EVCC} zl3SwF>&-}Jk^{>uNJ$BG!*}Xs0F8Hncyla|@=$7-o&vX?u zuPduW&v7s*^%T>U+?nLm&lIKT>a>9O;o5f{$FDft`PFvX_ovC1*{-KOzU zB9|q6ieoEpYMWEmu3K(r18%RHnYBV=?+V{Qx4_$r&Mdmn^o4by<*TBtVRu){1=@%1 zKV*OX$_}Q0hNWu`#3Vdas&%oG|CuAH@%Xe)>N6v6&)JiDCT&xlIr+BFxfyrLik{6e zD>izzW$t82_wJA{RU&^k9JIKxDoIr+yjFI*_C~KQGYY1PJ$A6Y(yJ@~`@lLx0H1SJJ|c^N29cyN@j|NL`ZA5JxO z)gQHSh63j!n0)p|uPWCoWWVR(%Xh1%F5bsWDDU*q=!(T>zbWK*E2>)kO7zwZn-S9S zVx{b^pS;fv<&WP`{Ig(vy~vrh{Li#Jl=BXJS+S%f-^(dY!PwALQ`u5^#g5?&iCjZAA-3KOQ+eYi7XgGF@GdJ!`_G{ZpDJwp`BitFN9lPwq*R z=fO8GmSpt3oM~$Eb?Pr$?eI4*6>NVmDf_wm{nq@2j~A`2y_NPh*1qKL$0F7@&##{| zT)pO0{5|_G+xN@Ps^w7Azr3&N?X)tPXHC)O33|uh*1x&v?zdJ$+EnUubDY1+mq*Pl z{1??WtZO~KEU@l?m(RhfO06BwzrOsw%kRtkkVBGIS-ICCIrW5i;hXYbx1v`3`_!-o|}I9Mcs17C9C*8@E`f#?3%=@Ev?FD zcao`y$JDki%HFWQF4d8vt-nD?by+Oe8$(*XTM5*UDqyYnA9Vj)5sny8eP(FR^?&(`dmqSb<(i{vq@H# ztYRrV#XR45x}@LCexY;pPw2U@0@1avoV9wMF1vZ|(+#e2)~Bnv@>|#6iJurCxWZ%2 zflb>lhR)q`ICOTQuJX);vyO#_gVh>>en<3}r#COxxECW5FS}W>(EChw=QXh>Hx<=; zY&e76xFuL#v`zZVeIvHTde23yucXs-!iFq`%&fa zXC)Wb#c5ZrOeo}hoPTfjw4$en884eHS@y4B*LC6C>)(DSu&s1BnYTar!0f+$=Tt&9 z-)=7day;9=_<^Q8@715{VxF(xz21NS_0mJ-Pp`al-@Wi$`LEwzPihSW_segV-_=Meuo@o7?R=>D{^Fd#TlbZJSsZ;(HrHoI+m_X@)J%<*gr#*xu-{L+c5k=e zvXA#lH9U2fmjB;wCHZjfGu`icQ!;06Uvz%<9rbzTSN_e&n9Y5ExuQsH!e`g?TYJpj z^+|+V=ddqpaNe+auKGs3H|et^U6%9&&t%kilpYjw`0pB(X3biLyqj~k^&|>Rj9teQ zYS3}X?|t!7As6Wb$2a)z@W1^}Lg7|t?SWj!nH_E|Q3lh(J>8_)Y6RZ}-e|kWD%QcnDU*AY>+uR+s zb^a2TjqP{E{SF%|JlFL89bp!C^8KWne1HCJz9E*M`}O9cX&aACl#9Bht^3ye-o?5} z_vC(CB%ip`vG?1ttw-|T$z=yt%=>c2F>#&KKFyvU)3)4}?l0f&RNia6ec%7L&NG>Y zMUN&HvKHR6P`i|G@vX_SGPS#QU*FFebAI1;_Z69OS?G`MLOGYpSH7nvt+2{l%UIc~ z!|W3H?0xyoH?}7Z?w8OsbA4{UWmQk!x&5<5tpX<5sP8nJ8RkBD%c2~0+p^#L!#%Uv z6VLDBmHy|w*5u9qGpj<+-^tjOzPH4?N84IR{_vdNLT`i)I?u4@)L+lo;#~c*BEx8h zww>Fx-BW5i*Ohxo7&l(aZb)4r{`CI;o%0t>lelYf>Gs_jJ?s8T?X`V&ed(0`;6s0^ zw3@^{-~DW|=i}bQ?T0t*POAMCu{g@$k?i|Jico#=|oVBz0x{-|h0>(Yj`P#$A3n{vSmV>b!ab|jzudXI`rR3o$(}}@7R3`=92(eE?zBWZC^RxK z$tf(*SR}KF#e|E)nPDf3OH675=zLUi**W4Id*mOY?EyY7!G?bdVeMUM*qG)pHA0ak3aS=J?+ZA+W5Ma z$2>2tN-Qgsa9prm=74CjU&h2$XZhCMdbv`3%c6qWt|c!j555rAd$`=p^l0|skE}x1 za)Tdt6?<~a1RkkU-|W4%wD!qFgEb*#_ai?3`n*ro`*legDlpx0C;(ZF$kr7qRb-gtheEP<$aL|K6wXmZizA^hH%}Tgz0_r`+Om z4$j#!SN@`H^Nsl@Y)`ITyRl5@{ZCGN@4LTqe!MZj4Zpc3zn*=uYvSg~uboePO}tpj>Fg4=V&6yW&ip%NQ<|+5rf@B-d=McY zE8iFNwtnp~xtsrIL~q)hlk)0dwn+2pt&u8Co>vb&jfqT|k#{Dy=fKH39_uE}KL0W6 z?6$XGfBibSeDJH35vifmltfc?`rr*46!FNyE9==j- zlX|h*;F(6~!ndNO?{-b7e0cI+(EFd8jpT0kW&Fv$va@;rw*Bm1)mf7}C)vJbWixS) zJ^6LA7uUL@$FI*6KlxSgqg3rOp}Fzv|LJ|pIIQda<@100m__G9wBmmFK5_q2t?iSx4cIF=P!k;#qai7C+BRq zqR`}T80u&AqVm(5C?A(4<_u|^+?9ugWDhv@oYq}BJ-I)(@7Q(qIZSGk__LK%)V0hO zEKvNQmoiP_+3fu$@usf}uTO|GUPxbPD4;AwZzMc5zSv)`I=d4?1iSH(V z+#wvvenvV)_Q}fkYi<7B3yJRx63UpLOsL%X^n}?PSwc|7x;VUCbBl39R3Dt37g+ed7x?f1zx~ z3K_LUvnv{uSIyqjeT#4MRwJ&y!`H;Vu9*Jdpw{C^{)arTG-uoToqYS*lkM8_*Ry4s zovsLK9Qo6&>#MX$+h^W{&l~yP!}KnrJMMrmzeVW8u_CyiyXB8n}NEB91? znf&>=`OJ?%THF0^t$paB z@R#|q$B)9&Z8zC6wmXNP<-D2~zjyP&g~pF3Ups1jI%w+`&7iOMJuVq?%y4<|mw|C| zN7>>XD+~m~n!a3mnv&KdR~qxP%r9+Oo4#S;rN8ULLl=H7yKsE!)Z4|Mw*|RBauELc zvs=FB_}3GWoSRQX&h&qF*XN>@kogi8E35ZM_BWmLNja~3MEzNY(%M{+wKwCUc!cIp zx3H4P_Ga0`yeb?%2<T`?n_qq=E&(jb6{2;gE%Yskg zPraXVKjnV3`1qcQ&pZ0%irv;t`dqSS+MM9y<)*E3x8+!!**{C{%k}CU)4LWAd`@4E zW?U~lOZ}yL>7*LwU5Ul3Tv-dXIt3lg;_}Y*?|j(#UH!)L4T}ou9JLm`@GbGYg>8q$(dYYYYmc!P zm;blOdN4nWBj?2aEW0=6k527cukinNB5!ERtu0SqES%dK_-1+a`<>tCX-qn?XZQPA z>ucgmAQ&oA0#a zJ97JY(aM0y-u((YTi$keJy}uPIN!AM#G=9@=3B0LhiyFVW+M|OzF}n@cT?%@W$Rs^ zd}hg3Ubz18)_tqK3(xJi>G927aNFK~!bS@J*!KP0+gslp zuvKwi;?XU=;@f4Lr*%D_8`t%#*R4=pXLdg9z53%irk7KWCC?4g&CE2ni~egPx0`#* zUhbE<`xmCycR#Zc){*QiPuOU-FKNm7e<$7@x&FUv{rz=u;TsE2&JoW(AJ_3L#)9o^ zm5{PS@p<>>a*s1K?s%2Ff4i!_NsI0C$I7ke*3Ap&jMyC(ptig8m_YKS%VAq?e$|;$ zx`lu4d^YZL5&Q16^xaSst(>l6@Z9Mpn+tFH^{&JP&$@TJ@TQy3JG17|+oY~N+&h-_ zKX~VMPNrv%+gDqUler)5COOvMJa7FvLVR)v`-1HUV{|#vxQ~A1nN$_muD(;pHA7QX zbm`Jw&J*&wOLv^o{C?u}KaDT!+nyDa3ak`Ad+JSVwgUHK1%>7Q?8b(CCsqVry(%Sg zV!MCsZZqxd+b2H#cd}pGyf?Y9Fvu)Y5KZUs+R?VKainEC~8 zr#5Bfe>`_)#lN-NmjC*_PyM-bd6M#GlhkWDDN^$VeUfIcie;5kE}MEw%{_S9w%k>A zQ;*n1zRGjqYc^=FRkIK46bEyMn;aYw%|wk>RZvzv3)eZ%fM{st|j z-5vc8)pv+|-QO-XeX&LLmj5i`EGM~B*bg!?WG76%b${_w-3etgSeMKVD(W{p7#38! z^LxThL(%Oe^rVHeid(O2$dG0^zqQxrwd=acR=-$gnz`Qo z{OYgrhW%}p4C32%%m3cGY{JfZw!3+aoA%uaNUXT|p;d8L+?DgmJFj?u4xXp>Px0&L z%}MjaQw>74x?js;b^F8hct<0X$8^=?tqaA1N^_V^IBX6F9(LLCbyie}U_iQ>FMd|rnWYTN&O$T-J_rQFJo=SzN^uc)#5C;#b3 z$BttXlamkD|JPf1eii$+`9EcYUejrH!)kiTJc+4-X}Sxz6ZSPvlDlhJM?$l zan<#x@%_?Smfx`XeYrQd{~o?x+SnjdR$)%=uWT9h3j3+-mnJ?$ZtlUSH^- z_CxlD?7xqlw|}|Y?O$tOtgz|r{{NqT)*Ej>$XoG`VWvI%1P87cy0cw1uc{R?pOx#} z&b7n1Vp~DJ&H>3~uXWYpBjS~>MTPhnZJ8_8AGLOo>)SAEl^Z2Ks)a$a@| z9@`0rNs77xUcC1Xn2P#bt$Y(V@q;gG z>$GWq(iZMCoLJIYUlH5At90` z#d*IbHO~&+6T6J_?Q9bRr*k_5^UY<$mS0)+T4i^;zv6-2FP%`~Khd$=bvhU>K1Ilq+XOKW#* z-SgjYdsx$zU92a?riGiU-ssql@?F>)8 z+x{twEqC8=dLZbX!pCxa#u>G_t{HkKPxD&IIw|O`7Wle-L$rahcCf3~vbQ3!OE}fU z%?e)bF4JJPuP?ZE-d=luO~L=*fL{-_jQr-GY|_uU^(E=>;v&bZd;gxAAF^&*uI}#o zqP&7S(=Chkt7i1qZja4u+^t_z{PfPv?LBjrK33IPJ)!RukHQ{i4@Adax15>JUh02%>T$3A+M~lurUgwi=2`tU`;20qGy4Ocn{lrm#LwMz zOx$bz%L^CRedm_D_4uSnLEJUhH#0K3PJa*z?K}P=>e1D2t86?cn68}hSFG;Wjo=Gk zws*eQi7BW$Gi|T6vpS!xc-`wSw)y>Ye_soE+V$yRoRvgH;>(HlOP9%=K2uTg@XyiT z&a1EGo;znA%?Z=IslWc4l zRet}npSa1U$n5e&h1BflCgI)Zj`|oxh{=e2FkGa+QaV`RgGA@A){9J08{QOKJNM}v zNIM`fSMbr^^J=nQic9Jub2r&aZCw`S9N8SEUW_e}~KW z`mXU`7t>sPlf9!~k;7?|W%d#l)nkv1D*s5%Jmeblwz|;kabY97NwQL^^CrfYJob=<%f*BJJzK&S9Go*c=-;E2O9$jRO%dnfMw`jh~ zr_Y9p8N!#>ZfYpWx|MqR!DXfsXZ)sDxV6i>?Q?v??sh9dY#`QDf1#e8*lh=Id&*V?rx8HBBkq-EzeX3vjeb2}Df%#c`W;9JyQdE*XU2LxG znxk`Zk#og!fnzG7%R+0O|Jl3xH_!iHvELR?(@Qs(-@~T6BzMX3fW@A-nNubjwMEG7 zIdf6xi)6*6icICqf1yovP4bP0g;WCBG&lYHu3srw!rnzU3ps71)g{)>t7I? z+@0jSjd$8~->N^8W_e#Z^>((K^Tv5Cx++uO3hY(#IHSS-`+ak>@#&_C=S?3S{(R-` z<9E@ICbpEh z98KE!aPRSWYlHNNB!};TO$PFrz6^2wYv=c=^v%$J9dTmuPlL>YpGN+YuP;=sddeZ< zY1C$GQq|2x9!zkiiz&a`DP+!Occ{teyR0nIvFUYyy} zdD(bQ#-j#>m>io;GNz>)12b|CeXij-{5g4kcTQ;jbBhBnc19U5TNCW9Ui`F%IoAE^ z!+VBmbLVaBI-ulqMfpIN$R?4sVj4^tV!l?wQ7w!7Op4QVxM$D4Xr1-!V!YVjjwkZF z+Wu+k=H_kNGDYk_g_<$j=QphXEdzE+G|0B?yUY8HL*xB{_vaL^J_%IYpO_YURl5KD zJhR{1{a;*~=GLq3JH7Q=qL_q|x5K98YQL?1xO>_C_Gs=;-_UpS(xppRg1kgjZm!%c zU8D4XY0ptvt_zZ;H-n7!E15oz%3LYnzF41g6-PD8z5}AnMgg*{g>Rm$@u{+Bo4FoYei<0MG?(H>=Z7GQ9THy9>!hyn*-3=>LTV5M^m1b_4;Z-s#tZ3&Fl~Wa+-gj81 zp8NWr>Fv_Byl+!u)^=Wu-}n2g!=md)EDTmJ-o@J~J~?8=fs4+eIg2FBm$l?H+T460 zXcNa8GR0z9}hA)9j6YvYLi<`|(9jkrA$K&vX!X5Gxh3(ownX z^h4kcW3|wvGv*h5tytDKKc7|Ymut6>r6+incc4sB2F(_~Hbl>do z^!Jl{?#Y{&?KLLU`gl}GS~xx9Js^GQYD2?W_MjT3$KNDaWInn^{}Af@xyt!aoL9}K z&KQMPYz|TV>~1r4yN~+x?Jf6gwo;2(XI?LL=GU*g(>S%ZKRta~e!0EP?w`Me<=ran z_gU;_>G|X(`24y&sl!S<-{`U ziWkpss-);G6MXw8h^f0rz%*`yzt@vRiO%Ad>_;>_cwZTO&PjVVXRFr61N+l@{(brJ zB5nps4*Zh;_@CmKn&)b>V|Y~#I9W`EYq$@}_N^Qw7% zYn(Ih+R|ACi^?ZhD9yf*w`ZAE$c1M>qD=>TpDZ}%TsVjCv*d&I zo!b_LxG6MeX^lDi8^(FYpA$-i$~qGg7QUE~;_tP|@%)Vguhwjp{C0KQR;L?N1(#jC zbvp0-X$9{%`KeQE-10rX1~*PIoFVcnErwS>o+GK+jPresW(C!`n0-}O346fq zx=Hh9Qb9r4iQPO;J=mUae`0Pb_(bn!*7tDc#oMD+_@=Jf864q|EHBI{r(R^dM667i z?-rB0L2$2#$bqAWR~P8K-115JjHTVKfGXd}v)zr=(=UBVN_+P;ZnJw{?ZeP#7wT)H zG|yM3MW>hN-DlFB*7IxGu}QyAh;`3>u4(J0{cWe`3kmnG&)x+B-qY^rykGdbL0s6| zq9yCJCi}NLip8ruRVR5Yn6SaUxV7q_^a+)3vf8KT&Yt=6;%Ck&LhTb~oH%gIxc)e)IP9?0Fcb5Shay@Q7!7QqMy( zvC95Qg-2aJDDFys@|!!j^G@i^JoU^=Vck20_n%0J{9w^*^EhawY0fmG_$g7%4$LRa zq(6jMXY*=Q$w_Oi+G?pkoTb<{Z5Ox-Vs?^FMEiiPX^YmSn?wcl)RN!q3; zTAmaZU8Wr4m}Cz+Msl`wPa?<8pedhEa^+wLkbv|Y$=)C z#oWrs?r!wixo_$X+)(a^l(ccUziL`lGfLPnncw~Z|IJypVA7p{80 z*L{BNt25cBeji@%vs+m5tN)|p@Ag0cc6-6CjpkCCc^8E;7OvmMk#3&-XYHHNq~h}v z)|$<~dqkqtA+5G5^7*xlC~5Da3yS*Eg{f&LHXU41FDaS(;z9l)JH>v^bX95B=7~rD z&*%x)%|?cl*T4&Aqf zD|xLaWqPMb|0(6&v`yaG&EkRu-wpplKczX^yH&amzb^mGSKqV!!1*7&EB|xmH#Q`` zzhe1*VUX&N&{Zt^U47W~*PWdXcxl#G~km z--ROcZe0$vJn05L>c8Bp7uHL3&+)c5YpJ@0jaBzrU zy7Wo(lb={0Vwnk_(3dsmG#F+FPgmjCCKJ7Ioy&`4=@rsSQ*Ix7sn)f* zq`0MW+tFR@t*P5$x3S!d>*ZT$;P9h*>dy;{bwZ9MiN#BV*){Ecklb=QT=2U4KKmWL zUeWyfJswmG9F#7So5^G(nZk7<<%{quhvs>v*A2yD=f+)#%sh9*vEdohs$zlVjRqvc~F^g{MPLJZNLADe7dHHuh`{)pZG(M3^f| z+SSYc;K|nwEpI;FUAx|R{{qvAY|l=MEk1fiTB6^zK#;$~`I+d;f9b(|jR8TvRXRe&8zoQbG&j85*t;lnL(+WSf0J~poHtHQVqJVu z@r#MlVOF0`tCEXF$JbwARlfm<>S;Dt$F>sh^S^o3O$Hm)n z0@vx(J-K+bc)D%X^$QDMhw;m8V*U5{f!WcUdmr0wmfyeSiQ;S#o9WL#3cSlS*_WJB z6P&vGc4x|rvu_GF)%73lVXx4+u4uhN(_+DrgTW63tM(|)zAIa_&Le$Z>P3#P<~u6epi2Ve>~ROTG4B@$WrM_ceZ@2S^3w+{W@Xma&8)B{rU2= zcFOXe%%u$bd@9v~L2A#*p4xPMXbgpMhwe9l@mXl>Xg^XSA=dpFz`9ITeo~!hV zFICOf+(=k1D7}H@VOq#U4Vifg6`XNa8v+gA%Nv!5&SI8n+U#jx=a<%g=6LO?ieFqa z`57MPJG>Ed;rBStyMkN$s^W$hKd)@sc=)vYUAv+`CaR)&ZTsrA>KpI7T=+b7Zo#}s zzo&lMd-&qdj8!+8Z10P+E!SVVE8k|pnICSM=ZgKSnQXabUz`yrnU>BVpi<4d+Q9Xd zlG>)34J`&0tgpFbURv##R<$=(;?2f@O1ZjF!820EWu-^w?Bv(mY4MP2%krP?XY$S+ zt@!%s@9X!HCOID-Ep%pX{O4QwGyI&Nob8Sx+k+>Vf-n5~E4ntGUt@}H+$?wN?&}Y| zo^4WL{9I|G{8no9-?Vg&CKbIDv$ikVlQvjh(lJTQs8JNH?z-|L$>8u)ku?Iog0t#p zcuF5S@A}WzUiu}2xYLI85dZmmPfzn${E0DU{U1rT@cbp#@*zzEbq3Kti)z}R^t9Lg z*>hIPhlzF5#p53)9Xz7`F;%5!P3dv3&}NnIn(NoyN?K)RQgM}UtI1RI=ZiuoTv*!l zM`T4AXYQ|??Dv~zA3m?SJHtQa`txGF_v*Gm>-JQA{JAQl-e|R6)?P`c9n}+b|Hy3W zzF^(B>)Rvd*=9#w4kbus>RIo=NM^HLRS!c-GbH7kC-w6(v8JknQ_K!Qx@k+N%r^B|RTx1!k#j>ijCn$H_O^ z?U-1wKIIf!fcM;_MS2yY|W5+ZMmR z?Wvo^Z+Uac`prdVtNaoozwjK^+}(F=^MvVV)EIAETp53>#drqiQ`zcfs-C{?FgUnDRfr3Fwd&3lReV%m+Oc&zhbjFD!D}NN`=pKu8YA*JAbc@U-WyK zTEfRQxnC!rV%+z(Hg_Xa;kmVKiZ|rCQ*~$Yyc1o|8P3x*J7LS&ggUjy1sh&j+)B=R za9+B9XK=5;u~%Xq(lw0}URGF%uef>bqfNf<`9Fy_g#XUJ{4xF0IN_ud+E&9t}`daFe8c>=@Dvp*80 z6864axWN2~_xY}N85K_D&AxocmL5K~Fj;-iq_)V7vo`Sah-)6XY$y>v`-yAJx&{`8 z-$$JJRi7o<@RokQwIuONzsnTiEuKFsoU(1ilLI1?q};B3wW8m zIbAW%J8o&m>|Ir%)H_tfuMsX|elCoW2qh<2dbNeqm@f6D1{n$`rh67U{V~(wJhZAQXV+{Ya z!%uG%u-y@9+G-$t{B6Not2fuGOylOaZ@Kr|^X^r?4Rd1T*CraD@mXU$#o|ZOpMM#? zio1SIx>laFJEPXV_cxz>&}*&eEK|M?JTWRvXh<^{7`D?m$jtQ0KKQx}`^hs&i`yU(jJzhMc?3W+MYisR); zJZK`7XH&oLciZj#RmEp+Oyj+>d9PP^O?grElO=hP6&K#N^6TAPE~5SZp!0<-c?mNw zaS6R@FN{4`V%ECm?h&hpl7V*&FUaqTer)l8`{LIu(c|s2dE_rXd8JzPx03h%@|iK= zPqixRUz}sVbt?4JKfV<^>i_|uYP}X6*~9lr{SNE zmS@ZhJbliccX<7UXYsHR zzAfvM_JmCQ=D#f|(?H`PMD5=te=W++MlS2y;{Pt+b+fCk%G=d9&K1At-0}BX@rz$v zTWhPtGUJc3A8CAlbV=>ke=|$+@6^4%{^FO#)>8 z*IoO`k$$(1Z(R_)_1o?V-;S%kaQd8Vv8_0QJv07lCCdA z$(`$&1=gNwN!V>PE3)I8t(BmH@-5v9EQL}V#9B8WI`rsXN#gc(CY!>zx;H33-w>^_ zi~o(8{vEC<^*OcD&sx>(jrJ!!ych44e)iqeIGd7yw7>uVe7Kh^K5bXk9q+d<*Z-;f zSH1gs$g;P3>u&B^T=Q&IlcW9_-&fIJkGy#Fku`JKugkxW&5ww)dcDteg+BAtBB9T3 z+I~%PTFk!j#I3YPvWZvv6r^pO-*UR!#+&UgUvU3!beRk<@6FGb&#ijHzU<4J&o9L@ zYxCbax%Co1zHF)9-c)wO!8oGr#C*S$dFziEG^AZcotG2(S8A?JVA==8^7}ce_iF z)6Mklk6*XTU!=~jS>h-dvc65C>%sQ(TYi21c_(*{?28Nk+&{~xWPXgywEB|gInQRf zx4zanohMhG1Uia7)Z56wp_iUjII-dI?K7N)J9bBJ|NMR3&Sf$(F*Ba!`MjHdJNeL& zrQ*}{qqqGzbg5Ig>dN*SlQf+(65anarXO3E690}V`1SqZxXpa83=@(w*)%6CVhNIS z_09b`+em!6>%p@xc1P_#z;9%1)m-}?)%ED7 zJ7}(4oMAQTmaw1W|G4bDu!X-J4Ex?y=^!S(4}rHS#r3ui3| z4r&tp-cp#Jdh5iGTRp~BXPETtl&{pjKHei|%eJgf(l~9)rNy@wO!e=V``RAbwdEE6 z?|E_eH%HG;x8{}ma^uuNXDfBS(jNs`9X7SAZ43)b@|P{`m;ZI;$idq6UtH_Obl>&< z-JT);!}Hxqy_+dpyMyeN-#>8Kyg66n&>FVcdS>xzFLOMkFSbTZHdR@-q1{JCt#DUrv;UTJo6c`MSFF3uJ|p(ot*3_+Im0d-J^YgK>{8i;zt-%!3LVnd>lg8F zzjLxB%I#AA&8hlsY@Qmm(wiSX*!KE!h+I~xO{cfTf$mM5yq9yfdM`S%GP$>1<_xDI zyD_JwiQMF+UY)a=I9IfGA5U>t{g%133u5X>oX2hJLC$vm){#MJ}ncEt- z9TdBkv31v-vh`ahn_dlVVVnP2DnUMHuPpE0L#C(gqu=uY?)-cA-@moRLWLRouYSlZ?OVI{_*7xTy^H5O zxR`p-^=*L%2ix648eAvO{@R?GxBK6Ldev|4t51ggmE-QXzt|-1^x9jl!4qR$vUYBa zsn}C$XFGGVg5|rNOGWg>xF1xTcfGQSxF4tBpH%EA`?e;J#j3vaN6+rm+2%^;EM^#+ zS9?kSm?=GvE=5GY~oMZo3?NAZ6g7% zM#h~iGMl$74Ots8wKc~s=f$a(xhG8*ExZ@=+L68P-_}3RY8Z{zB^``aSs;94T7O@P z;90H%l?{=7Uk<$}=!s?{$)B=95kIIUcvkKi?HR&o0`cVUfQ(H zxpF1{hrmDUJAb~nUiiaiYP#t;?^4C0(9DX*2O7<<9NzUby2wdiX}PJ~e51H<=Rbyy zCi`xG__1J$;fBdGbYALcGH+J7ⅈWkL+QyW!V-JLh?6Vjqq1Bf5J6Aw9O*7bAEuGC&zkU-AYY5$}Cs@#921HwB$+0C&9z+{WFV7 zlMVmWJvgv9G&I=#&)bt~8gFkXO111heZ6_8)NOnD%rITOpkZ!Ue|p--SG5_ibfXB zs1;vLuBhvZE?JUh=%;=lRVd`O;1|D77pylf3T0TJJom}Hl!;MileS1Oo!NeO$`z*p|z_u!fviO7WDU`m!9mel??|DPOuhEir=ER{{idI*2Kg6YVxmbOjPFciK@Qc zuxF2N?L8UGXAf_OzrA&%Fyh(`R%Z3O>5~*YF29=>8fu!W8dVYLym@o;wH`(1@OL$a zs!s#T%8vIXKTU8uaH;aehOM{XPsrUZclO3L?azJxJq0toyzFCVJb8O5@@hQGGKQ1B z<_s40hhH`sE|9vi*>8im%1q9Qf|EZh^vl(Kcl-1uZt}7u*2a}K7e4Kru>8-Wt@qM* zck)g8DY5e7x*d)ab-c_bPu$2P_DN3ti(y!QRHk}X&GSuyEfLus25n13MLgdha}0=i zE|hvzW$PMSMbEd(%u?q57eD!2?nBYfY2s6|Cxrj&y?3QfDrZI9=5@)>g;S^h`*rgE zRl5tXFIX2gCq){3m^0PT@qmY!I=@epxJg;`%{M&G(=)eL^2%?!wmU$6U2XqK`Or6? zGnPcy%Dk0nb38HgD8l~p9}uCy;A?pS7c!|S7Uei#rgKX z+%f|zZFr*YT0C2Dl5O%+mG-Mgc22q+sqk~smw8v#i6pb_JF{T&%LR_TCaMl4C;Dj}=dzNpKV{1<71-rTP-uB(w0eC6q4)96?>}9>JY!#w%*p^^p~8qJ z-VB8_cfEl6y&vurpAugp^{D&r@0a4r|D2znlXIF~Z)|G5sq%i>(@CEU-*6b4y}$ka z#8rO#JyKVbJ?#qhD#PDz`IbEIftip@Jda&OgEE_iw{ZQ-OWhL-8qHMnau_GBv%gV( z=fdo@O;PUwMO%9S427YS=Y|``(k_liYF(oUy1&(B&cl~ z^Ci_^ina!<8x({~4%!7Mv1N$aYRq$-yVQHTtM;APqpUa9CFiQlyv2Qa?w9B*65R&; zdBIk>QbxJ&qA#zu+wuD0s)_9HIe(NL;M2YPnN4m^%%sl|OBUXGcSmfS&#dqJCf*9M z_B7D87xN9us%6=xTOjr-_T=q_jJFc%|8~bOdusoeO~y&~*2)ma)7@Hn;>T)aeIK0^ zPPMp6vm$N> z-z7zBH>K6-bCahx&u-ebdqTwGp8Lk8zf8AIlbY@t)UEtK=yk8g>$+8TMjdmKRqP%( zTS?Z%CqLo2p7~olPdlCESk_-n^VHSJtQQ`b?flwS#4coC#`vJYJ~B2i^+V9h)Hxqi zSFv7+(EM^@-o$xc=WF<-tpnfW{(k1+&h;oR)YYbL&%SvpLw?kDMNMS1zw5sLhwe)8 zptQpFoAnc=CjBd7%QY%i{QEE=io>E-v1i>r#(gqZifx{{-=6=eB1a;aCHK#tnuVUa z*4IzDv#hn-YOv65t3jXoqZW%i)rnF&1T*dw)8c~a+} zGYrj7Ov+6yM18os#pZL_D4Mb?Je~X5SSern#l#*hqd&e?{b{C*l5(YXVtLG2J9>Mx z1e=#@WH9ex0tCYR+XvXb~rDpfT?Z4fSKVg}Bu&(%1U-e10=Go6IJJV0u zSiIgR_*OXQkjJ8nfw?P}SC-3qzm$G4=X6wG%HyNU?j$QuE>jiUAiY*^>JEd8*)CYP0Lk2?oIy~_b<{~-L+&E z!>$9O8pke8pQ3n}VcHkHXPcu=ZTY$R*4tD5r_PH{nLjn#dd1OG^S7iRJCPjA*T(rOZ&DH{3N=o#zt)N`i~?a@1JG(C0g=?L+d={xmK+q%BH zqHgOlb2t){(YuZ>DlhhX?oRPb}j0W^tRZnrKR@weCVpnYucB8*Vy^|U9xOj;Ay^d zr_Rm}+xa{sb?KHhISgs1HrDZl6^4-t7mORWcXc zKJw9%bB$iq{(Cu>*B`OkSH=;=`o;X>JePS#{yLlK3Ko71>AS|CRiadM&2dZ9;~5!l zMbmx=|9Z-KW$Bek>z17XQ;y?`|2sNjh|}YW-@p@EvzrUZ?1pW>1K$bh`Ix&)3S`pM?}Rhiq7X zqtEN~Bbk?XyF%CU$=^MqI&I#vhv}g&cdWVB{QRBlrR7OyjFs7oqkUB^6?>ML=JkK7 z=zr+He%48meI5(8h<&)T;v8#pm2Zv8^5%%5+iwD2vYvMmZoBH0|1wcqQp$G!R;gg#Yg&SX>;G=~E7|whEphGt zy(#fb+P)K3CucX;2|ws9^pjFjyAUm$r>5~}0q=fggKu*6Zy(G_+&)1nU-<32U#Frw z_2eCYtw%{Qg$3y<2Gbc)+ZWa)BUSJ~|_>G-awh-Cj&pKlyiJHNVai>i<5 z%O@H;bQYK{U$uB=QM;YwXXCQ;nhAxb&2O21Rs7oVTjlG=O>>XRC?3Cc(}@4f=QG9U zy=OhYntUfcdb`CVMbCn+T?I@>*Myy}xSzawU)D{LTN`6{mR)BLy__C$_V430*1o## zuU3AYra5{0T1nfsS-);ymY#Qaan15Sdupqn_qFd*RSi9Bu~+Whp1Znkt!pVj{}eEFJ#nzuGhER{GbGWq3`%PyiahcBExu_0;M z<%v%(M6x`RN%d-WjdYzQ%xfhZ$m5msMDgI#UUBQ&TtX8XxnBxy*2w6%vTR9TTroq~ zFX!1&dh6%BSu8TU{Kouu^UR#*cD?>l#z-TDF#XDmIR{FI(T)pP3!^?%OHP{MClt_6jrqm~9Su^y1*#y8R9* zX20gXKB2?9_n=JVgzloBm*$A9T^>e90p4V^SYYK7lE ztq~F5@4M|E@8@GhS8gut*FN=K`FQVKlY%=tG`BuJ)+e#0?6Pt9ulr$U2_FvxDlhl7 zw^;LWA6Is9&Z8;%saczTzuX;fmALUo9LKFC@9wJmzKGkfw0OGF&g}5bmOm@ESG(-r zxq5N%_We5Bj^B4Ep4@V-XWpipsy{!gOrCPmV{T{upCsdXvOH@gzg>IYRT`ux|1My% zcbL%39_1GShqUF@5+-bu&X`sfmhnz%k8W4@iu%~~YgWzr8=vcDw)^8g)}>27pS&>D zd}@Do_Dk>YdKKTBE4y#;quWKZtY2vHk$QzyVe#apWm%EfB$#=hQ+J)Kl~ckmy&7Z_K0v+Ity?37tsE4S9-$zne%Pd zD7KxeOZGZCQ;SC>YF~-ENVZb=i^&u{so9i#Qf4phIROxWx=B?x%ftM5a8+#qSb7tP` zi}UBrES}nBydl1R|M}^67rSpe|GYhX1$(sKUZb?it6fvI!$WlCKXc9fcsn?*d^%%u zdPwM537ZAow^#Q`?(P47|5(iD|MzBC*DTYKxKYU<_qpL5^HkRP2l+D2ME-ks_iv<~ z{a5uJdY}4V9+rEvx9Dis)V=aDW^;?S{kS-Txu`BOa-U4Vah`*UTgufY7*0PCcP2Bf zF=ngl8p8u@mo;}so|kqHu$dV6YMEdG!zRO1n;uo%Z=vw7ywRG~;8I>HHXY37$ zzyE*g@A!J@c}u>zFME5dv`YT#hxPWskJCeAdq4S|Rk*?OcX3Tti`UuoB9GFrUjMUN zoP1ZfdBQHp81MFqHemAEBJZv>nbRbfX=PM2hlIMZvuddF3jM?RPeOtPkIph!9yO(! z?W;CJ+X=@z>r*n;`F*>-{ASHOtMs)?R;Q_)Yxwo-%Z?f*{i#cj{%SMqoN)Hiy6Trp zstZ@@-nnpE>C(x)GrH4m=x^+^`&NGGyyKGcD}pz)H*S9ar{Ve<)>?1HPj|VhPUoG@ zysSNktMuA|jZ-8)?YYQuilyd=z!^rF2g(w!b&tqupL*o6F=&qdrd+`bANEN?tjGVT~ zYnpl2?CU$PIDJE&mqsJ=3(szihX)!@Ts>TJcwen<__w!<@9sFeaK%~u3p*}3uFT<+ zIxekpf_Zj+O;KCHO4gU|OQ%QaJv%umcF85l>;~&}Uo*CII~~{Z_VU|4Nm^<3eS9jk48*iJAdukBp>%x@-# z(pD*LkA{y8{9mgK*1y@hcFy1H->2!_x>qvqbl*1X9$lxmX${Joj?R8J!N}6Psz_>n z*IY&2rQ*{1N=FyGFuWy0%i zuD)t^M5Vw)d8*x&`l_d=ru(;x-`SscX2yr6qyF#s+pB$NHB9_sSGywo<@tEUheoyM zznxn7dxh$ccH`<5s@Kcq=0#4pzk9nD`__*>zwaM=yzgbjB>&XJn*0B`orV7Uw|#kS zniX{0(6(pGL#@b73>UK=mnzrRTspz$Xt!FY|H{-Y0_%D79u-8dIvW?e$#w?Ij=p;h zt9K=f@3PyiczJekm8F@A&>6SGr{rha+t=F$b(KHgKkdJ3UG}~@t`J`>cO_m)S^Fg> zyI6G1X9`Rz4Yq3o;6QMco!lh|e#Fx-|_NDMx_c=A`X=Bs@l zr_=^6eiD)T>G#Qy*}~>^+cFiop6M-OSkdOW<8SBg2{MUi7CApTa`jwH8OO!e>Qidr zLT9brUYy;tQpc6m0h{w#ZKQ=r2yI>t8&ieLN3LJn~~AuMOjbCo=`D zmdHtdNV_mW+1s$>$$#Dp9?8-dPJCG$&@kUzD}3q~w`H52D(?FAEAQ94X}($SWY)VlnK)Bp;#op*jp^=bc_negI;%Dq10e!3$_$#Z{D_)*tv{* zqf`u|yi(__du-8tw5>GjVe_14W%MEJ-?(=sXbE$A zL(R=OmJaHbIW`8KWsm;sxluIn$>W)g3vanbuMWPH9rM-Eq*aBVU-sUK8;7K$7X)eU zxwc_p$C^JO4P~u;%5MrXXMS05YPS)4{enBybp_92r*bj>4$R!J#{GKc{5OW4)^`6| zZe7{&z2cp$^#ajn3zJ{G>a#BDf1g_;-PbyKYVD~{yZc4X-mm`eynEkayQM!f{Qq}u z_Li}2eE~De?Vq!!)ZuNpFztk(Vdi|wxF$par7^e1m{ zR*Wxw<$k<6XG!k#-mXimY8=Yqwk<80hode`vs3F7_uIZ;n#T?^HSUwfwhP+l9JyI? zEbH=0l?NLyUVT@!QSqe4!slEP?-xxx5YPRp*!1|fjT7(1-fM9`{&lxm?2V6qHdx-* zI{tmzOZOCYNwZ0(qtX>3T1#%b2ga{a(0HvO{2+3!LQGcHu{XCiF~0D*dW@|k!@y;u zI@i)wSC4;qutv}`C^ro$4o1wUB=Ijan54Z7NeKvdh+Nv*e zuKY}%xcc{%LYLdem=!jy6DNB&RKQwf$hJyXK&> z;i9_@esV%>d!|g->kuS7D}UyU35(R!Zv5MPq-9E3C+D_kb+r|oX&;xcRKGj)$NBj; zp2~`lSc!GN-uFLuud6ElxaoIzK-%F&ny0ES?BCNq>1fEinmj+=I}7*N)E)WY#k*WN z(U0u}-`>8>m(=D5Cu#b`v%GzwusiX>rm2s8%WNkdDRY-K(#o}*{@Jri@n5%gPNBuY zFo$S`!j(lY8Kbu>RzF<2SWa%!^E(UwwC*f^UjOI*sY@SbYrl)%CNXnzr0q24{h#hl zab?RtJLh@Xp|qz@Pd!vVHaX_}#~oq(FVjyy{g)=3YS?%3+@r5k&Kam_Td$tKT<>Mb zyn{2Qp8at!Ysa*Y>v-m*>B_{Nv7k z`?-b(7wVl|c0K&snHtBsMDBA|slQ}Sos+W;latv{a%WfBZ_bH^6K%_D-yI2bc4u2F zsW>Nf)w8zRWe@XjIhfznxutup=vu~ug|7_zEPGNn2jtqOnmhEZPRri7*zNSTqNB}c z4gbE`(sjb)%BF>7&vX_p-f_?IF_%|GnwG|N)#6qBR?KGAmf8{({#-iTDmzxSs_E3E zgnP+maLlMF4O_qXR-M*@ugU_i-9^5fo+hAPa(Bk}sc|d5^1chad(*jJwtD7D8OJIK zO9%BGTOZCT4de;fHDPAwGxfJETko83KBpJ6r$sO>rFm(TMQZx0oou_?cAPnO#4Sec zP?TtGiN?f#WmdBf^lqzhZ}Eu!bGhc`lqKfDN^hUUJ}djNTy1_|SvYg_)`)DCASZ`g zzQK78N1YWmENA6x{Qt$IS1$LXeEeiCclq#tEV{RDoR^LDx$OO(x8wYo$=ddR^`8ky z{>`uE{`G9v;vLJ=SIEy?nQ?}7(>(Jim3ggITFbvE1zH!T>*zdq-NPHU%Wu&JqpGzt z9eR>poYT}w_p4F*klo-u#r{D1;*PneByUv9hI$^bQr>-CGu?E})%iE)zL>c;WqubQ zm&=WW=c{{{zj2E@Dm+yuB~r*HaMGeS;rxzHk>k9g`3HEfeh6(pYx)1_$GuXUvbv|g z;rJ!Zv~pF^x{X2?*@HIJ-{+~l%5=f7lx_EEohutQ9DHG9Xk&h;*LG^1?@85p>;7c- zPXF||@K#K>hT?A3uYW_%#;;V}oh6vk9kIpwd{mMdhydqIQ+s70fdG z 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

  • 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%0AIk4Bi&E&b0QPQKN78nU(vp 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 literal 0 HcmV?d00001 diff --git a/libraries/tcpdf/fonts/dejavusansb.ctg.z b/libraries/tcpdf/fonts/dejavusansb.ctg.z new file mode 100644 index 0000000000000000000000000000000000000000..dde27cbf6e8ceeb695b6a72434f5706765f1217e GIT binary patch literal 9784 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,'Descent'=>-236,'CapHeight'=>19,'Flags'=>96,'FontBBox'=>'[-1069 -415 1975 1174]','ItalicAngle'=>-20.3,'StemV'=>120,'MissingWidth'=>600); +$up=-63; +$ut=44; +$dw=600; +$cw=array( +0=>600,32=>348,33=>456,34=>521,35=>838,36=>696,37=>1002,38=>872,39=>306,40=>457, +41=>457,42=>523,43=>838,44=>380,45=>415,46=>380,47=>365,48=>696,49=>696,50=>696, +51=>696,52=>696,53=>696,54=>696,55=>696,56=>696,57=>696,58=>400,59=>400,60=>838, +61=>838,62=>838,63=>580,64=>1000,65=>774,66=>762,67=>734,68=>830,69=>683,70=>683, +71=>821,72=>837,73=>372,74=>372,75=>775,76=>637,77=>995,78=>837,79=>850,80=>733, +81=>850,82=>770,83=>720,84=>682,85=>812,86=>774,87=>1103,88=>771,89=>724,90=>725, +91=>457,92=>365,93=>457,94=>838,95=>500,96=>500,97=>675,98=>716,99=>593,100=>716, +101=>678,102=>435,103=>716,104=>712,105=>343,106=>343,107=>665,108=>343,109=>1042,110=>712, +111=>687,112=>716,113=>716,114=>493,115=>595,116=>478,117=>712,118=>652,119=>924,120=>645, +121=>652,122=>582,123=>712,124=>365,125=>712,126=>838,8364=>696,8218=>380,402=>435,8222=>657, +8230=>1000,8224=>500,8225=>500,710=>500,8240=>1440,352=>720,8249=>412,338=>1167,381=>725,8216=>380, +8217=>380,8220=>657,8221=>657,8226=>639,8211=>500,8212=>1000,732=>500,8482=>1000,353=>595,8250=>412, +339=>1094,382=>582,376=>724,160=>348,161=>456,162=>696,163=>696,164=>636,165=>696,166=>365, +167=>500,168=>500,169=>1000,170=>564,171=>646,172=>838,173=>415,174=>1000,175=>500,176=>500, +177=>838,178=>438,179=>438,180=>500,181=>736,182=>636,183=>380,184=>500,185=>438,186=>564, +187=>646,188=>1035,189=>1035,190=>1035,191=>580,192=>774,193=>774,194=>774,195=>774,196=>774, +197=>774,198=>1085,199=>734,200=>683,201=>683,202=>683,203=>683,204=>372,205=>372,206=>372, +207=>372,208=>838,209=>837,210=>850,211=>850,212=>850,213=>850,214=>850,215=>838,216=>850, +217=>812,218=>812,219=>812,220=>812,221=>724,222=>738,223=>719,224=>675,225=>675,226=>675, +227=>675,228=>675,229=>675,230=>1048,231=>593,232=>678,233=>678,234=>678,235=>678,236=>343, +237=>343,238=>343,239=>343,240=>687,241=>712,242=>687,243=>687,244=>687,245=>687,246=>687, +247=>838,248=>687,249=>712,250=>712,251=>712,252=>712,253=>652,254=>716,255=>652,256=>774, +257=>675,258=>774,259=>675,260=>774,261=>675,262=>734,263=>593,264=>734,265=>593,266=>734, +267=>593,268=>734,269=>593,270=>830,271=>716,272=>838,273=>716,274=>683,275=>678,276=>683, +277=>678,278=>683,279=>678,280=>683,281=>678,282=>683,283=>678,284=>821,285=>716,286=>821, +287=>716,288=>821,289=>716,290=>821,291=>716,292=>837,293=>712,294=>974,295=>790,296=>372, +297=>343,298=>372,299=>343,300=>372,301=>343,302=>372,303=>343,304=>372,305=>343,306=>744, +307=>686,308=>372,309=>343,310=>775,311=>665,312=>665,313=>637,314=>343,315=>637,316=>343, +317=>637,318=>479,319=>637,320=>557,321=>642,322=>371,323=>837,324=>712,325=>837,326=>712, +327=>837,328=>712,329=>983,330=>837,331=>712,332=>850,333=>687,334=>850,335=>687,336=>850, +337=>687,340=>770,341=>493,342=>770,343=>493,344=>770,345=>493,346=>720,347=>595,348=>720, +349=>595,350=>720,351=>595,354=>682,355=>478,356=>682,357=>478,358=>682,359=>478,360=>812, +361=>712,362=>812,363=>712,364=>812,365=>712,366=>812,367=>712,368=>812,369=>712,370=>812, +371=>712,372=>1103,373=>924,374=>724,375=>652,377=>725,378=>582,379=>725,380=>582,383=>435, +384=>716,385=>811,386=>762,387=>716,388=>762,389=>716,390=>734,391=>734,392=>593,393=>838, +394=>879,395=>757,396=>716,397=>688,398=>683,399=>849,400=>696,401=>683,403=>821,404=>793, +405=>1045,406=>436,407=>389,408=>775,409=>665,410=>360,411=>592,412=>1042,413=>837,414=>712, +415=>850,416=>874,417=>687,418=>1083,419=>912,420=>782,421=>716,422=>770,423=>720,424=>595, +425=>683,426=>552,427=>478,428=>707,429=>478,430=>682,431=>835,432=>712,433=>850,434=>813, +435=>797,436=>778,437=>725,438=>582,439=>772,440=>772,441=>641,442=>582,443=>696,444=>772, +445=>641,446=>573,447=>716,448=>372,449=>659,450=>544,451=>372,452=>1555,453=>1412,454=>1298, +455=>1009,456=>980,457=>686,458=>1209,459=>1180,460=>1055,461=>774,462=>675,463=>372,464=>343, +465=>850,466=>687,467=>812,468=>712,469=>812,470=>712,471=>812,472=>712,473=>812,474=>712, +475=>812,476=>712,477=>678,478=>774,479=>675,480=>774,481=>675,482=>1085,483=>1048,484=>821, +485=>716,486=>821,487=>716,488=>775,489=>665,490=>850,491=>687,492=>850,493=>687,494=>772, +495=>582,496=>343,497=>1555,498=>1412,499=>1298,500=>821,501=>716,502=>1289,503=>787,504=>837, +505=>712,506=>774,507=>675,508=>1085,509=>1048,510=>850,511=>687,512=>774,513=>675,514=>774, +515=>675,516=>683,517=>678,518=>683,519=>678,520=>372,521=>343,522=>372,523=>343,524=>850, +525=>687,526=>850,527=>687,528=>770,529=>493,530=>770,531=>493,532=>812,533=>712,534=>812, +535=>712,536=>720,537=>595,538=>682,539=>478,540=>690,541=>607,542=>837,543=>712,544=>837, +545=>865,546=>809,547=>659,548=>725,549=>582,550=>774,551=>675,552=>683,553=>678,554=>850, +555=>687,556=>850,557=>687,558=>850,559=>687,560=>850,561=>687,562=>724,563=>652,564=>492, +565=>867,566=>512,567=>343,568=>1088,569=>1088,570=>774,571=>734,572=>593,573=>637,574=>682, +575=>595,576=>582,577=>782,578=>614,579=>762,580=>812,581=>774,582=>683,583=>678,584=>372, +585=>343,586=>860,587=>791,588=>770,589=>493,590=>724,591=>652,592=>675,593=>716,594=>716, +595=>716,596=>593,597=>593,598=>717,599=>792,600=>678,601=>678,602=>876,603=>557,604=>545, +605=>815,606=>731,607=>343,608=>792,609=>716,610=>627,611=>644,612=>635,613=>712,614=>712, +615=>712,616=>545,617=>440,618=>545,619=>559,620=>693,621=>343,622=>841,623=>1042,624=>1042, +625=>1042,626=>712,627=>793,628=>707,629=>687,630=>909,631=>681,632=>796,633=>538,634=>538, +635=>650,636=>493,637=>493,638=>596,639=>596,640=>642,641=>642,642=>595,643=>415,644=>435, +645=>605,646=>552,647=>478,648=>478,649=>920,650=>772,651=>670,652=>652,653=>924,654=>652, +655=>724,656=>694,657=>684,658=>641,659=>641,660=>573,661=>573,662=>573,663=>573,664=>850, +665=>633,666=>731,667=>685,668=>691,669=>343,670=>732,671=>539,672=>792,673=>573,674=>573, +675=>1156,676=>1214,677=>1155,678=>974,679=>769,680=>929,681=>1026,682=>792,683=>780,684=>591, +685=>415,686=>677,687=>789,688=>456,689=>456,690=>219,691=>315,692=>315,693=>315,694=>411, +695=>591,696=>417,697=>302,698=>521,699=>380,700=>380,701=>380,702=>366,703=>366,704=>326, +705=>326,706=>500,707=>500,708=>500,709=>500,711=>500,712=>306,713=>500,714=>500,715=>500, +716=>306,717=>500,718=>500,719=>500,720=>337,721=>337,722=>366,723=>366,724=>500,725=>500, +726=>416,727=>328,728=>500,729=>500,730=>500,731=>500,733=>500,734=>351,735=>500,736=>412, +737=>219,738=>381,739=>413,740=>326,741=>500,742=>500,743=>500,744=>500,745=>500,748=>500, +749=>500,750=>657,755=>500,759=>500,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0, +774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0, +784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0, +794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0, +804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0, +814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0, +824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0, +834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0, +844=>0,845=>0,846=>0,847=>0,849=>0,850=>0,851=>0,855=>0,856=>0,858=>0, +860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,866=>0,880=>698,881=>565,882=>1022, +883=>836,884=>302,885=>302,886=>837,887=>701,890=>500,891=>593,892=>550,893=>549,894=>400, +900=>441,901=>500,902=>797,903=>380,904=>846,905=>1009,906=>563,908=>891,910=>980,911=>894, +912=>390,913=>774,914=>762,915=>637,916=>774,917=>683,918=>725,919=>837,920=>850,921=>372, +922=>775,923=>774,924=>995,925=>837,926=>632,927=>850,928=>837,929=>733,931=>683,932=>682, +933=>724,934=>850,935=>771,936=>850,937=>850,938=>372,939=>724,940=>687,941=>557,942=>712, +943=>390,944=>675,945=>687,946=>716,947=>681,948=>687,949=>557,950=>591,951=>712,952=>687, +953=>390,954=>710,955=>633,956=>736,957=>681,958=>591,959=>687,960=>791,961=>716,962=>593, +963=>779,964=>638,965=>675,966=>782,967=>645,968=>794,969=>869,970=>390,971=>675,972=>687, +973=>675,974=>869,975=>775,976=>651,977=>661,978=>746,979=>981,980=>746,981=>796,982=>869, +983=>744,984=>850,985=>687,986=>734,987=>593,988=>683,989=>494,990=>702,991=>660,992=>919, +993=>627,994=>1093,995=>837,996=>832,997=>716,998=>928,999=>744,1000=>733,1001=>650,1002=>789, +1003=>671,1004=>752,1005=>716,1006=>682,1007=>590,1008=>744,1009=>716,1010=>593,1011=>343,1012=>850, +1013=>645,1014=>644,1015=>738,1016=>716,1017=>734,1018=>995,1019=>732,1020=>716,1021=>698,1022=>734, +1023=>698,1024=>683,1025=>683,1026=>878,1027=>637,1028=>734,1029=>720,1030=>372,1031=>372,1032=>372, +1033=>1154,1034=>1130,1035=>878,1036=>817,1037=>837,1038=>771,1039=>837,1040=>774,1041=>762,1042=>762, +1043=>637,1044=>891,1045=>683,1046=>1224,1047=>710,1048=>837,1049=>837,1050=>817,1051=>831,1052=>995, +1053=>837,1054=>850,1055=>837,1056=>733,1057=>734,1058=>682,1059=>771,1060=>992,1061=>771,1062=>928, +1063=>808,1064=>1235,1065=>1326,1066=>939,1067=>1036,1068=>762,1069=>734,1070=>1174,1071=>770,1072=>675, +1073=>698,1074=>633,1075=>522,1076=>808,1077=>678,1078=>995,1079=>581,1080=>701,1081=>701,1082=>679, +1083=>732,1084=>817,1085=>691,1086=>687,1087=>691,1088=>716,1089=>593,1090=>580,1091=>652,1092=>992, +1093=>645,1094=>741,1095=>687,1096=>1062,1097=>1105,1098=>751,1099=>904,1100=>632,1101=>593,1102=>972, +1103=>642,1104=>678,1105=>678,1106=>714,1107=>522,1108=>593,1109=>595,1110=>343,1111=>343,1112=>343, +1113=>991,1114=>956,1115=>734,1116=>679,1117=>701,1118=>652,1119=>691,1120=>1093,1121=>869,1122=>840, +1123=>736,1124=>1012,1125=>839,1126=>992,1127=>832,1128=>1358,1129=>1121,1130=>850,1131=>687,1132=>1236, +1133=>1007,1134=>696,1135=>557,1136=>1075,1137=>1061,1138=>850,1139=>687,1140=>850,1141=>695,1142=>850, +1143=>695,1144=>1148,1145=>1043,1146=>1074,1147=>863,1148=>1405,1149=>1173,1150=>1093,1151=>869,1152=>734, +1153=>593,1154=>652,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>418,1161=>418,1162=>957, +1163=>807,1164=>762,1165=>611,1166=>733,1167=>716,1168=>637,1169=>522,1170=>666,1171=>543,1172=>808, +1173=>669,1174=>1224,1175=>995,1176=>710,1177=>581,1178=>775,1179=>679,1180=>817,1181=>679,1182=>817, +1183=>679,1184=>1015,1185=>826,1186=>956,1187=>808,1188=>1103,1189=>874,1190=>1273,1191=>1017,1192=>952, +1193=>858,1194=>734,1195=>593,1196=>682,1197=>580,1198=>724,1199=>652,1200=>724,1201=>652,1202=>771, +1203=>645,1204=>1112,1205=>1000,1206=>808,1207=>687,1208=>808,1209=>687,1210=>808,1211=>712,1212=>1026, +1213=>810,1214=>1026,1215=>810,1216=>372,1217=>1224,1218=>995,1219=>775,1220=>630,1221=>951,1222=>805, +1223=>837,1224=>691,1225=>957,1226=>807,1227=>808,1228=>687,1229=>1115,1230=>933,1231=>343,1232=>774, +1233=>675,1234=>774,1235=>675,1236=>1085,1237=>1048,1238=>683,1239=>678,1240=>849,1241=>678,1242=>849, +1243=>678,1244=>1224,1245=>995,1246=>710,1247=>581,1248=>772,1249=>641,1250=>837,1251=>701,1252=>837, +1253=>701,1254=>850,1255=>687,1256=>850,1257=>687,1258=>850,1259=>687,1260=>734,1261=>593,1262=>771, +1263=>652,1264=>771,1265=>652,1266=>771,1267=>652,1268=>808,1269=>687,1270=>637,1271=>522,1272=>1036, +1273=>904,1274=>666,1275=>543,1276=>771,1277=>645,1278=>771,1279=>645,1280=>762,1281=>608,1282=>1159, +1283=>893,1284=>1119,1285=>920,1286=>828,1287=>693,1288=>1242,1289=>1017,1290=>1289,1291=>1013,1292=>839, +1293=>638,1294=>938,1295=>803,1296=>696,1297=>557,1298=>831,1299=>732,1300=>1286,1301=>1068,1302=>1065, +1303=>979,1304=>1082,1305=>1013,1306=>850,1307=>716,1308=>1103,1309=>924,1312=>1267,1313=>1059,1314=>1273, +1315=>1017,1316=>957,1317=>807,1329=>984,1330=>812,1331=>984,1332=>984,1333=>812,1334=>777,1335=>812, +1336=>812,1337=>975,1338=>984,1339=>812,1340=>710,1341=>1078,1342=>1136,1343=>812,1344=>710,1345=>757, +1346=>984,1347=>876,1348=>984,1349=>793,1350=>984,1351=>812,1352=>812,1353=>812,1354=>958,1355=>777, +1356=>984,1357=>812,1358=>984,1359=>720,1360=>812,1361=>793,1362=>895,1363=>850,1364=>936,1365=>850, +1366=>720,1369=>366,1370=>380,1371=>550,1372=>550,1373=>380,1374=>546,1375=>521,1377=>1042,1378=>712, +1379=>866,1380=>868,1381=>712,1382=>817,1383=>653,1384=>712,1385=>811,1386=>817,1387=>712,1388=>498, +1389=>1018,1390=>716,1391=>712,1392=>712,1393=>716,1394=>819,1395=>712,1396=>751,1397=>343,1398=>882, +1399=>559,1400=>712,1401=>559,1402=>1042,1403=>559,1404=>863,1405=>712,1406=>813,1407=>1042,1408=>712, +1409=>716,1410=>571,1411=>1042,1412=>778,1413=>687,1414=>720,1415=>862,1417=>400,1418=>487,1456=>0, +1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1466=>0, +1467=>0,1468=>0,1469=>0,1470=>415,1471=>0,1472=>372,1473=>0,1474=>0,1475=>372,1478=>497, +1479=>0,1488=>751,1489=>673,1490=>537,1491=>654,1492=>712,1493=>343,1494=>491,1495=>712,1496=>724, +1497=>343,1498=>649,1499=>650,1500=>679,1501=>712,1502=>775,1503=>343,1504=>497,1505=>773,1506=>678, +1507=>718,1508=>687,1509=>628,1510=>751,1511=>729,1512=>649,1513=>949,1514=>751,1520=>664,1521=>664, +1522=>663,1523=>444,1524=>710,1542=>667,1543=>667,1545=>884,1546=>1157,1548=>380,1557=>0,1563=>400, +1567=>580,1569=>511,1570=>343,1571=>343,1572=>622,1573=>343,1574=>917,1575=>343,1576=>1005,1577=>590, +1578=>1005,1579=>1005,1580=>721,1581=>721,1582=>721,1583=>513,1584=>513,1585=>576,1586=>576,1587=>1380, +1588=>1380,1589=>1345,1590=>1345,1591=>1039,1592=>1039,1593=>683,1594=>683,1600=>342,1601=>1162,1602=>894, +1603=>917,1604=>868,1605=>733,1606=>854,1607=>590,1608=>622,1609=>917,1610=>917,1611=>0,1612=>0, +1613=>0,1614=>0,1615=>0,1616=>0,1617=>0,1618=>0,1619=>0,1620=>0,1621=>0,1623=>0, +1626=>500,1632=>610,1633=>610,1634=>610,1635=>610,1636=>610,1637=>610,1638=>610,1639=>610,1640=>610, +1641=>610,1642=>610,1643=>374,1644=>380,1645=>545,1646=>1005,1647=>894,1648=>0,1652=>292,1657=>1005, +1658=>1005,1659=>1005,1660=>1005,1661=>1005,1662=>1005,1663=>1005,1664=>1005,1665=>721,1666=>721,1667=>721, +1668=>721,1669=>721,1670=>721,1671=>721,1672=>445,1673=>445,1674=>445,1675=>445,1676=>445,1677=>445, +1678=>445,1679=>445,1680=>445,1681=>576,1682=>576,1683=>576,1684=>576,1685=>681,1686=>576,1687=>576, +1688=>576,1689=>576,1690=>1380,1691=>1380,1692=>1380,1693=>1345,1694=>1345,1695=>1039,1696=>683,1697=>1162, +1698=>1162,1699=>1162,1700=>1162,1701=>1162,1702=>1162,1703=>894,1704=>894,1705=>1024,1706=>1271,1707=>1024, +1708=>917,1709=>917,1710=>917,1711=>1024,1712=>1024,1713=>1024,1714=>1024,1715=>1024,1716=>1024,1717=>868, +1718=>868,1719=>868,1720=>868,1721=>854,1722=>854,1723=>854,1724=>854,1725=>854,1726=>938,1727=>721, +1734=>622,1740=>917,1742=>917,1749=>590,1776=>610,1777=>610,1778=>610,1779=>610,1780=>610,1781=>610, +1782=>610,1783=>610,1784=>610,1785=>610,1984=>696,1985=>696,1986=>696,1987=>696,1988=>696,1989=>696, +1990=>696,1991=>696,1992=>696,1993=>696,1994=>343,1995=>547,1996=>543,1997=>652,1998=>691,1999=>691, +2000=>594,2001=>691,2002=>904,2003=>551,2004=>551,2005=>627,2006=>688,2007=>444,2008=>1022,2009=>506, +2010=>826,2011=>691,2012=>652,2013=>912,2014=>627,2015=>707,2016=>506,2017=>652,2018=>574,2019=>627, +2020=>627,2021=>627,2022=>574,2023=>574,2027=>0,2028=>0,2029=>0,2030=>0,2031=>0,2032=>0, +2033=>0,2034=>0,2035=>0,2036=>380,2037=>380,2040=>691,2041=>691,2042=>415,3647=>696,3713=>790, +3714=>748,3716=>749,3719=>569,3720=>742,3722=>744,3725=>761,3732=>706,3733=>704,3734=>747,3735=>819, +3737=>730,3738=>727,3739=>727,3740=>922,3741=>827,3742=>866,3743=>866,3745=>836,3746=>761,3747=>770, +3749=>769,3751=>713,3754=>827,3755=>1031,3757=>724,3758=>784,3759=>934,3760=>688,3761=>0,3762=>610, +3763=>610,3764=>0,3765=>0,3766=>0,3767=>0,3768=>0,3769=>0,3771=>0,3772=>0,3773=>670, +3776=>516,3777=>860,3778=>516,3779=>650,3780=>632,3782=>759,3784=>0,3785=>0,3786=>0,3787=>0, +3788=>0,3789=>0,3792=>771,3793=>771,3794=>693,3795=>836,3796=>729,3797=>729,3798=>849,3799=>790, +3800=>759,3801=>910,3804=>1363,3805=>1363,4256=>918,4257=>744,4258=>739,4259=>837,4260=>649,4261=>773, +4262=>857,4263=>889,4264=>530,4265=>633,4266=>857,4267=>900,4268=>643,4269=>903,4270=>814,4271=>752, +4272=>869,4273=>643,4274=>643,4275=>886,4276=>886,4277=>733,4278=>653,4279=>643,4280=>646,4281=>643, +4282=>790,4283=>902,4284=>633,4285=>619,4286=>643,4287=>778,4288=>892,4289=>601,4290=>742,4291=>616, +4292=>633,4293=>742,4304=>553,4305=>552,4306=>596,4307=>815,4308=>562,4309=>563,4310=>553,4311=>827, +4312=>553,4313=>543,4314=>1074,4315=>563,4316=>563,4317=>812,4318=>552,4319=>591,4320=>822,4321=>563, +4322=>690,4323=>583,4324=>813,4325=>562,4326=>813,4327=>563,4328=>563,4329=>563,4330=>632,4331=>563, +4332=>563,4333=>552,4334=>563,4335=>563,4336=>558,4337=>604,4338=>552,4339=>552,4340=>553,4341=>605, +4342=>852,4343=>635,4344=>563,4345=>596,4346=>542,4347=>684,4348=>368,5121=>774,5122=>774,5123=>774, +5124=>774,5125=>905,5126=>905,5127=>905,5129=>905,5130=>905,5131=>905,5132=>1018,5133=>1009,5134=>1018, +5135=>1009,5136=>1018,5137=>1009,5138=>1149,5139=>1140,5140=>1149,5141=>1140,5142=>905,5143=>1149,5144=>1142, +5145=>1149,5146=>1142,5147=>905,5149=>310,5150=>529,5151=>425,5152=>425,5153=>395,5154=>395,5155=>395, +5156=>395,5157=>564,5158=>470,5159=>310,5160=>395,5161=>395,5162=>395,5163=>1213,5164=>986,5165=>1216, +5166=>1297,5167=>774,5168=>774,5169=>774,5170=>774,5171=>886,5172=>886,5173=>886,5175=>886,5176=>886, +5177=>886,5178=>1018,5179=>1009,5180=>1018,5181=>1009,5182=>1018,5183=>1009,5184=>1149,5185=>1140,5186=>1149, +5187=>1140,5188=>1149,5189=>1142,5190=>1149,5191=>1142,5192=>886,5193=>576,5194=>229,5196=>812,5197=>812, +5198=>812,5199=>812,5200=>815,5201=>815,5202=>815,5204=>815,5205=>815,5206=>815,5207=>1056,5208=>1048, +5209=>1056,5210=>1048,5211=>1056,5212=>1048,5213=>1060,5214=>1054,5215=>1060,5216=>1054,5217=>1060,5218=>1052, +5219=>1060,5220=>1052,5221=>1060,5222=>483,5223=>1005,5224=>1005,5225=>1023,5226=>1017,5227=>743,5228=>743, +5229=>743,5230=>743,5231=>743,5232=>743,5233=>743,5234=>743,5235=>743,5236=>1029,5237=>975,5238=>980, +5239=>975,5240=>980,5241=>975,5242=>1029,5243=>975,5244=>1029,5245=>975,5246=>980,5247=>975,5248=>980, +5249=>975,5250=>980,5251=>501,5252=>501,5253=>938,5254=>938,5255=>938,5256=>938,5257=>743,5258=>743, +5259=>743,5260=>743,5261=>743,5262=>743,5263=>743,5264=>743,5265=>743,5266=>1029,5267=>975,5268=>1029, +5269=>975,5270=>1029,5271=>975,5272=>1029,5273=>975,5274=>1029,5275=>975,5276=>1029,5277=>975,5278=>1029, +5279=>975,5280=>1029,5281=>501,5282=>501,5283=>626,5284=>626,5285=>626,5286=>626,5287=>626,5288=>626, +5289=>626,5290=>626,5291=>626,5292=>881,5293=>854,5294=>863,5295=>874,5296=>863,5297=>874,5298=>881, +5299=>874,5300=>881,5301=>874,5302=>863,5303=>874,5304=>863,5305=>874,5306=>863,5307=>436,5308=>548, +5309=>436,5312=>988,5313=>988,5314=>988,5315=>988,5316=>931,5317=>931,5318=>931,5319=>931,5320=>931, +5321=>1238,5322=>1247,5323=>1200,5324=>1228,5325=>1200,5326=>1228,5327=>931,5328=>660,5329=>497,5330=>660, +5331=>988,5332=>988,5333=>988,5334=>988,5335=>931,5336=>931,5337=>931,5338=>931,5339=>931,5340=>1231, +5341=>1247,5342=>1283,5343=>1228,5344=>1283,5345=>1228,5346=>1228,5347=>1214,5348=>1228,5349=>1214,5350=>1283, +5351=>1228,5352=>1283,5353=>1228,5354=>660,5356=>886,5357=>730,5358=>730,5359=>730,5360=>730,5361=>730, +5362=>730,5363=>730,5364=>730,5365=>730,5366=>998,5367=>958,5368=>967,5369=>989,5370=>967,5371=>989, +5372=>998,5373=>958,5374=>998,5375=>958,5376=>967,5377=>989,5378=>967,5379=>989,5380=>967,5381=>493, +5382=>460,5383=>493,5392=>923,5393=>923,5394=>923,5395=>1136,5396=>1136,5397=>1136,5398=>1136,5399=>1209, +5400=>1202,5401=>1209,5402=>1202,5403=>1209,5404=>1202,5405=>1431,5406=>1420,5407=>1431,5408=>1420,5409=>1431, +5410=>1420,5411=>1431,5412=>1420,5413=>746,5414=>776,5415=>776,5416=>776,5417=>776,5418=>776,5419=>776, +5420=>776,5421=>776,5422=>776,5423=>1003,5424=>1003,5425=>1013,5426=>996,5427=>1013,5428=>996,5429=>1003, +5430=>1003,5431=>1003,5432=>1003,5433=>1013,5434=>996,5435=>1013,5436=>996,5437=>1013,5438=>495,5440=>395, +5441=>510,5442=>1033,5443=>1033,5444=>976,5445=>976,5446=>976,5447=>976,5448=>733,5449=>733,5450=>733, +5451=>733,5452=>733,5453=>733,5454=>1003,5455=>959,5456=>495,5458=>886,5459=>774,5460=>774,5461=>774, +5462=>774,5463=>928,5464=>928,5465=>928,5466=>928,5467=>1172,5468=>1142,5469=>602,5470=>812,5471=>812, +5472=>812,5473=>812,5474=>812,5475=>812,5476=>815,5477=>815,5478=>815,5479=>815,5480=>1060,5481=>1052, +5482=>548,5492=>977,5493=>977,5494=>977,5495=>977,5496=>977,5497=>977,5498=>977,5499=>618,5500=>837, +5501=>510,5502=>1238,5503=>1238,5504=>1238,5505=>1238,5506=>1238,5507=>1238,5508=>1238,5509=>989,5514=>977, +5515=>977,5516=>977,5517=>977,5518=>1591,5519=>1591,5520=>1591,5521=>1295,5522=>1295,5523=>1591,5524=>1591, +5525=>848,5526=>1273,5536=>988,5537=>988,5538=>931,5539=>931,5540=>931,5541=>931,5542=>660,5543=>776, +5544=>776,5545=>776,5546=>776,5547=>776,5548=>776,5549=>776,5550=>495,5551=>743,5598=>830,5601=>830, +5702=>496,5703=>496,5742=>413,5743=>1238,5744=>1591,5745=>2016,5746=>2016,5747=>1720,5748=>1678,5749=>2016, +5750=>2016,5760=>543,5761=>637,5762=>945,5763=>1254,5764=>1563,5765=>1871,5766=>627,5767=>936,5768=>1254, +5769=>1559,5770=>1871,5771=>569,5772=>877,5773=>1187,5774=>1497,5775=>1807,5776=>637,5777=>945,5778=>1240, +5779=>1555,5780=>1871,5781=>569,5782=>569,5783=>789,5784=>1234,5785=>1559,5786=>740,5787=>638,5788=>638, +7424=>652,7425=>833,7426=>1048,7427=>608,7428=>593,7429=>676,7430=>676,7431=>559,7432=>557,7433=>343, +7434=>494,7435=>665,7436=>539,7437=>817,7438=>701,7439=>687,7440=>593,7441=>660,7442=>660,7443=>660, +7444=>1094,7446=>687,7447=>687,7448=>556,7449=>642,7450=>642,7451=>580,7452=>634,7453=>737,7454=>948, +7455=>695,7456=>652,7457=>924,7458=>582,7459=>646,7462=>539,7463=>652,7464=>691,7465=>556,7466=>781, +7467=>732,7468=>487,7469=>683,7470=>480,7472=>523,7473=>430,7474=>430,7475=>517,7476=>527,7477=>234, +7478=>234,7479=>488,7480=>401,7481=>626,7482=>527,7483=>527,7484=>535,7485=>509,7486=>461,7487=>485, +7488=>430,7489=>511,7490=>695,7491=>458,7492=>458,7493=>479,7494=>712,7495=>479,7496=>479,7497=>479, +7498=>479,7499=>386,7500=>386,7501=>479,7502=>219,7503=>487,7504=>664,7505=>456,7506=>488,7507=>414, +7508=>488,7509=>488,7510=>479,7511=>388,7512=>456,7513=>462,7514=>664,7515=>501,7517=>451,7518=>429, +7519=>433,7520=>493,7521=>406,7522=>219,7523=>315,7524=>456,7525=>501,7526=>451,7527=>429,7528=>451, +7529=>493,7530=>406,7543=>716,7544=>527,7547=>545,7549=>747,7557=>514,7579=>479,7580=>414,7581=>414, +7582=>488,7583=>386,7584=>377,7585=>348,7586=>479,7587=>456,7588=>347,7589=>281,7590=>347,7591=>347, +7592=>431,7593=>326,7594=>330,7595=>370,7596=>664,7597=>664,7598=>562,7599=>562,7600=>448,7601=>488, +7602=>542,7603=>422,7604=>396,7605=>388,7606=>583,7607=>494,7608=>399,7609=>451,7610=>501,7611=>417, +7612=>523,7613=>470,7614=>455,7615=>425,7620=>0,7621=>0,7622=>0,7623=>0,7624=>0,7625=>0, +7680=>774,7681=>675,7682=>762,7683=>716,7684=>762,7685=>716,7686=>762,7687=>716,7688=>734,7689=>593, +7690=>830,7691=>716,7692=>830,7693=>716,7694=>830,7695=>716,7696=>830,7697=>716,7698=>830,7699=>716, +7700=>683,7701=>678,7702=>683,7703=>678,7704=>683,7705=>678,7706=>683,7707=>678,7708=>683,7709=>678, +7710=>683,7711=>435,7712=>821,7713=>716,7714=>837,7715=>712,7716=>837,7717=>712,7718=>837,7719=>712, +7720=>837,7721=>712,7722=>837,7723=>712,7724=>372,7725=>343,7726=>372,7727=>343,7728=>775,7729=>665, +7730=>775,7731=>665,7732=>775,7733=>665,7734=>637,7735=>343,7736=>637,7737=>343,7738=>637,7739=>343, +7740=>637,7741=>343,7742=>995,7743=>1042,7744=>995,7745=>1042,7746=>995,7747=>1042,7748=>837,7749=>712, +7750=>837,7751=>712,7752=>837,7753=>712,7754=>837,7755=>712,7756=>850,7757=>687,7758=>850,7759=>687, +7760=>850,7761=>687,7762=>850,7763=>687,7764=>733,7765=>716,7766=>733,7767=>716,7768=>770,7769=>493, +7770=>770,7771=>493,7772=>770,7773=>493,7774=>770,7775=>493,7776=>720,7777=>595,7778=>720,7779=>595, +7780=>720,7781=>595,7782=>720,7783=>595,7784=>720,7785=>595,7786=>682,7787=>478,7788=>682,7789=>478, +7790=>682,7791=>478,7792=>682,7793=>478,7794=>812,7795=>712,7796=>812,7797=>712,7798=>812,7799=>712, +7800=>812,7801=>712,7802=>812,7803=>712,7804=>774,7805=>652,7806=>774,7807=>652,7808=>1103,7809=>924, +7810=>1103,7811=>924,7812=>1103,7813=>924,7814=>1103,7815=>924,7816=>1103,7817=>924,7818=>771,7819=>645, +7820=>771,7821=>645,7822=>724,7823=>652,7824=>725,7825=>582,7826=>725,7827=>582,7828=>725,7829=>582, +7830=>712,7831=>478,7832=>924,7833=>652,7834=>675,7835=>435,7836=>435,7837=>435,7838=>896,7839=>687, +7840=>774,7841=>675,7842=>774,7843=>675,7844=>774,7845=>675,7846=>774,7847=>675,7848=>774,7849=>675, +7850=>774,7851=>675,7852=>774,7853=>675,7854=>774,7855=>675,7856=>774,7857=>675,7858=>774,7859=>675, +7860=>774,7861=>675,7862=>774,7863=>675,7864=>683,7865=>678,7866=>683,7867=>678,7868=>683,7869=>678, +7870=>683,7871=>678,7872=>683,7873=>678,7874=>683,7875=>678,7876=>683,7877=>678,7878=>683,7879=>678, +7880=>372,7881=>343,7882=>372,7883=>343,7884=>850,7885=>687,7886=>850,7887=>687,7888=>850,7889=>687, +7890=>850,7891=>687,7892=>850,7893=>687,7894=>850,7895=>687,7896=>850,7897=>687,7898=>874,7899=>687, +7900=>874,7901=>687,7902=>874,7903=>687,7904=>874,7905=>687,7906=>874,7907=>687,7908=>812,7909=>712, +7910=>812,7911=>712,7912=>835,7913=>712,7914=>835,7915=>712,7916=>835,7917=>712,7918=>835,7919=>712, +7920=>835,7921=>712,7922=>724,7923=>652,7924=>724,7925=>652,7926=>724,7927=>652,7928=>724,7929=>652, +7930=>953,7931=>644,7936=>687,7937=>687,7938=>687,7939=>687,7940=>687,7941=>687,7942=>687,7943=>687, +7944=>774,7945=>774,7946=>1041,7947=>1043,7948=>935,7949=>963,7950=>835,7951=>859,7952=>557,7953=>557, +7954=>557,7955=>557,7956=>557,7957=>557,7960=>792,7961=>794,7962=>1100,7963=>1096,7964=>1023,7965=>1052, +7968=>712,7969=>712,7970=>712,7971=>712,7972=>712,7973=>712,7974=>712,7975=>712,7976=>945,7977=>951, +7978=>1250,7979=>1250,7980=>1180,7981=>1206,7982=>1054,7983=>1063,7984=>390,7985=>390,7986=>390,7987=>390, +7988=>390,7989=>390,7990=>390,7991=>390,7992=>483,7993=>489,7994=>777,7995=>785,7996=>712,7997=>738, +7998=>604,7999=>604,8000=>687,8001=>687,8002=>687,8003=>687,8004=>687,8005=>687,8008=>892,8009=>933, +8010=>1221,8011=>1224,8012=>1053,8013=>1082,8016=>675,8017=>675,8018=>675,8019=>675,8020=>675,8021=>675, +8022=>675,8023=>675,8025=>930,8027=>1184,8029=>1199,8031=>1049,8032=>869,8033=>869,8034=>869,8035=>869, +8036=>869,8037=>869,8038=>869,8039=>869,8040=>909,8041=>958,8042=>1246,8043=>1251,8044=>1076,8045=>1105, +8046=>1028,8047=>1076,8048=>687,8049=>687,8050=>557,8051=>557,8052=>712,8053=>712,8054=>390,8055=>390, +8056=>687,8057=>687,8058=>675,8059=>675,8060=>869,8061=>869,8064=>687,8065=>687,8066=>687,8067=>687, +8068=>687,8069=>687,8070=>687,8071=>687,8072=>774,8073=>774,8074=>1041,8075=>1043,8076=>935,8077=>963, +8078=>835,8079=>859,8080=>712,8081=>712,8082=>712,8083=>712,8084=>712,8085=>712,8086=>712,8087=>712, +8088=>945,8089=>951,8090=>1250,8091=>1250,8092=>1180,8093=>1206,8094=>1054,8095=>1063,8096=>869,8097=>869, +8098=>869,8099=>869,8100=>869,8101=>869,8102=>869,8103=>869,8104=>909,8105=>958,8106=>1246,8107=>1251, +8108=>1076,8109=>1105,8110=>1028,8111=>1076,8112=>687,8113=>687,8114=>687,8115=>687,8116=>687,8118=>687, +8119=>687,8120=>774,8121=>774,8122=>876,8123=>797,8124=>774,8125=>500,8126=>500,8127=>500,8128=>500, +8129=>500,8130=>712,8131=>712,8132=>712,8134=>712,8135=>712,8136=>929,8137=>846,8138=>1080,8139=>1009, +8140=>837,8141=>500,8142=>500,8143=>500,8144=>390,8145=>390,8146=>390,8147=>390,8150=>390,8151=>390, +8152=>372,8153=>372,8154=>621,8155=>563,8157=>500,8158=>500,8159=>500,8160=>675,8161=>675,8162=>675, +8163=>675,8164=>716,8165=>716,8166=>675,8167=>675,8168=>724,8169=>724,8170=>1020,8171=>980,8172=>838, +8173=>500,8174=>500,8175=>500,8178=>869,8179=>869,8180=>869,8182=>869,8183=>869,8184=>1065,8185=>891, +8186=>1084,8187=>894,8188=>850,8189=>500,8190=>500,8192=>500,8193=>1000,8194=>500,8195=>1000,8196=>330, +8197=>250,8198=>167,8199=>696,8200=>380,8201=>200,8202=>100,8203=>0,8204=>0,8205=>0,8206=>0, +8207=>0,8208=>415,8209=>415,8210=>696,8213=>1000,8214=>500,8215=>500,8219=>380,8223=>657,8227=>639, +8228=>333,8229=>667,8231=>348,8232=>0,8233=>0,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0, +8239=>200,8241=>1887,8242=>264,8243=>447,8244=>630,8245=>264,8246=>447,8247=>630,8248=>733,8251=>972, +8252=>627,8253=>580,8254=>500,8255=>828,8256=>828,8257=>329,8258=>1023,8259=>500,8260=>167,8261=>457, +8262=>457,8263=>1030,8264=>829,8265=>829,8266=>513,8267=>636,8268=>500,8269=>500,8270=>523,8271=>400, +8272=>828,8273=>523,8274=>556,8275=>1000,8276=>828,8277=>838,8278=>684,8279=>813,8280=>838,8281=>838, +8282=>380,8283=>872,8284=>838,8285=>380,8286=>380,8287=>222,8288=>0,8289=>0,8290=>0,8291=>0, +8292=>0,8298=>0,8299=>0,8300=>0,8301=>0,8302=>0,8303=>0,8304=>438,8305=>219,8308=>438, +8309=>438,8310=>438,8311=>438,8312=>438,8313=>438,8314=>528,8315=>528,8316=>528,8317=>288,8318=>288, +8319=>456,8320=>438,8321=>438,8322=>438,8323=>438,8324=>438,8325=>438,8326=>438,8327=>438,8328=>438, +8329=>438,8330=>528,8331=>528,8332=>528,8333=>288,8334=>288,8336=>458,8337=>479,8338=>488,8339=>413, +8340=>479,8352=>929,8353=>696,8354=>696,8355=>696,8356=>696,8357=>1042,8358=>837,8359=>1518,8360=>1205, +8361=>1103,8362=>904,8363=>696,8365=>696,8366=>696,8367=>1392,8368=>696,8369=>696,8370=>696,8371=>696, +8372=>859,8373=>696,8376=>696,8377=>696,8400=>0,8401=>0,8406=>0,8407=>0,8411=>0,8412=>0, +8417=>0,8448=>1120,8449=>1170,8450=>734,8451=>1211,8452=>896,8453=>1091,8454=>1144,8455=>614,8456=>698, +8457=>1086,8459=>1073,8460=>913,8461=>888,8462=>712,8463=>712,8464=>597,8465=>697,8466=>856,8467=>472, +8468=>974,8469=>837,8470=>1203,8471=>1000,8472=>697,8473=>750,8474=>850,8475=>938,8476=>814,8477=>801, +8478=>896,8479=>710,8480=>1020,8481=>1281,8483=>755,8484=>754,8485=>578,8486=>850,8487=>850,8488=>763, +8489=>338,8490=>775,8491=>774,8492=>928,8493=>818,8494=>854,8495=>636,8496=>729,8497=>808,8498=>683, +8499=>1184,8500=>465,8501=>794,8502=>731,8503=>494,8504=>684,8505=>380,8506=>945,8507=>1348,8508=>790, +8509=>737,8510=>654,8511=>863,8512=>840,8513=>775,8514=>557,8515=>637,8516=>760,8517=>830,8518=>716, +8519=>678,8520=>343,8521=>343,8523=>872,8526=>547,8528=>1035,8529=>1035,8530=>1483,8531=>1035,8532=>1035, +8533=>1035,8534=>1035,8535=>1035,8536=>1035,8537=>1035,8538=>1035,8539=>1035,8540=>1035,8541=>1035,8542=>1035, +8543=>615,8544=>372,8545=>659,8546=>945,8547=>1099,8548=>774,8549=>1099,8550=>1386,8551=>1672,8552=>1121, +8553=>771,8554=>1120,8555=>1407,8556=>637,8557=>734,8558=>830,8559=>995,8560=>343,8561=>607,8562=>872, +8563=>984,8564=>652,8565=>962,8566=>1227,8567=>1491,8568=>969,8569=>645,8570=>969,8571=>1233,8572=>343, +8573=>593,8574=>716,8575=>1042,8576=>1289,8577=>830,8578=>1289,8579=>734,8580=>593,8581=>734,8585=>1035, +8592=>838,8593=>838,8594=>838,8595=>838,8596=>838,8597=>838,8598=>838,8599=>838,8600=>838,8601=>838, +8602=>838,8603=>838,8604=>838,8605=>838,8606=>838,8607=>838,8608=>838,8609=>838,8610=>838,8611=>838, +8612=>838,8613=>838,8614=>838,8615=>838,8616=>838,8617=>838,8618=>838,8619=>838,8620=>838,8621=>838, +8622=>838,8623=>838,8624=>838,8625=>838,8626=>838,8627=>838,8628=>838,8629=>838,8630=>838,8631=>838, +8632=>838,8633=>838,8634=>838,8635=>838,8636=>838,8637=>838,8638=>838,8639=>838,8640=>838,8641=>838, +8642=>838,8643=>838,8644=>838,8645=>838,8646=>838,8647=>838,8648=>838,8649=>838,8650=>838,8651=>838, +8652=>838,8653=>838,8654=>838,8655=>838,8656=>838,8657=>838,8658=>838,8659=>838,8660=>838,8661=>838, +8662=>838,8663=>838,8664=>838,8665=>838,8666=>838,8667=>838,8668=>838,8669=>838,8670=>838,8671=>838, +8672=>838,8673=>838,8674=>838,8675=>838,8676=>838,8677=>838,8678=>838,8679=>838,8680=>838,8681=>838, +8682=>838,8683=>838,8684=>838,8685=>838,8686=>838,8687=>838,8688=>838,8689=>838,8690=>838,8691=>838, +8692=>838,8693=>838,8694=>838,8695=>838,8696=>838,8697=>838,8698=>838,8699=>838,8700=>838,8701=>838, +8702=>838,8703=>838,8704=>774,8705=>696,8706=>544,8707=>683,8708=>683,8709=>856,8710=>697,8711=>697, +8712=>896,8713=>896,8714=>750,8715=>896,8716=>896,8717=>750,8718=>636,8719=>787,8720=>787,8721=>718, +8722=>838,8723=>838,8724=>696,8725=>365,8726=>696,8727=>838,8728=>626,8729=>380,8730=>667,8731=>667, +8732=>667,8733=>712,8734=>833,8735=>838,8736=>896,8737=>896,8738=>838,8739=>500,8740=>500,8741=>500, +8742=>500,8743=>812,8744=>812,8745=>812,8746=>812,8747=>610,8748=>929,8749=>1295,8750=>563,8751=>977, +8752=>1313,8753=>563,8754=>563,8755=>563,8756=>696,8757=>696,8758=>294,8759=>696,8760=>838,8761=>838, +8762=>838,8763=>838,8764=>838,8765=>838,8766=>838,8767=>838,8768=>375,8769=>838,8770=>838,8771=>838, +8772=>838,8773=>838,8774=>838,8775=>838,8776=>838,8777=>838,8778=>838,8779=>838,8780=>838,8781=>838, +8782=>838,8783=>838,8784=>838,8785=>838,8786=>838,8787=>838,8788=>1063,8789=>1063,8790=>838,8791=>838, +8792=>838,8793=>838,8794=>838,8795=>838,8796=>838,8797=>838,8798=>838,8799=>838,8800=>838,8801=>838, +8802=>838,8803=>838,8804=>838,8805=>838,8806=>838,8807=>838,8808=>841,8809=>841,8810=>1047,8811=>1047, +8812=>500,8813=>838,8814=>838,8815=>838,8816=>838,8817=>838,8818=>838,8819=>838,8820=>838,8821=>838, +8822=>838,8823=>838,8824=>838,8825=>838,8826=>838,8827=>838,8828=>838,8829=>838,8830=>838,8831=>838, +8832=>838,8833=>838,8834=>838,8835=>838,8836=>838,8837=>838,8838=>838,8839=>838,8840=>838,8841=>838, +8842=>838,8843=>838,8844=>812,8845=>812,8846=>812,8847=>838,8848=>838,8849=>838,8850=>838,8851=>796, +8852=>796,8853=>838,8854=>838,8855=>838,8856=>838,8857=>838,8858=>838,8859=>838,8860=>838,8861=>838, +8862=>838,8863=>838,8864=>838,8865=>838,8866=>914,8867=>914,8868=>914,8869=>914,8870=>542,8871=>542, +8872=>914,8873=>914,8874=>914,8875=>914,8876=>914,8877=>914,8878=>914,8879=>914,8880=>838,8881=>838, +8882=>838,8883=>838,8884=>838,8885=>838,8886=>1000,8887=>1000,8888=>838,8889=>838,8890=>542,8891=>812, +8892=>812,8893=>812,8894=>838,8895=>838,8896=>843,8897=>843,8898=>843,8899=>843,8900=>494,8901=>380, +8902=>626,8903=>838,8904=>1000,8905=>1000,8906=>1000,8907=>1000,8908=>1000,8909=>838,8910=>812,8911=>812, +8912=>838,8913=>838,8914=>838,8915=>838,8916=>838,8917=>838,8918=>838,8919=>838,8920=>1422,8921=>1422, +8922=>838,8923=>838,8924=>838,8925=>838,8926=>838,8927=>838,8928=>838,8929=>838,8930=>838,8931=>838, +8932=>838,8933=>838,8934=>838,8935=>838,8936=>838,8937=>838,8938=>838,8939=>838,8940=>838,8941=>838, +8942=>1000,8943=>1000,8944=>1000,8945=>1000,8946=>1158,8947=>896,8948=>750,8949=>896,8950=>896,8951=>750, +8952=>896,8953=>896,8954=>1158,8955=>896,8956=>750,8957=>896,8958=>750,8959=>896,8960=>602,8961=>602, +8962=>716,8963=>838,8964=>838,8965=>838,8966=>838,8967=>488,8968=>457,8969=>457,8970=>457,8971=>457, +8972=>809,8973=>809,8974=>809,8975=>809,8976=>838,8977=>539,8984=>928,8985=>838,8988=>469,8989=>469, +8990=>469,8991=>469,8992=>610,8993=>610,8996=>1152,8997=>1152,8998=>1414,8999=>1152,9000=>1443,9003=>1414, +9004=>873,9075=>390,9076=>716,9077=>869,9082=>687,9085=>863,9095=>1152,9108=>873,9115=>500,9116=>500, +9117=>500,9118=>500,9119=>500,9120=>500,9121=>500,9122=>500,9123=>500,9124=>500,9125=>500,9126=>500, +9127=>750,9128=>750,9129=>750,9130=>750,9131=>750,9132=>750,9133=>750,9134=>610,9166=>838,9167=>945, +9187=>873,9189=>769,9192=>696,9250=>716,9251=>716,9312=>847,9313=>847,9314=>847,9315=>847,9316=>847, +9317=>847,9318=>847,9319=>847,9320=>847,9321=>847,9600=>769,9601=>769,9602=>769,9603=>769,9604=>769, +9605=>769,9606=>769,9607=>769,9608=>769,9609=>769,9610=>769,9611=>769,9612=>769,9613=>769,9614=>769, +9615=>769,9616=>769,9617=>769,9618=>769,9619=>769,9620=>769,9621=>769,9622=>769,9623=>769,9624=>769, +9625=>769,9626=>769,9627=>769,9628=>769,9629=>769,9630=>769,9631=>769,9632=>945,9633=>945,9634=>945, +9635=>945,9636=>945,9637=>945,9638=>945,9639=>945,9640=>945,9641=>945,9642=>678,9643=>678,9644=>945, +9645=>945,9646=>550,9647=>550,9648=>769,9649=>769,9650=>769,9651=>769,9652=>502,9653=>502,9654=>769, +9655=>769,9656=>502,9657=>502,9658=>769,9659=>769,9660=>769,9661=>769,9662=>502,9663=>502,9664=>769, +9665=>769,9666=>502,9667=>502,9668=>769,9669=>769,9670=>769,9671=>769,9672=>769,9673=>873,9674=>494, +9675=>873,9676=>873,9677=>873,9678=>873,9679=>873,9680=>873,9681=>873,9682=>873,9683=>873,9684=>873, +9685=>873,9686=>527,9687=>527,9688=>840,9689=>970,9690=>970,9691=>970,9692=>387,9693=>387,9694=>387, +9695=>387,9696=>769,9697=>769,9698=>769,9699=>769,9700=>769,9701=>769,9702=>639,9703=>945,9704=>945, +9705=>945,9706=>945,9707=>945,9708=>769,9709=>769,9710=>769,9711=>1119,9712=>945,9713=>945,9714=>945, +9715=>945,9716=>873,9717=>873,9718=>873,9719=>873,9720=>769,9721=>769,9722=>769,9723=>830,9724=>830, +9725=>732,9726=>732,9727=>769,9728=>896,9729=>1000,9730=>896,9731=>896,9732=>896,9733=>896,9734=>896, +9735=>573,9736=>896,9737=>896,9738=>888,9739=>888,9740=>671,9741=>1013,9742=>1246,9743=>1250,9744=>896, +9745=>896,9746=>896,9747=>532,9748=>896,9749=>896,9750=>896,9751=>896,9752=>896,9753=>896,9754=>896, +9755=>896,9756=>896,9757=>609,9758=>896,9759=>609,9760=>896,9761=>896,9762=>896,9763=>896,9764=>669, +9765=>746,9766=>649,9767=>784,9768=>545,9769=>896,9770=>896,9771=>896,9772=>710,9773=>896,9774=>896, +9775=>896,9776=>896,9777=>896,9778=>896,9779=>896,9780=>896,9781=>896,9782=>896,9783=>896,9784=>896, +9785=>896,9786=>896,9787=>896,9788=>896,9789=>896,9790=>896,9791=>614,9792=>732,9793=>732,9794=>896, +9795=>896,9796=>896,9797=>896,9798=>896,9799=>896,9800=>896,9801=>896,9802=>896,9803=>896,9804=>896, +9805=>896,9806=>896,9807=>896,9808=>896,9809=>896,9810=>896,9811=>896,9812=>896,9813=>896,9814=>896, +9815=>896,9816=>896,9817=>896,9818=>896,9819=>896,9820=>896,9821=>896,9822=>896,9823=>896,9824=>896, +9825=>896,9826=>896,9827=>896,9828=>896,9829=>896,9830=>896,9831=>896,9832=>896,9833=>472,9834=>638, +9835=>896,9836=>896,9837=>472,9838=>357,9839=>484,9840=>748,9841=>766,9842=>896,9843=>896,9844=>896, +9845=>896,9846=>896,9847=>896,9848=>896,9849=>896,9850=>896,9851=>896,9852=>896,9853=>896,9854=>896, +9855=>896,9856=>869,9857=>869,9858=>869,9859=>869,9860=>869,9861=>869,9862=>896,9863=>896,9864=>896, +9865=>896,9866=>896,9867=>896,9868=>896,9869=>896,9870=>896,9871=>896,9872=>896,9873=>896,9874=>896, +9875=>896,9876=>896,9877=>541,9878=>896,9879=>896,9880=>896,9881=>896,9882=>896,9883=>896,9884=>896, +9888=>896,9889=>702,9890=>1004,9891=>1089,9892=>1175,9893=>903,9894=>838,9895=>838,9896=>838,9897=>838, +9898=>838,9899=>838,9900=>838,9901=>838,9902=>838,9903=>838,9904=>844,9905=>838,9906=>732,9907=>732, +9908=>732,9909=>732,9910=>850,9911=>732,9912=>732,9920=>838,9921=>838,9922=>838,9923=>838,9985=>838, +9986=>838,9987=>838,9988=>838,9990=>838,9991=>838,9992=>838,9993=>838,9996=>838,9997=>838,9998=>838, +9999=>838,10000=>838,10001=>838,10002=>838,10003=>838,10004=>838,10005=>838,10006=>838,10007=>838,10008=>838, +10009=>838,10010=>838,10011=>838,10012=>838,10013=>838,10014=>838,10015=>838,10016=>838,10017=>838,10018=>838, +10019=>838,10020=>838,10021=>838,10022=>838,10023=>838,10025=>838,10026=>838,10027=>838,10028=>838,10029=>838, +10030=>838,10031=>838,10032=>838,10033=>838,10034=>838,10035=>838,10036=>838,10037=>838,10038=>838,10039=>838, +10040=>838,10041=>838,10042=>838,10043=>838,10044=>838,10045=>838,10046=>838,10047=>838,10048=>838,10049=>838, +10050=>838,10051=>838,10052=>838,10053=>838,10054=>838,10055=>838,10056=>838,10057=>838,10058=>838,10059=>838, +10061=>896,10063=>896,10064=>896,10065=>896,10066=>896,10070=>896,10072=>838,10073=>838,10074=>838,10075=>347, +10076=>347,10077=>587,10078=>587,10081=>838,10082=>838,10083=>838,10084=>838,10085=>838,10086=>838,10087=>838, +10088=>838,10089=>838,10090=>838,10091=>838,10092=>838,10093=>838,10094=>838,10095=>838,10096=>838,10097=>838, +10098=>838,10099=>838,10100=>838,10101=>838,10102=>847,10103=>847,10104=>847,10105=>847,10106=>847,10107=>847, +10108=>847,10109=>847,10110=>847,10111=>847,10112=>838,10113=>838,10114=>838,10115=>838,10116=>838,10117=>838, +10118=>838,10119=>838,10120=>838,10121=>838,10122=>838,10123=>838,10124=>838,10125=>838,10126=>838,10127=>838, +10128=>838,10129=>838,10130=>838,10131=>838,10132=>838,10136=>838,10137=>838,10138=>838,10139=>838,10140=>838, +10141=>838,10142=>838,10143=>838,10144=>838,10145=>838,10146=>838,10147=>838,10148=>838,10149=>838,10150=>838, +10151=>838,10152=>838,10153=>838,10154=>838,10155=>838,10156=>838,10157=>838,10158=>838,10159=>838,10161=>838, +10162=>838,10163=>838,10164=>838,10165=>838,10166=>838,10167=>838,10168=>838,10169=>838,10170=>838,10171=>838, +10172=>838,10173=>838,10174=>838,10181=>457,10182=>457,10208=>494,10214=>487,10215=>487,10216=>457,10217=>457, +10218=>721,10219=>721,10224=>838,10225=>838,10226=>838,10227=>838,10228=>1157,10229=>1434,10230=>1434,10231=>1434, +10232=>1434,10233=>1434,10234=>1434,10235=>1434,10236=>1434,10237=>1434,10238=>1434,10239=>1434,10240=>781,10241=>781, +10242=>781,10243=>781,10244=>781,10245=>781,10246=>781,10247=>781,10248=>781,10249=>781,10250=>781,10251=>781, +10252=>781,10253=>781,10254=>781,10255=>781,10256=>781,10257=>781,10258=>781,10259=>781,10260=>781,10261=>781, +10262=>781,10263=>781,10264=>781,10265=>781,10266=>781,10267=>781,10268=>781,10269=>781,10270=>781,10271=>781, +10272=>781,10273=>781,10274=>781,10275=>781,10276=>781,10277=>781,10278=>781,10279=>781,10280=>781,10281=>781, +10282=>781,10283=>781,10284=>781,10285=>781,10286=>781,10287=>781,10288=>781,10289=>781,10290=>781,10291=>781, +10292=>781,10293=>781,10294=>781,10295=>781,10296=>781,10297=>781,10298=>781,10299=>781,10300=>781,10301=>781, +10302=>781,10303=>781,10304=>781,10305=>781,10306=>781,10307=>781,10308=>781,10309=>781,10310=>781,10311=>781, +10312=>781,10313=>781,10314=>781,10315=>781,10316=>781,10317=>781,10318=>781,10319=>781,10320=>781,10321=>781, +10322=>781,10323=>781,10324=>781,10325=>781,10326=>781,10327=>781,10328=>781,10329=>781,10330=>781,10331=>781, +10332=>781,10333=>781,10334=>781,10335=>781,10336=>781,10337=>781,10338=>781,10339=>781,10340=>781,10341=>781, +10342=>781,10343=>781,10344=>781,10345=>781,10346=>781,10347=>781,10348=>781,10349=>781,10350=>781,10351=>781, +10352=>781,10353=>781,10354=>781,10355=>781,10356=>781,10357=>781,10358=>781,10359=>781,10360=>781,10361=>781, +10362=>781,10363=>781,10364=>781,10365=>781,10366=>781,10367=>781,10368=>781,10369=>781,10370=>781,10371=>781, +10372=>781,10373=>781,10374=>781,10375=>781,10376=>781,10377=>781,10378=>781,10379=>781,10380=>781,10381=>781, +10382=>781,10383=>781,10384=>781,10385=>781,10386=>781,10387=>781,10388=>781,10389=>781,10390=>781,10391=>781, +10392=>781,10393=>781,10394=>781,10395=>781,10396=>781,10397=>781,10398=>781,10399=>781,10400=>781,10401=>781, +10402=>781,10403=>781,10404=>781,10405=>781,10406=>781,10407=>781,10408=>781,10409=>781,10410=>781,10411=>781, +10412=>781,10413=>781,10414=>781,10415=>781,10416=>781,10417=>781,10418=>781,10419=>781,10420=>781,10421=>781, +10422=>781,10423=>781,10424=>781,10425=>781,10426=>781,10427=>781,10428=>781,10429=>781,10430=>781,10431=>781, +10432=>781,10433=>781,10434=>781,10435=>781,10436=>781,10437=>781,10438=>781,10439=>781,10440=>781,10441=>781, +10442=>781,10443=>781,10444=>781,10445=>781,10446=>781,10447=>781,10448=>781,10449=>781,10450=>781,10451=>781, +10452=>781,10453=>781,10454=>781,10455=>781,10456=>781,10457=>781,10458=>781,10459=>781,10460=>781,10461=>781, +10462=>781,10463=>781,10464=>781,10465=>781,10466=>781,10467=>781,10468=>781,10469=>781,10470=>781,10471=>781, +10472=>781,10473=>781,10474=>781,10475=>781,10476=>781,10477=>781,10478=>781,10479=>781,10480=>781,10481=>781, +10482=>781,10483=>781,10484=>781,10485=>781,10486=>781,10487=>781,10488=>781,10489=>781,10490=>781,10491=>781, +10492=>781,10493=>781,10494=>781,10495=>781,10502=>838,10503=>838,10506=>838,10507=>838,10560=>838,10561=>838, +10627=>753,10628=>753,10702=>838,10703=>1046,10704=>1046,10705=>1000,10706=>1000,10707=>1000,10708=>1000,10709=>1000, +10731=>494,10746=>838,10747=>838,10752=>1000,10753=>1000,10754=>1000,10764=>1661,10765=>563,10766=>563,10767=>563, +10768=>563,10769=>563,10770=>563,10771=>563,10772=>563,10773=>563,10774=>563,10775=>563,10776=>563,10777=>563, +10778=>563,10779=>563,10780=>563,10799=>838,10877=>838,10878=>838,10879=>838,10880=>838,10881=>838,10882=>838, +10883=>838,10884=>838,10885=>838,10886=>838,10887=>838,10888=>838,10889=>838,10890=>838,10891=>838,10892=>838, +10893=>838,10894=>838,10895=>838,10896=>838,10897=>838,10898=>838,10899=>838,10900=>838,10901=>838,10902=>838, +10903=>838,10904=>838,10905=>838,10906=>838,10907=>838,10908=>838,10909=>838,10910=>838,10911=>838,10912=>838, +10926=>838,10927=>838,10928=>838,10929=>838,10930=>838,10931=>838,10932=>838,10933=>838,10934=>838,10935=>838, +10936=>838,10937=>838,10938=>838,11001=>838,11002=>838,11008=>838,11009=>838,11010=>838,11011=>838,11012=>838, +11013=>838,11014=>838,11015=>838,11016=>838,11017=>838,11018=>838,11019=>838,11020=>838,11021=>838,11022=>838, +11023=>838,11024=>838,11025=>838,11026=>945,11027=>945,11028=>945,11029=>945,11030=>769,11031=>769,11032=>769, +11033=>769,11034=>945,11039=>869,11040=>869,11041=>873,11042=>873,11043=>873,11044=>1119,11091=>869,11092=>869, +11360=>637,11361=>360,11362=>637,11363=>733,11364=>770,11365=>675,11366=>478,11367=>956,11368=>712,11369=>775, +11370=>665,11371=>725,11372=>582,11373=>860,11374=>995,11375=>774,11376=>860,11377=>778,11378=>1221,11379=>1056, +11380=>652,11381=>698,11382=>565,11383=>782,11385=>538,11386=>687,11387=>559,11388=>219,11389=>487,11390=>720, +11391=>725,11568=>691,11569=>941,11570=>941,11571=>725,11572=>725,11573=>725,11574=>676,11575=>774,11576=>774, +11577=>683,11578=>683,11579=>802,11580=>989,11581=>761,11582=>623,11583=>761,11584=>941,11585=>941,11586=>373, +11587=>740,11588=>837,11589=>914,11590=>672,11591=>737,11592=>680,11593=>683,11594=>602,11595=>1039,11596=>778, +11597=>837,11598=>683,11599=>372,11600=>778,11601=>373,11602=>725,11603=>691,11604=>941,11605=>941,11606=>837, +11607=>373,11608=>836,11609=>941,11610=>941,11611=>734,11612=>876,11613=>771,11614=>734,11615=>683,11616=>774, +11617=>837,11618=>683,11619=>850,11620=>697,11621=>850,11631=>716,11800=>580,11810=>457,11811=>457,11812=>457, +11813=>457,11822=>580,19904=>896,19905=>896,19906=>896,19907=>896,19908=>896,19909=>896,19910=>896,19911=>896, +19912=>896,19913=>896,19914=>896,19915=>896,19916=>896,19917=>896,19918=>896,19919=>896,19920=>896,19921=>896, +19922=>896,19923=>896,19924=>896,19925=>896,19926=>896,19927=>896,19928=>896,19929=>896,19930=>896,19931=>896, +19932=>896,19933=>896,19934=>896,19935=>896,19936=>896,19937=>896,19938=>896,19939=>896,19940=>896,19941=>896, +19942=>896,19943=>896,19944=>896,19945=>896,19946=>896,19947=>896,19948=>896,19949=>896,19950=>896,19951=>896, +19952=>896,19953=>896,19954=>896,19955=>896,19956=>896,19957=>896,19958=>896,19959=>896,19960=>896,19961=>896, +19962=>896,19963=>896,19964=>896,19965=>896,19966=>896,19967=>896,42564=>720,42565=>595,42566=>436,42567=>440, +42572=>1405,42573=>1173,42576=>1234,42577=>1027,42580=>1174,42581=>972,42582=>1093,42583=>958,42594=>1085,42595=>924, +42596=>1096,42597=>912,42598=>1260,42599=>997,42600=>850,42601=>687,42602=>1037,42603=>868,42604=>1406,42605=>1106, +42606=>961,42634=>963,42635=>787,42636=>682,42637=>580,42644=>808,42645=>712,42760=>500,42761=>500,42762=>500, +42763=>500,42764=>500,42765=>500,42766=>500,42767=>500,42768=>500,42769=>500,42770=>500,42771=>500,42772=>500, +42773=>500,42774=>500,42779=>400,42780=>400,42781=>287,42782=>287,42783=>287,42786=>444,42787=>390,42788=>540, +42789=>540,42790=>837,42791=>712,42792=>1031,42793=>857,42794=>696,42795=>557,42800=>559,42801=>595,42802=>1349, +42803=>1052,42804=>1284,42805=>1064,42806=>1216,42807=>1054,42808=>1079,42809=>922,42810=>1079,42811=>922,42812=>1035, +42813=>922,42814=>698,42815=>549,42822=>850,42823=>542,42824=>683,42825=>531,42826=>918,42827=>814,42830=>1406, +42831=>1106,42832=>733,42833=>716,42834=>948,42835=>937,42838=>850,42839=>716,42852=>738,42853=>716,42854=>738, +42855=>716,42880=>637,42881=>343,42882=>837,42883=>712,42889=>400,42890=>386,42891=>456,42892=>306,42893=>808, +43003=>683,43004=>733,43005=>995,43006=>372,43007=>1325,61184=>216,61185=>242,61186=>267,61187=>277,61188=>282, +61189=>242,61190=>216,61191=>242,61192=>267,61193=>277,61194=>267,61195=>242,61196=>216,61197=>242,61198=>267, +61199=>277,61200=>267,61201=>242,61202=>216,61203=>242,61204=>282,61205=>277,61206=>267,61207=>242,61208=>216, +61209=>282,63173=>687,64256=>810,64257=>741,64258=>741,64259=>1115,64260=>1116,64261=>808,64262=>1020,64275=>1388, +64276=>1384,64277=>1378,64278=>1384,64279=>1713,64285=>343,64286=>0,64287=>663,64288=>720,64289=>963,64290=>890, +64291=>988,64292=>963,64293=>938,64294=>988,64295=>988,64296=>976,64297=>838,64298=>949,64299=>949,64300=>949, +64301=>949,64302=>751,64303=>751,64304=>751,64305=>673,64306=>537,64307=>654,64308=>712,64309=>438,64310=>491, +64312=>724,64313=>438,64314=>649,64315=>650,64316=>679,64318=>775,64320=>497,64321=>773,64323=>718,64324=>687, +64326=>751,64327=>729,64328=>649,64329=>949,64330=>751,64331=>343,64332=>673,64333=>650,64334=>687,64335=>651, +64338=>1005,64339=>1059,64340=>375,64341=>408,64342=>1005,64343=>1059,64344=>375,64345=>408,64346=>1005,64347=>1059, +64348=>375,64349=>408,64350=>1005,64351=>1059,64352=>375,64353=>408,64354=>1005,64355=>1059,64356=>375,64357=>408, +64358=>1005,64359=>1059,64360=>375,64361=>408,64362=>1162,64363=>1191,64364=>655,64365=>720,64366=>1162,64367=>1191, +64368=>655,64369=>720,64370=>721,64371=>721,64372=>721,64373=>721,64374=>721,64375=>721,64376=>721,64377=>721, +64378=>721,64379=>721,64380=>721,64381=>721,64382=>721,64383=>721,64384=>721,64385=>721,64386=>513,64387=>578, +64388=>513,64389=>578,64390=>513,64391=>578,64392=>513,64393=>578,64394=>576,64395=>622,64396=>576,64397=>622, +64398=>1024,64399=>1024,64400=>582,64401=>582,64402=>1024,64403=>1024,64404=>582,64405=>582,64406=>1024,64407=>1024, +64408=>582,64409=>582,64410=>1024,64411=>1024,64412=>582,64413=>582,64414=>854,64415=>900,64416=>854,64417=>900, +64418=>375,64419=>408,64426=>938,64427=>880,64428=>693,64429=>660,64467=>824,64468=>843,64469=>476,64470=>552, +64473=>622,64474=>627,64488=>375,64489=>408,64508=>917,64509=>1012,64510=>375,64511=>408,65024=>0,65025=>0, +65026=>0,65027=>0,65028=>0,65029=>0,65030=>0,65031=>0,65032=>0,65033=>0,65034=>0,65035=>0, +65036=>0,65037=>0,65038=>0,65039=>0,65056=>0,65057=>0,65058=>0,65059=>0,65136=>342,65137=>342, +65138=>342,65139=>346,65140=>342,65142=>342,65143=>342,65144=>342,65145=>342,65146=>342,65147=>342,65148=>342, +65149=>342,65150=>342,65151=>342,65152=>511,65153=>343,65154=>375,65155=>343,65156=>375,65157=>622,65158=>627, +65159=>343,65160=>375,65161=>917,65162=>917,65163=>375,65164=>408,65165=>343,65166=>375,65167=>1005,65168=>1059, +65169=>375,65170=>408,65171=>590,65172=>606,65173=>1005,65174=>1059,65175=>375,65176=>408,65177=>1005,65178=>1059, +65179=>375,65180=>408,65181=>721,65182=>721,65183=>721,65184=>721,65185=>721,65186=>721,65187=>721,65188=>721, +65189=>721,65190=>721,65191=>721,65192=>721,65193=>513,65194=>578,65195=>513,65196=>578,65197=>576,65198=>622, +65199=>576,65200=>622,65201=>1380,65202=>1414,65203=>983,65204=>1018,65205=>1380,65206=>1414,65207=>983,65208=>1018, +65209=>1345,65210=>1364,65211=>966,65212=>985,65213=>1345,65214=>1364,65215=>966,65216=>985,65217=>1039,65218=>1071, +65219=>942,65220=>974,65221=>1039,65222=>1071,65223=>942,65224=>974,65225=>683,65226=>683,65227=>683,65228=>564, +65229=>683,65230=>683,65231=>683,65232=>564,65233=>1162,65234=>1191,65235=>655,65236=>720,65237=>894,65238=>901, +65239=>655,65240=>720,65241=>917,65242=>931,65243=>582,65244=>582,65245=>868,65246=>893,65247=>375,65248=>408, +65249=>733,65250=>784,65251=>619,65252=>670,65253=>854,65254=>900,65255=>375,65256=>408,65257=>590,65258=>606, +65259=>693,65260=>660,65261=>622,65262=>627,65263=>917,65264=>1012,65265=>917,65266=>1012,65267=>375,65268=>408, +65269=>745,65270=>759,65271=>745,65272=>759,65273=>745,65274=>759,65275=>745,65276=>759,65279=>0,65529=>0, +65530=>0,65531=>0,65532=>0,65533=>1113); +$enc=''; +$diff=''; +$file='dejavusansb.z'; +$ctg='dejavusansb.ctg.z'; +$originalsize=634184; +// --- EOF --- \ No newline at end of file diff --git a/libraries/tcpdf/fonts/dejavusansb.z b/libraries/tcpdf/fonts/dejavusansb.z new file mode 100644 index 0000000000000000000000000000000000000000..9f8822295144420a4aa1347a8fe18a1a09d8b357 GIT binary patch literal 318072 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

    WXl@4F_wf}!27_7bRpM`R4?ZS|PK!#=AI&!n` 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 S^p*oI)D0T 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 N4q;}TKw7hvUa;Dz)sI}KB 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

    Vdl)SS;}V(-h`CE|_+Wb;JK9xK5&-u(Zha7{ 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

    {9TlU^qEdDJy|LgjkeEHAM&z~2Z;pUoIs(#{y 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ℜ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 literal 0 HcmV?d00001 diff --git a/libraries/tcpdf/fonts/dejavuserifb.ctg.z b/libraries/tcpdf/fonts/dejavuserifb.ctg.z new file mode 100644 index 0000000000000000000000000000000000000000..cecdd5bc475794e1cf241dedceb306cda26763ca GIT binary patch literal 5717 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,'Descent'=>-236,'CapHeight'=>5,'Flags'=>32,'FontBBox'=>'[-836 -389 1796 1145]','ItalicAngle'=>0,'StemV'=>120,'MissingWidth'=>600); +$up=-63; +$ut=44; +$dw=600; +$cw=array( +0=>600,32=>348,33=>439,34=>521,35=>838,36=>696,37=>950,38=>903,39=>306,40=>473, +41=>473,42=>523,43=>838,44=>348,45=>415,46=>348,47=>365,48=>696,49=>696,50=>696, +51=>696,52=>696,53=>696,54=>696,55=>696,56=>696,57=>696,58=>369,59=>369,60=>838, +61=>838,62=>838,63=>586,64=>1000,65=>776,66=>845,67=>796,68=>867,69=>762,70=>710, +71=>854,72=>945,73=>468,74=>473,75=>869,76=>703,77=>1107,78=>914,79=>871,80=>752, +81=>871,82=>831,83=>722,84=>744,85=>872,86=>776,87=>1123,88=>776,89=>714,90=>730, +91=>473,92=>365,93=>473,94=>838,95=>500,96=>500,97=>648,98=>699,99=>609,100=>699, +101=>636,102=>430,103=>699,104=>727,105=>380,106=>362,107=>693,108=>380,109=>1058,110=>727, +111=>667,112=>699,113=>699,114=>527,115=>563,116=>462,117=>727,118=>581,119=>861,120=>596, +121=>581,122=>568,123=>643,124=>364,125=>643,126=>838,8364=>696,8218=>348,402=>430,8222=>575, +8230=>1000,8224=>523,8225=>523,710=>500,8240=>1385,352=>722,8249=>400,338=>1180,381=>730,8216=>348, +8217=>348,8220=>575,8221=>575,8226=>639,8211=>500,8212=>1000,732=>500,8482=>1000,353=>563,8250=>400, +339=>1028,382=>568,376=>714,160=>348,161=>439,162=>696,163=>696,164=>636,165=>696,166=>364, +167=>523,168=>500,169=>1000,170=>487,171=>625,172=>838,173=>415,174=>1000,175=>500,176=>500, +177=>838,178=>438,179=>438,180=>500,181=>732,182=>636,183=>348,184=>500,185=>438,186=>500, +187=>625,188=>1043,189=>1043,190=>1043,191=>586,192=>776,193=>776,194=>776,195=>776,196=>776, +197=>776,198=>1034,199=>796,200=>762,201=>762,202=>762,203=>762,204=>468,205=>468,206=>468, +207=>468,208=>874,209=>914,210=>871,211=>871,212=>871,213=>871,214=>871,215=>838,216=>871, +217=>872,218=>872,219=>872,220=>872,221=>714,222=>757,223=>760,224=>648,225=>648,226=>648, +227=>648,228=>648,229=>648,230=>975,231=>609,232=>636,233=>636,234=>636,235=>636,236=>380, +237=>380,238=>380,239=>380,240=>667,241=>727,242=>667,243=>667,244=>667,245=>667,246=>667, +247=>838,248=>667,249=>727,250=>727,251=>727,252=>727,253=>581,254=>699,255=>581,256=>776, +257=>648,258=>776,259=>648,260=>776,261=>648,262=>796,263=>609,264=>796,265=>609,266=>796, +267=>609,268=>796,269=>609,270=>867,271=>699,272=>874,273=>699,274=>762,275=>636,276=>762, +277=>636,278=>762,279=>636,280=>762,281=>636,282=>762,283=>636,284=>854,285=>699,286=>854, +287=>699,288=>854,289=>699,290=>854,291=>699,292=>945,293=>727,294=>945,295=>727,296=>468, +297=>380,298=>468,299=>380,300=>468,301=>380,302=>468,303=>380,304=>468,305=>380,306=>942, +307=>751,308=>473,309=>362,310=>869,311=>693,312=>693,313=>703,314=>380,315=>703,316=>380, +317=>703,318=>380,319=>703,320=>380,321=>710,322=>385,323=>914,324=>727,325=>914,326=>727, +327=>914,328=>727,329=>1008,330=>872,331=>727,332=>871,333=>667,334=>871,335=>667,336=>871, +337=>667,340=>831,341=>527,342=>831,343=>527,344=>831,345=>527,346=>722,347=>563,348=>722, +349=>563,350=>722,351=>563,354=>744,355=>462,356=>744,357=>462,358=>744,359=>462,360=>872, +361=>727,362=>872,363=>727,364=>872,365=>727,366=>872,367=>727,368=>872,369=>727,370=>872, +371=>727,372=>1123,373=>861,374=>714,375=>581,377=>730,378=>568,379=>730,380=>568,383=>430, +384=>699,385=>845,386=>854,387=>699,388=>854,389=>699,390=>796,391=>796,392=>609,393=>874, +394=>867,395=>854,396=>699,397=>667,398=>762,399=>871,400=>721,401=>710,403=>854,404=>771, +405=>1043,406=>468,407=>468,408=>869,409=>693,410=>380,411=>701,412=>1058,413=>914,414=>727, +415=>871,416=>871,417=>667,418=>1200,419=>943,420=>752,421=>699,422=>831,423=>722,424=>563, +425=>707,426=>331,427=>462,428=>744,429=>462,430=>744,431=>872,432=>727,433=>890,434=>890, +435=>714,436=>708,437=>730,438=>568,439=>657,440=>657,441=>657,443=>696,444=>754,445=>568, +446=>536,447=>716,448=>295,449=>492,450=>459,451=>295,452=>1597,453=>1435,454=>1267,455=>1176, +456=>1065,457=>742,458=>1387,459=>1276,460=>1089,461=>776,462=>648,463=>468,464=>380,465=>871, +466=>667,467=>872,468=>727,469=>872,470=>727,471=>872,472=>727,473=>872,474=>727,475=>872, +476=>727,477=>636,478=>776,479=>648,480=>776,481=>648,482=>1034,483=>975,484=>896,485=>699, +486=>854,487=>699,488=>869,489=>693,490=>871,491=>667,492=>871,493=>667,494=>657,495=>568, +496=>380,497=>1597,498=>1435,499=>1267,500=>854,501=>699,502=>1221,503=>787,504=>914,505=>727, +506=>776,507=>648,508=>1034,509=>975,510=>871,511=>667,512=>776,513=>648,514=>776,515=>648, +516=>762,517=>636,518=>762,519=>636,520=>468,521=>380,522=>468,523=>380,524=>871,525=>667, +526=>871,527=>667,528=>831,529=>527,530=>831,531=>527,532=>872,533=>727,534=>872,535=>727, +536=>722,537=>563,538=>744,539=>462,540=>690,541=>607,542=>945,543=>727,544=>872,545=>791, +546=>703,547=>586,548=>730,549=>568,550=>776,551=>648,552=>762,553=>636,554=>871,555=>667, +556=>871,557=>667,558=>871,559=>667,560=>871,561=>667,562=>714,563=>581,564=>573,565=>922, +566=>564,567=>362,568=>1031,569=>1031,570=>776,571=>796,572=>609,573=>703,574=>744,575=>563, +576=>568,577=>660,578=>547,579=>845,580=>872,581=>776,582=>762,583=>636,584=>473,585=>387, +586=>848,587=>699,588=>831,589=>527,590=>714,591=>581,592=>648,593=>699,594=>699,595=>699, +596=>609,597=>609,598=>699,599=>730,600=>636,601=>636,602=>907,603=>608,604=>562,605=>907, +606=>720,607=>387,608=>699,609=>699,610=>626,611=>712,612=>627,613=>727,614=>727,615=>727, +616=>380,617=>380,618=>380,619=>409,620=>514,621=>380,622=>795,623=>1058,624=>1058,625=>1058, +626=>727,627=>727,628=>712,629=>667,630=>1061,631=>749,632=>667,633=>571,634=>571,635=>571, +636=>527,637=>527,638=>452,639=>487,640=>801,641=>801,642=>563,643=>331,644=>430,645=>540, +646=>331,647=>492,648=>462,649=>727,650=>679,651=>694,652=>641,653=>907,654=>635,655=>727, +656=>568,657=>568,658=>568,659=>568,660=>536,661=>536,662=>536,663=>545,664=>871,665=>695, +666=>720,667=>626,668=>732,669=>384,670=>740,671=>646,672=>699,673=>536,674=>536,675=>1117, +676=>1179,677=>1117,678=>911,679=>715,680=>909,681=>1039,682=>790,683=>795,684=>662,685=>443, +686=>613,687=>717,688=>521,689=>519,690=>313,691=>414,692=>414,693=>480,694=>527,695=>662, +696=>485,697=>302,699=>348,700=>348,701=>348,702=>366,703=>366,704=>313,705=>313,711=>500, +712=>282,713=>500,716=>282,717=>500,720=>369,721=>369,722=>366,723=>366,726=>392,728=>500, +729=>500,730=>500,731=>500,733=>500,734=>417,736=>458,737=>292,738=>395,739=>475,740=>313, +741=>500,742=>500,743=>500,744=>500,745=>500,750=>553,768=>0,769=>0,770=>0,771=>0, +772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0, +782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0, +792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0, +802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0, +812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0, +822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0, +835=>0,847=>0,856=>0,865=>0,880=>779,881=>576,884=>302,885=>302,890=>500,891=>609, +892=>609,893=>609,894=>369,900=>500,901=>500,902=>776,903=>348,904=>947,905=>1118,906=>662, +908=>887,910=>953,911=>911,912=>484,913=>776,914=>845,915=>710,916=>776,917=>762,918=>730, +919=>945,920=>871,921=>468,922=>869,923=>776,924=>1107,925=>914,926=>704,927=>871,928=>944, +929=>752,931=>707,932=>744,933=>714,934=>871,935=>776,936=>913,937=>890,938=>468,939=>714, +940=>770,941=>608,942=>727,943=>484,944=>694,945=>770,946=>664,947=>660,948=>667,949=>608, +950=>592,951=>727,952=>667,953=>484,954=>750,955=>701,956=>732,957=>694,958=>592,959=>667, +960=>732,961=>665,962=>609,963=>737,964=>673,965=>694,966=>905,967=>658,968=>941,969=>952, +970=>484,971=>694,972=>667,973=>694,974=>952,976=>667,977=>849,978=>764,979=>969,980=>764, +981=>941,982=>952,983=>655,984=>871,985=>667,986=>796,987=>609,988=>710,989=>527,990=>590, +991=>660,992=>796,993=>667,1008=>655,1009=>665,1010=>609,1011=>362,1012=>871,1013=>609,1014=>609, +1015=>757,1016=>699,1017=>796,1018=>1107,1019=>860,1020=>692,1021=>796,1022=>796,1023=>796,1024=>762, +1025=>762,1026=>901,1027=>690,1028=>795,1029=>722,1030=>468,1031=>468,1032=>473,1033=>1202,1034=>1262, +1035=>963,1036=>910,1037=>945,1038=>812,1039=>945,1040=>814,1041=>854,1042=>845,1043=>690,1044=>889, +1045=>762,1046=>1312,1047=>721,1048=>945,1049=>945,1050=>910,1051=>884,1052=>1107,1053=>945,1054=>871, +1055=>944,1056=>752,1057=>796,1058=>744,1059=>812,1060=>949,1061=>776,1062=>966,1063=>913,1064=>1268, +1065=>1293,1066=>957,1067=>1202,1068=>825,1069=>795,1070=>1287,1071=>882,1072=>648,1073=>667,1074=>695, +1075=>613,1076=>667,1077=>636,1078=>1010,1079=>638,1080=>742,1081=>742,1082=>722,1083=>705,1084=>869, +1085=>732,1086=>667,1087=>732,1088=>699,1089=>609,1090=>620,1091=>640,1092=>902,1093=>596,1094=>739, +1095=>732,1096=>1075,1097=>1082,1098=>767,1099=>1002,1100=>679,1101=>609,1102=>1025,1103=>739,1104=>636, +1105=>636,1106=>719,1107=>613,1108=>609,1109=>563,1110=>380,1111=>380,1112=>362,1113=>988,1114=>1015, +1115=>727,1116=>722,1117=>742,1118=>640,1119=>732,1122=>880,1123=>703,1124=>1195,1125=>963,1130=>1312, +1131=>1010,1136=>1096,1137=>1105,1138=>871,1139=>652,1140=>916,1141=>749,1164=>846,1165=>673,1168=>700, +1169=>618,1170=>690,1171=>613,1172=>868,1173=>716,1174=>1312,1175=>1010,1176=>721,1177=>638,1178=>947, +1179=>744,1182=>910,1183=>722,1184=>1041,1185=>827,1186=>966,1187=>739,1188=>1167,1189=>956,1190=>1345, +1191=>1059,1194=>796,1195=>609,1196=>744,1197=>620,1198=>714,1199=>581,1200=>714,1201=>581,1202=>866, +1203=>649,1204=>1022,1205=>807,1206=>928,1207=>739,1210=>910,1211=>727,1216=>468,1217=>1312,1218=>1010, +1219=>869,1220=>693,1223=>945,1224=>732,1227=>913,1228=>732,1231=>380,1232=>814,1233=>648,1234=>814, +1235=>648,1236=>1034,1237=>975,1238=>762,1239=>636,1240=>871,1241=>636,1242=>871,1243=>636,1244=>1312, +1245=>1010,1246=>721,1247=>638,1248=>657,1249=>568,1250=>945,1251=>742,1252=>945,1253=>742,1254=>871, +1255=>667,1256=>871,1257=>667,1258=>871,1259=>667,1260=>795,1261=>609,1262=>812,1263=>640,1264=>812, +1265=>640,1266=>812,1267=>640,1268=>913,1269=>732,1270=>690,1271=>613,1272=>1202,1273=>1002,1296=>721, +1297=>638,1298=>884,1299=>705,1300=>1248,1301=>945,1306=>820,1307=>640,1308=>1028,1309=>856,4256=>755, +4257=>936,4258=>866,4259=>874,4260=>781,4261=>1078,4262=>1014,4263=>1213,4264=>643,4265=>818,4266=>1051, +4267=>1051,4268=>796,4269=>1135,4270=>969,4271=>902,4272=>1109,4273=>792,4274=>756,4275=>1076,4276=>976, +4277=>1066,4278=>811,4279=>833,4280=>821,4281=>833,4282=>908,4283=>1077,4284=>769,4285=>822,4286=>813, +4287=>1111,4288=>1123,4289=>802,4290=>892,4291=>802,4292=>880,4293=>1063,4304=>594,4305=>625,4306=>643, +4307=>887,4308=>615,4309=>611,4310=>667,4311=>915,4312=>613,4313=>600,4314=>1120,4315=>640,4316=>640, +4317=>879,4318=>624,4319=>634,4320=>877,4321=>666,4322=>780,4323=>751,4324=>869,4325=>639,4326=>912, +4327=>622,4328=>647,4329=>640,4330=>729,4331=>641,4332=>630,4333=>629,4334=>670,4335=>753,4336=>625, +4337=>657,4338=>625,4339=>625,4340=>624,4341=>670,4342=>940,4343=>680,4344=>636,4345=>672,4346=>625, +4347=>588,4348=>354,7426=>940,7432=>509,7433=>320,7444=>989,7446=>667,7447=>667,7453=>737,7454=>948, +7455=>948,7468=>489,7469=>651,7470=>532,7472=>546,7473=>480,7474=>480,7475=>538,7476=>595,7477=>294, +7478=>298,7479=>547,7480=>443,7481=>697,7482=>576,7483=>576,7484=>548,7486=>474,7487=>523,7488=>455, +7489=>469,7490=>549,7491=>466,7492=>466,7493=>498,7494=>657,7495=>499,7496=>498,7497=>444,7498=>444, +7499=>412,7500=>412,7501=>498,7502=>300,7503=>523,7504=>729,7505=>473,7506=>467,7507=>427,7508=>467, +7509=>467,7510=>499,7511=>371,7512=>520,7513=>434,7514=>729,7515=>491,7522=>239,7523=>414,7524=>520, +7525=>491,7543=>640,7544=>595,7547=>380,7557=>380,7579=>498,7580=>427,7581=>427,7582=>467,7583=>412, +7584=>383,7585=>373,7586=>498,7587=>522,7588=>300,7589=>307,7590=>300,7591=>300,7592=>370,7593=>368, +7594=>321,7595=>430,7596=>682,7597=>729,7598=>588,7599=>587,7600=>472,7601=>467,7602=>522,7603=>400, +7604=>387,7605=>371,7606=>520,7607=>475,7609=>489,7610=>491,7611=>412,7612=>527,7613=>412,7614=>452, +7615=>467,7620=>0,7621=>0,7622=>0,7623=>0,7624=>0,7625=>0,7680=>776,7681=>648,7682=>845, +7683=>699,7684=>845,7685=>699,7686=>845,7687=>699,7688=>796,7689=>609,7690=>867,7691=>699,7692=>867, +7693=>699,7694=>867,7695=>699,7696=>867,7697=>699,7698=>867,7699=>699,7700=>762,7701=>636,7702=>762, +7703=>636,7704=>762,7705=>636,7706=>762,7707=>636,7708=>762,7709=>636,7710=>710,7711=>430,7712=>854, +7713=>699,7714=>945,7715=>727,7716=>945,7717=>727,7718=>945,7719=>727,7720=>945,7721=>727,7722=>945, +7723=>727,7724=>468,7725=>380,7726=>468,7727=>380,7728=>869,7729=>693,7730=>869,7731=>693,7732=>869, +7733=>693,7734=>703,7735=>380,7736=>703,7737=>380,7738=>703,7739=>380,7740=>703,7741=>380,7742=>1107, +7743=>1058,7744=>1107,7745=>1058,7746=>1107,7747=>1058,7748=>914,7749=>727,7750=>914,7751=>727,7752=>914, +7753=>727,7754=>914,7755=>727,7756=>871,7757=>667,7758=>871,7759=>667,7760=>871,7761=>667,7762=>871, +7763=>667,7764=>752,7765=>699,7766=>752,7767=>699,7768=>831,7769=>527,7770=>831,7771=>527,7772=>831, +7773=>527,7774=>831,7775=>527,7776=>722,7777=>563,7778=>722,7779=>563,7780=>722,7781=>563,7782=>722, +7783=>563,7784=>722,7785=>563,7786=>744,7787=>462,7788=>744,7789=>462,7790=>744,7791=>462,7792=>744, +7793=>462,7794=>872,7795=>727,7796=>872,7797=>727,7798=>872,7799=>727,7800=>872,7801=>727,7802=>872, +7803=>727,7804=>776,7805=>581,7806=>776,7807=>581,7808=>1123,7809=>861,7810=>1123,7811=>861,7812=>1123, +7813=>861,7814=>1123,7815=>861,7816=>1123,7817=>861,7818=>776,7819=>596,7820=>776,7821=>596,7822=>714, +7823=>581,7824=>730,7825=>568,7826=>730,7827=>568,7828=>730,7829=>568,7830=>727,7831=>462,7832=>861, +7833=>581,7834=>1014,7835=>430,7838=>947,7839=>667,7840=>776,7841=>648,7842=>776,7843=>648,7844=>776, +7845=>648,7846=>776,7847=>648,7848=>776,7849=>648,7850=>776,7851=>648,7852=>776,7853=>648,7854=>776, +7855=>648,7856=>776,7857=>648,7858=>776,7859=>648,7860=>776,7861=>648,7862=>776,7863=>648,7864=>762, +7865=>636,7866=>762,7867=>636,7868=>762,7869=>636,7870=>762,7871=>636,7872=>762,7873=>636,7874=>762, +7875=>636,7876=>762,7877=>636,7878=>762,7879=>636,7880=>468,7881=>380,7882=>468,7883=>380,7884=>871, +7885=>667,7886=>871,7887=>667,7888=>871,7889=>667,7890=>871,7891=>667,7892=>871,7893=>667,7894=>871, +7895=>667,7896=>871,7897=>667,7898=>871,7899=>667,7900=>871,7901=>667,7902=>871,7903=>667,7904=>871, +7905=>667,7906=>871,7907=>667,7908=>872,7909=>727,7910=>872,7911=>727,7912=>872,7913=>727,7914=>872, +7915=>727,7916=>872,7917=>727,7918=>872,7919=>727,7920=>872,7921=>727,7922=>714,7923=>581,7924=>714, +7925=>581,7926=>714,7927=>581,7928=>714,7929=>581,7936=>770,7937=>770,7938=>770,7939=>770,7940=>770, +7941=>770,7942=>770,7943=>770,7944=>776,7945=>776,7946=>978,7947=>978,7948=>832,7949=>849,7950=>776, +7951=>776,7952=>608,7953=>608,7954=>608,7955=>608,7956=>608,7957=>608,7960=>917,7961=>909,7962=>1169, +7963=>1169,7964=>1093,7965=>1120,7968=>727,7969=>727,7970=>727,7971=>727,7972=>727,7973=>727,7974=>727, +7975=>727,7976=>1100,7977=>1094,7978=>1358,7979=>1361,7980=>1279,7981=>1308,7982=>1197,7983=>1194,7984=>484, +7985=>484,7986=>484,7987=>484,7988=>484,7989=>484,7990=>484,7991=>484,7992=>629,7993=>617,7994=>878, +7995=>881,7996=>799,7997=>831,7998=>723,7999=>714,8000=>667,8001=>667,8002=>667,8003=>667,8004=>667, +8005=>667,8008=>900,8009=>935,8010=>1240,8011=>1237,8012=>1035,8013=>1066,8016=>694,8017=>694,8018=>694, +8019=>694,8020=>694,8021=>694,8022=>694,8023=>694,8025=>922,8027=>1186,8029=>1133,8031=>1019,8032=>952, +8033=>952,8034=>952,8035=>952,8036=>952,8037=>952,8038=>952,8039=>952,8040=>931,8041=>963,8042=>1268, +8043=>1274,8044=>1054,8045=>1088,8046=>1023,8047=>1060,8048=>770,8049=>770,8050=>608,8051=>608,8052=>727, +8053=>727,8054=>484,8055=>484,8056=>667,8057=>667,8058=>694,8059=>694,8060=>952,8061=>952,8064=>770, +8065=>770,8066=>770,8067=>770,8068=>770,8069=>770,8070=>770,8071=>770,8072=>776,8073=>776,8074=>978, +8075=>978,8076=>832,8077=>849,8078=>776,8079=>776,8080=>727,8081=>727,8082=>727,8083=>727,8084=>727, +8085=>727,8086=>727,8087=>727,8088=>1100,8089=>1094,8090=>1358,8091=>1361,8092=>1279,8093=>1308,8094=>1197, +8095=>1194,8096=>952,8097=>952,8098=>952,8099=>952,8100=>952,8101=>952,8102=>952,8103=>952,8104=>931, +8105=>963,8106=>1268,8107=>1274,8108=>1054,8109=>1088,8110=>1023,8111=>1060,8112=>770,8113=>770,8114=>770, +8115=>770,8116=>770,8118=>770,8119=>770,8120=>776,8121=>776,8122=>811,8123=>776,8124=>776,8125=>500, +8126=>500,8127=>500,8128=>500,8129=>500,8130=>727,8131=>727,8132=>727,8134=>727,8135=>727,8136=>1000, +8137=>947,8138=>1191,8139=>1118,8140=>945,8141=>500,8142=>500,8143=>500,8144=>484,8145=>484,8146=>484, +8147=>484,8150=>484,8151=>484,8152=>468,8153=>468,8154=>714,8155=>662,8157=>500,8158=>500,8159=>500, +8160=>694,8161=>694,8162=>694,8163=>694,8164=>665,8165=>665,8166=>694,8167=>694,8168=>714,8169=>714, +8170=>1019,8171=>953,8172=>910,8173=>500,8174=>500,8175=>500,8178=>952,8179=>952,8180=>952,8182=>952, +8183=>952,8184=>1069,8185=>887,8186=>1101,8187=>911,8188=>890,8189=>500,8190=>500,8192=>500,8193=>1000, +8194=>500,8195=>1000,8196=>330,8197=>250,8198=>167,8199=>696,8200=>348,8201=>200,8202=>100,8203=>0, +8204=>0,8205=>0,8206=>0,8207=>0,8208=>415,8209=>415,8210=>696,8213=>1000,8214=>500,8215=>500, +8219=>348,8223=>575,8227=>639,8228=>348,8229=>674,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0, +8239=>200,8241=>1820,8242=>264,8243=>447,8244=>630,8245=>264,8246=>447,8247=>630,8248=>733,8252=>629, +8253=>586,8254=>500,8258=>1023,8260=>167,8261=>473,8262=>473,8263=>1082,8264=>856,8265=>856,8267=>636, +8268=>500,8269=>500,8270=>523,8271=>369,8273=>523,8274=>556,8275=>1000,8279=>813,8287=>222,8288=>0, +8289=>0,8290=>0,8291=>0,8292=>0,8298=>0,8299=>0,8300=>0,8301=>0,8302=>0,8303=>0, +8304=>438,8305=>239,8308=>438,8309=>438,8310=>438,8311=>438,8312=>438,8313=>438,8314=>528,8315=>528, +8316=>528,8317=>298,8318=>298,8319=>519,8320=>438,8321=>438,8322=>438,8323=>438,8324=>438,8325=>438, +8326=>438,8327=>438,8328=>438,8329=>438,8330=>528,8331=>528,8332=>528,8333=>298,8334=>298,8336=>466, +8337=>444,8338=>467,8339=>475,8340=>444,8358=>696,8367=>1155,8369=>790,8372=>876,8373=>696,8377=>696, +8451=>1198,8457=>1112,8462=>727,8463=>727,8470=>1087,8486=>890,8487=>890,8490=>869,8491=>776,8513=>775, +8514=>557,8515=>637,8516=>760,8523=>903,8528=>1035,8529=>1035,8530=>1473,8531=>1035,8532=>1035,8533=>1035, +8534=>1035,8535=>1035,8536=>1035,8537=>1035,8538=>1035,8539=>1035,8540=>1035,8541=>1035,8542=>1035,8543=>615, +8544=>468,8545=>736,8546=>1005,8547=>1093,8548=>776,8549=>1127,8550=>1396,8551=>1664,8552=>1069,8553=>776, +8554=>1078,8555=>1347,8556=>703,8557=>796,8558=>867,8559=>1107,8560=>380,8561=>760,8562=>1140,8563=>961, +8564=>581,8565=>961,8566=>1341,8567=>1721,8568=>976,8569=>596,8570=>976,8571=>1356,8572=>380,8573=>609, +8574=>699,8575=>1058,8576=>1255,8577=>867,8578=>1268,8579=>796,8580=>609,8581=>796,8585=>1035,8592=>838, +8593=>838,8594=>838,8595=>838,8596=>838,8597=>838,8598=>838,8599=>838,8600=>838,8601=>838,8602=>838, +8603=>838,8604=>838,8605=>838,8606=>838,8607=>838,8608=>838,8609=>838,8610=>838,8611=>838,8612=>838, +8613=>838,8614=>838,8615=>838,8616=>838,8617=>838,8618=>838,8619=>838,8620=>838,8621=>838,8622=>838, +8623=>850,8624=>838,8625=>838,8626=>838,8627=>838,8628=>838,8629=>838,8630=>838,8631=>838,8632=>838, +8633=>838,8634=>838,8635=>838,8636=>838,8637=>838,8638=>838,8639=>838,8640=>838,8641=>838,8642=>838, +8643=>838,8644=>838,8645=>838,8646=>838,8647=>838,8648=>838,8649=>838,8650=>838,8651=>838,8652=>838, +8653=>838,8654=>838,8655=>838,8656=>838,8657=>838,8658=>838,8659=>838,8660=>838,8661=>838,8662=>838, +8663=>838,8664=>838,8665=>838,8666=>838,8667=>838,8668=>838,8669=>838,8670=>838,8671=>838,8672=>838, +8673=>838,8674=>838,8675=>838,8676=>838,8677=>838,8678=>838,8679=>838,8680=>838,8681=>838,8682=>838, +8683=>838,8684=>838,8685=>838,8686=>838,8687=>838,8688=>838,8689=>838,8690=>838,8691=>838,8692=>838, +8693=>838,8694=>838,8695=>838,8696=>838,8697=>838,8698=>838,8699=>838,8700=>838,8701=>838,8702=>838, +8703=>838,8704=>641,8706=>534,8707=>620,8708=>620,8710=>753,8711=>753,8712=>740,8713=>740,8715=>740, +8716=>740,8719=>842,8720=>842,8721=>753,8722=>838,8723=>838,8724=>838,8725=>365,8727=>691,8728=>519, +8729=>519,8730=>657,8731=>657,8732=>657,8733=>672,8734=>833,8735=>838,8736=>838,8739=>324,8740=>607, +8741=>529,8742=>773,8743=>812,8744=>812,8745=>838,8746=>838,8747=>579,8748=>1000,8749=>1391,8760=>838, +8761=>838,8762=>838,8763=>838,8764=>838,8765=>838,8770=>838,8771=>838,8776=>838,8784=>838,8785=>838, +8786=>838,8787=>838,8788=>1082,8789=>1082,8800=>838,8801=>838,8804=>838,8805=>838,8834=>838,8835=>838, +8836=>838,8837=>838,8838=>838,8839=>838,8844=>838,8845=>838,8846=>838,8847=>838,8848=>838,8849=>838, +8850=>838,8851=>838,8852=>838,8853=>838,8854=>838,8855=>838,8856=>838,8857=>838,8858=>838,8859=>838, +8860=>838,8861=>838,8862=>838,8863=>838,8864=>838,8865=>838,8866=>884,8867=>884,8868=>960,8869=>960, +8870=>616,8871=>616,8872=>884,8873=>884,8874=>884,8875=>1080,8876=>884,8877=>884,8878=>884,8879=>1080, +8901=>398,8962=>834,8968=>473,8969=>473,8970=>473,8971=>473,8976=>838,8977=>539,8984=>928,8985=>838, +8992=>579,8993=>579,8997=>1000,9000=>1443,9085=>1008,9115=>500,9116=>500,9117=>500,9118=>500,9119=>500, +9120=>500,9121=>500,9122=>500,9123=>500,9124=>500,9125=>500,9126=>500,9127=>750,9128=>750,9129=>750, +9130=>750,9131=>750,9132=>750,9133=>750,9134=>579,9167=>945,9251=>834,9600=>769,9601=>769,9602=>769, +9603=>769,9604=>769,9605=>769,9606=>769,9607=>769,9608=>769,9609=>769,9610=>769,9611=>769,9612=>769, +9613=>769,9614=>769,9615=>769,9616=>769,9617=>769,9618=>769,9619=>769,9620=>769,9621=>769,9622=>769, +9623=>769,9624=>769,9625=>769,9626=>769,9627=>769,9628=>769,9629=>769,9630=>769,9631=>769,9632=>945, +9633=>945,9634=>945,9635=>945,9636=>945,9637=>945,9638=>945,9639=>945,9640=>945,9641=>945,9642=>678, +9643=>678,9644=>945,9645=>945,9646=>550,9647=>550,9648=>769,9649=>769,9650=>769,9651=>769,9652=>502, +9653=>502,9654=>769,9655=>769,9656=>502,9657=>502,9658=>769,9659=>769,9660=>769,9661=>769,9662=>502, +9663=>502,9664=>769,9665=>769,9666=>502,9667=>502,9668=>769,9669=>769,9670=>769,9671=>769,9672=>769, +9673=>873,9674=>494,9675=>873,9676=>873,9677=>873,9678=>873,9679=>873,9680=>873,9681=>873,9682=>873, +9683=>873,9684=>873,9685=>873,9686=>527,9687=>527,9688=>791,9689=>970,9690=>970,9691=>970,9692=>387, +9693=>387,9694=>387,9695=>387,9696=>873,9697=>873,9698=>769,9699=>769,9700=>769,9701=>769,9702=>590, +9703=>945,9704=>945,9705=>945,9706=>945,9707=>945,9708=>769,9709=>769,9710=>769,9711=>1119,9712=>945, +9713=>945,9714=>945,9715=>945,9716=>873,9717=>873,9718=>873,9719=>873,9720=>769,9721=>769,9722=>769, +9723=>830,9724=>830,9725=>732,9726=>732,9727=>769,9728=>896,9784=>896,9785=>896,9786=>896,9787=>896, +9788=>896,9791=>614,9792=>731,9793=>731,9794=>896,9795=>896,9796=>896,9797=>896,9798=>896,9799=>896, +9824=>896,9825=>896,9826=>896,9827=>896,9828=>896,9829=>896,9830=>896,9831=>896,9833=>472,9834=>638, +9835=>896,9836=>896,9837=>472,9838=>357,9839=>484,10145=>838,10181=>457,10182=>457,10208=>494,10216=>457, +10217=>457,10224=>838,10225=>838,10226=>838,10227=>838,10228=>1033,10229=>1434,10230=>1434,10231=>1434,10232=>1434, +10233=>1434,10234=>1434,10235=>1434,10236=>1434,10237=>1434,10238=>1434,10239=>1434,10240=>781,10241=>781,10242=>781, +10243=>781,10244=>781,10245=>781,10246=>781,10247=>781,10248=>781,10249=>781,10250=>781,10251=>781,10252=>781, +10253=>781,10254=>781,10255=>781,10256=>781,10257=>781,10258=>781,10259=>781,10260=>781,10261=>781,10262=>781, +10263=>781,10264=>781,10265=>781,10266=>781,10267=>781,10268=>781,10269=>781,10270=>781,10271=>781,10272=>781, +10273=>781,10274=>781,10275=>781,10276=>781,10277=>781,10278=>781,10279=>781,10280=>781,10281=>781,10282=>781, +10283=>781,10284=>781,10285=>781,10286=>781,10287=>781,10288=>781,10289=>781,10290=>781,10291=>781,10292=>781, +10293=>781,10294=>781,10295=>781,10296=>781,10297=>781,10298=>781,10299=>781,10300=>781,10301=>781,10302=>781, +10303=>781,10304=>781,10305=>781,10306=>781,10307=>781,10308=>781,10309=>781,10310=>781,10311=>781,10312=>781, +10313=>781,10314=>781,10315=>781,10316=>781,10317=>781,10318=>781,10319=>781,10320=>781,10321=>781,10322=>781, +10323=>781,10324=>781,10325=>781,10326=>781,10327=>781,10328=>781,10329=>781,10330=>781,10331=>781,10332=>781, +10333=>781,10334=>781,10335=>781,10336=>781,10337=>781,10338=>781,10339=>781,10340=>781,10341=>781,10342=>781, +10343=>781,10344=>781,10345=>781,10346=>781,10347=>781,10348=>781,10349=>781,10350=>781,10351=>781,10352=>781, +10353=>781,10354=>781,10355=>781,10356=>781,10357=>781,10358=>781,10359=>781,10360=>781,10361=>781,10362=>781, +10363=>781,10364=>781,10365=>781,10366=>781,10367=>781,10368=>781,10369=>781,10370=>781,10371=>781,10372=>781, +10373=>781,10374=>781,10375=>781,10376=>781,10377=>781,10378=>781,10379=>781,10380=>781,10381=>781,10382=>781, +10383=>781,10384=>781,10385=>781,10386=>781,10387=>781,10388=>781,10389=>781,10390=>781,10391=>781,10392=>781, +10393=>781,10394=>781,10395=>781,10396=>781,10397=>781,10398=>781,10399=>781,10400=>781,10401=>781,10402=>781, +10403=>781,10404=>781,10405=>781,10406=>781,10407=>781,10408=>781,10409=>781,10410=>781,10411=>781,10412=>781, +10413=>781,10414=>781,10415=>781,10416=>781,10417=>781,10418=>781,10419=>781,10420=>781,10421=>781,10422=>781, +10423=>781,10424=>781,10425=>781,10426=>781,10427=>781,10428=>781,10429=>781,10430=>781,10431=>781,10432=>781, +10433=>781,10434=>781,10435=>781,10436=>781,10437=>781,10438=>781,10439=>781,10440=>781,10441=>781,10442=>781, +10443=>781,10444=>781,10445=>781,10446=>781,10447=>781,10448=>781,10449=>781,10450=>781,10451=>781,10452=>781, +10453=>781,10454=>781,10455=>781,10456=>781,10457=>781,10458=>781,10459=>781,10460=>781,10461=>781,10462=>781, +10463=>781,10464=>781,10465=>781,10466=>781,10467=>781,10468=>781,10469=>781,10470=>781,10471=>781,10472=>781, +10473=>781,10474=>781,10475=>781,10476=>781,10477=>781,10478=>781,10479=>781,10480=>781,10481=>781,10482=>781, +10483=>781,10484=>781,10485=>781,10486=>781,10487=>781,10488=>781,10489=>781,10490=>781,10491=>781,10492=>781, +10493=>781,10494=>781,10495=>781,10496=>838,10497=>838,10498=>838,10499=>838,10500=>838,10501=>838,10502=>838, +10503=>838,10504=>838,10505=>838,10506=>838,10507=>838,10508=>838,10509=>838,10510=>838,10511=>838,10512=>838, +10513=>838,10514=>838,10515=>838,10516=>838,10517=>838,10518=>838,10519=>838,10520=>838,10521=>838,10522=>838, +10523=>838,10524=>838,10525=>838,10526=>838,10527=>838,10528=>838,10529=>838,10530=>838,10531=>838,10532=>838, +10533=>838,10534=>838,10535=>838,10536=>838,10537=>838,10538=>838,10539=>838,10540=>838,10541=>838,10542=>838, +10543=>838,10544=>838,10545=>838,10546=>838,10547=>838,10548=>838,10549=>838,10550=>838,10551=>838,10552=>838, +10553=>838,10554=>838,10555=>838,10556=>838,10557=>838,10558=>838,10559=>838,10560=>838,10561=>838,10562=>838, +10563=>838,10564=>838,10565=>838,10566=>838,10567=>838,10568=>838,10569=>838,10570=>838,10571=>838,10572=>838, +10573=>838,10574=>838,10575=>838,10576=>838,10577=>838,10578=>838,10579=>838,10580=>838,10581=>838,10582=>838, +10583=>838,10584=>838,10585=>838,10586=>838,10587=>838,10588=>838,10589=>838,10590=>838,10591=>838,10592=>838, +10593=>838,10594=>838,10595=>838,10596=>838,10597=>838,10598=>838,10599=>838,10600=>838,10601=>838,10602=>838, +10603=>838,10604=>838,10605=>838,10606=>838,10607=>838,10608=>838,10609=>838,10610=>838,10611=>838,10612=>838, +10613=>838,10614=>838,10615=>1032,10616=>838,10617=>838,10618=>960,10619=>838,10620=>838,10621=>838,10622=>838, +10623=>838,10731=>494,10764=>1782,10765=>610,10766=>610,10799=>838,11008=>838,11009=>838,11010=>838,11011=>838, +11012=>838,11013=>838,11014=>838,11015=>838,11016=>838,11017=>838,11018=>838,11019=>838,11020=>838,11021=>838, +11022=>838,11023=>838,11024=>838,11025=>838,11026=>945,11027=>945,11028=>945,11029=>945,11030=>769,11031=>769, +11032=>769,11033=>769,11034=>945,11364=>831,11367=>945,11368=>727,11369=>869,11370=>693,11371=>730,11372=>568, +11373=>848,11374=>1107,11375=>776,11376=>848,11377=>709,11378=>1221,11379=>984,11381=>779,11382=>601,11383=>905, +11385=>571,11386=>667,11388=>313,11389=>489,11390=>722,11391=>730,11520=>773,11521=>635,11522=>804,11523=>658, +11524=>788,11525=>962,11526=>756,11527=>960,11528=>617,11529=>646,11530=>962,11531=>631,11532=>646,11533=>962, +11534=>846,11535=>866,11536=>961,11537=>645,11538=>645,11539=>959,11540=>945,11541=>863,11542=>644,11543=>646, +11544=>645,11545=>649,11546=>688,11547=>936,11548=>982,11549=>681,11550=>676,11551=>852,11552=>1113,11553=>632, +11554=>645,11555=>646,11556=>749,11557=>914,11800=>586,11810=>473,11811=>473,11812=>473,11813=>473,11822=>586, +42564=>722,42565=>563,42566=>468,42567=>380,42576=>1333,42577=>1092,42580=>1287,42581=>1025,42582=>1287,42583=>1039, +42760=>500,42761=>500,42762=>500,42763=>500,42764=>500,42765=>500,42766=>500,42767=>500,42768=>500,42769=>500, +42770=>500,42771=>500,42772=>500,42773=>500,42774=>500,42779=>384,42780=>384,42781=>276,42782=>276,42783=>276, +42813=>848,42891=>439,42892=>306,42893=>913,62464=>705,62465=>716,62466=>765,62467=>999,62468=>716,62469=>710, +62470=>776,62471=>1038,62472=>716,62473=>716,62474=>1309,62475=>734,62476=>733,62477=>1004,62478=>716,62479=>733, +62480=>1050,62481=>797,62482=>850,62483=>799,62484=>996,62485=>732,62486=>987,62487=>731,62488=>739,62489=>733, +62490=>780,62491=>733,62492=>739,62493=>717,62494=>780,62495=>936,62496=>716,62497=>826,62498=>717,62499=>716, +62500=>716,62501=>773,62502=>1013,62504=>904,63173=>667,63185=>500,63188=>500,64256=>821,64257=>727,64258=>727, +64259=>1120,64260=>1117,64261=>871,64262=>971,65024=>0,65025=>0,65026=>0,65027=>0,65028=>0,65029=>0, +65030=>0,65031=>0,65032=>0,65033=>0,65034=>0,65035=>0,65036=>0,65037=>0,65038=>0,65039=>0, +65529=>0,65530=>0,65531=>0,65532=>0,65533=>1113); +$enc=''; +$diff=''; +$file='dejavuserifb.z'; +$ctg='dejavuserifb.ctg.z'; +$originalsize=315052; +// --- EOF --- \ No newline at end of file diff --git a/libraries/tcpdf/fonts/dejavuserifb.z b/libraries/tcpdf/fonts/dejavuserifb.z new file mode 100644 index 0000000000000000000000000000000000000000..e143c026585721c650a5efb41b08ee641ed6c1df GIT binary patch literal 171017 zcmb=p^=5B%f{5!i^O{xbFJHDbw%zWNH+kno0Vf4T#XCF(3Q9~&OiBw90^V`BGexc>=3Jed9`853LldZmgYx?O39*3@tW`CdYnU~I)6j{a6|NGI$ zOS7v>-hVyZseS&@N7jZvb7oiHz4veSRr@b&8XoKd+PlA>(%$hr__|1gScTP>o#kH^ zT;h6XZ7=uuYv0-L(|Y;se!ZR5$}qQN&+%0YmmYSTU;C#0F2nYmL!Y1XN}H?`N%6U0 z*>(KZhTo^!){v>^o*p z;-8l(?eDG@{<(dJ?TPnK?>W}Ve;54JzSDog|0%zjeg+@nR5;}MQ2RlvSE+$OX@?a{ zMd=DFk)MgLG9Fwp%;Npjmc|$tyhUed&=zcPHKJ{b;-U@}BVNaVF`edv9O-{Ut3t_Og)w zTkd%mo8=@}S1xw%m18~lL*GRGu1W2hhN`z zR)4{^ccJ~10|7hu|EogJw5as}t>OSmqz{T+xyrFn>D3 z+Bo6KZJYMYc)G4-&yVn*ma|T0a)!_R+0!!T>IvPf^+pb}ju!1%?)Yk**AwAlz9ZgW z{`~jU<6I%iy}jvnLxANuS@yZsC+D)LAD-2{P$$wfggMA0L~Kdc95qL&IAz6E+3O28 zX5V=u#lKr^>O%wGO#zQzSSMHpv0k!T((4gDu}op1yh99AO~)6*ONC1=d;E8>>Ms#| zDSmkc%UaI>mPbxrZl@epwNGiD(tqX5m&7HuLch2!@pAqZdD$P*WFqp?ZVCGYwM+ZB z^RGNJ-B|JO^ZHNmbw~GqwEp=m{_3Bg*~!|n5&w+0NCo|ycVhLI+9}Oyhi<5$Im3=jS)HeWkS0<_a6P1)M*j2 z$G^s5j)tFTdS~%b*GIvRK0op*?A;M}M(idKH8)bZKTto&Hd<9(~eCF>+ms+1T(cR>70%^t#mqg z+VhF=om-A=y0_`%rn8$)Z@Rwe{-=pggHL;UFMTR~n)S4*_trz2Vn^3iObJn4k)pZN ztMQUk=Hik7D{b2;cBf)b*`6v$?J<&bn7PC!TrTvPcK6h!r;JjkZVJ1(ASY~_cE0BC zDa@w?pB6uz60~$qa9xO=c3bF%sI|LHPtMBYjo!SrcdhT*wQB;i-Lu29{j=j=JG@SK z?UB85>zQ8@N|${#e9iP)==J7nPp@&kwtDUMI_x#y>%7<1*Z9}UNB2kjNB>W>&EK2x z*OfIi$n@$`wbhbYwx;f9!)LENnpM4Z@-5%DYrlni7x?Y+uXUKa!Y?#^W${(lSHZ77 zzw#>W-4%CtNnUXI%Id3sU%9_p{>pP}&|kN`3*v%SUtAqwvisS^psfq0Eq$8B8pXY~ z_nPDDHD53M$|%qLo^g1q;jN0?NoKLtA+y)(UYnM6dQ0f7sNCjlk+;|FUHbMiUxxdZ z^ILxy`xCxl6Yh zF-Si;W+wd7a0#o2_XGiZvoFygbYueW-)Z38tA=Wn&&W>1Lk-*R%_*?p(?UEg>A-^9Pczdfs${+0gC`dhVn zYjbggOj-N!iLW@UHp%SlV{+$qmv(1&Pj}~cmp>lcS1of`Hd*Ge>|~kCvi(-iti`OS zSxvJHv%F?yW?^Q%&H7%^n_`&)nZlZP7Ef0c%_;u#V#gbU636YYcFkL|{B@#jbp9Ii ztI;n5_b$E{`hMm2tL(3uzfP=L8Mn-S$@wetm&IRre@XxPw5oNV-~AQ&SIb}Q{`$S- z%ECUYD}n7+uL9g;10G-+bey z9EX0#`ipb?#QrE8<4>xwe0;h-bpG)lHpkL~=G7ehaXj+xy_oBYYiaJ7Eg_sUsU?a%(u?3o{=?!V`5#omn{qAYiw*EnB$?4077 zdA=Qg*pB5V)Mz~pj@)gmp?`+qTCrsdn4Ki}T`E1#5Wn)Ee)^RMla z_7grbCx@?irkQ_h={CEG>EGX<_|dma_sPW@@AQ_vja{>>;o67bGd2fL>2IFZ{N^9~ z`uE+P8?(23>{wa3`TdsIjmCdN-<U1=gelQGI`;^JJXkiaBf=J z6D~YqetOa-z5e@&U7gO;jPG7sbn(d49j{ld^C>A^vs=rq?~!s}rcvJ_mepI=PByl4 z5*D0iu}j!3Pf1GHUG;s^^BwElf0!z33+i?*R=)V?YR~$AS8KgyZdqCy){(tW*m`;J z-M`t#`6g=>%Bc3N|1TJS=EtMgmHP~{ml|GXxV+GE-wv*8VXY^x_xk4XKmNYq_nY)T z|Be(39p_lRe@ta$7Z*CP9K5qSa{z;zmC$IPa zjhZ)i@&Wa}?(84)>u!g0{JydE_nAYH2hXP!}y{CnPKn??RL^px4=4^3;-A|0ApK^cA^nJ71YX6ZEi;3GZ`PhE*4tF9cTDf<&s{G2ziZFyHCor*se0^uT8;TJYoQ-`JpVc8 z9lyfAz2W0$N&ER9t8e^Nv)iBi^?s~=Tzi3s)MpeoEpxd_G3)b7k0np4IzL7)YiWwcNDil-QScPsjhu(jwQIi_=nPTZ%=T zd*+*Gcv?Os-Acm##Fr2q|MjzLPsn`q{-vG$IblWB+ui=v$M_Te zFdP#%*tfvX?DN0QqDkK)|Nib-pHic0yPmrH#aeSlTbcus%FaFG0VY=|&tP=)`w^sJ1-Lw^c_UH)5t63+E6=!)(c{oe3 zcG4-C?^`(KX2*!wFR}by6Z<9m%gV{UA2|y>YHBu$9o14h9A`F7+IU`K^p@)nul1~d z^m9s!#MgbV>rEejYq>eOIWK@eU!$hPix_ z_Y)x=h3O|#B~Eb8VJa`yDwpPYSXFp9QPzCYZvK0Zf(vsuw7)<9y?yVW*gp&v?eeGi zTg!h6{^6+Tmp^)+{r%_UABG95Z$FyY`e3RCvW=1ZtycL@G`^$l{7khK^?ONZSO5gDJhr#X6{3G8i zx^Kum=gsNgERpvw{=F;HK~q}@ifs8J@`!(@8tNHJ{hL+dd>)3Yld*_VMTb5`#>>S1xd@brW*#fNiFm9?5H=ek#|E?fTjzh551{L|m; z+^;_^Df$2YQ^Xtl;`#M+kC%72#~+X19sOta-e+0o|KEQ)XM2O4=0#gQZIcG3ANAkP zS8ytrX>H@s{NTP-F#5=?3bD`Wk4=vY*VT3|yT9M;o6bMK^;n>KT5!I#z5 z|D%KC_WyhF|MlE|$93}>b(Z{hoAm$d{x$Ye&KsLG`MU-7@&;x6vn`m*AU z;pRW(C12&=vdeNe*U5MPUl`_gH1NNk_Wj=P=TttwC^&Spr+@7#>tiK0an(QWXKaZnnI<)AwhxZd1jpPth}e`S#fXo4_f2AhIucW@GbpqGVbqlH!9A!f4ENmOSCfoX+Dc4 zs|4x%e~q7CZQdB@!MfEbraxS*ynRn?;Ho858OJXyG| z+@*Z+W4pfQ(D3(pzxwhjV(q7$xm9<4+rdSRYg~TMp7c+!Sn1YohEDhTPq+8g2kg;5 z{`yzwcj;w$X}kVy&z{(2`y+XeXzjTxeNR8QpO>xosQED4_)6)F-{=3lW{S-!Zadv% zzpd9kF8GSPV&(rAb${CI<-W@IyUxu2KXv{u{=TX&(UHd<+Sld$**_z@-d*Z={g=G| zjS_ro4=fVNYX5&VCc39iy#DB(!~17tuiqB+HUImx|Jy&7)=KL>erbQ>*w>G93nkLM zuIE>tuCLzraDn)X85~y*A8}Muo42-rbw$5tOOB6_$pIB-J~eKWLrWZzeZs_!uDrl9 znT>TuPC&;=K3_x21ss$4&Kg)Qv{Vz{a^OkYua6GeK5;u3gM~zrKRIUmFx_d=l-!l* z)i`fP(8DsH%nSU#oUQJ3p5!l2Jk@Y<29p76Fhkm*#Txc^mrqULQ)7H~=)aVe3F6BP_H=48-#c{V zV4jc6o1;e#+W9c;Y4>dSJA=id!Lxziu=9hUnqXh@qz58u+%X52IPpyOl237H`Owl{ z<)X-yam3k1VWP?;7ORhf@=GR$OzNtU@^rTIXnLTMD0IxGJH=7$r25YXYHK~TKTO=V zM3>`EN}f@Qr~A^y4oieDaX#5UWnas$OW~KoC+NmbToo8D^XgP%r@`&w3|aN4yZwKK zCHP$07&>o8r+wRI@LKE4w6HYqsW*d?w{0uLr5b)96*Hf(*6KjY2@zBs2k;bjJUx=!-W z7UWHAYvb6{w^A;8{4Z3=`SWXv?Wf}>40HZkSoZ1G z`R_aai~9-Fwf`=4hknPXh%a1d5h254`ADFUt@{k5YZLhT zT93W>JnKP*hKqc7%j1QXea+K4{!0sdUn}_duE5pp#`&e{i^@zEm8#kBYVE->cvMlio)Ed{bNfxw=u|cbvkH)%Ra+EcqI7WY+y%-fyR~ zB;P>b;G3vy5WoAzbQWY9#0KlB3s(F1%AEK5X^p?D+>S}5URdz^m~(gad)Zj7T( zNfIRoas*1!D$oBucCT9gOX^RDY5a2T=jBhnOZ5EV<(Ra2wLpHn$B(YY^?#4C6ifci zFv>EP{v_xc_+_%~h3``jeE1Rj>)2B1Ou6FyN4yX3Q9gh4bW_F6`+KbI4dc$4oPYlO z`02A6&9W??B!9{rzgDOvnWWgV*haYiW5Q_@&M%n)wQMb=QomkDPyEd&eBAVb6vKJm zCv1;=oaZm=yi@p&+v92e!~8~`I@$evOn<8CY*}s=Z<+8yWNtuwjb{yK^@+s%7n4Kh zon^6!PXF-cUCUW^o4(0QXV`OV8!Z1fC4JtMbh|0(_a>*;!H}`;`LrmxzJx~)lYMMz zx;op>8-C1Tdp7g?6F6GPweR2`88x|c$&Vf~sm=R3^FaTMiX9!D?cOsgcJy?%YrC+_ zJK@4M@9aIBiydv2Uys^+K4kNGzs=`8HnXo*PV$*#xO}sf|0PeWXOb$+#jolspH)^q zE3SN&TRF*hli_(q%Nfrn#hj6zd~8N={^`j~K@F9`mqdzRrB^;ntd#j_o^Ws0f^Cs8 z2PT&-k$pDTL;Xzkq@BAxaUxUtp8o|h(pF*2hK8v61o)NtNjB)=N1^-a8$Un^oY z?TPRgnL4wlp}(XZeT8L=W#T4^e)so$rO~$b-HY9pXWA3%xcACmdu*8fSZs|dPj^_4 zw1rG;S*gnIRjaLJ`gd>o?0#(Lt(M(dG8Cq&*x-R&f zf2Ba;e1z$uVy!ZMR=mw_PJGZ8v|@{}Yxt zwX-0=TP$vhOP{b-WB1n<`E?Pj-{y*bk*K>tb*I)Sl+_ziNE--jYoWRTC5BDN8o%8>sYE|}D_f}7?p8mVR`b_Paxli^z zJNG&Fr}WQvHSu)<_4f9S^G}_B`uwx@59UA958XW^kT}J_u_C6zFG4p*FiyOT`*+LV zL+2NTe|cT~CCmPK_#e6b=jA_`e-r=x{tN#{|1bXE>>u5KbpK_&`Qx2E^O^58*cSvp zxOPCcv98gYnVBh=X*Sbt=62@eO!wLK*m@GeHiT~Q-B9~sTEh2)^$%nZ9z6KFnY+om zN%Uap!RgKGS>k#3i9K@mIw9!A)$07!nb%p?Db}gK_+h?sb$aj&dE;yo$zkSoy=Y%X?62+Id^tEde(JY>s`d$Emj+LeSLLY zKP~pmzAeu$E%bI@=h3Dd*8ExQuXxMTC#CO7^YpjR|1Gffmu5NFR<7`^QK$N!tAE@a zu$uda_)q?y+=pxrc`OW>p|2w}jWfG7_mJL0*@v|c7p&-B`K#!!^OaSsTW3A_{=4|^ z&wpnBs{imCt+jhze|En$v(YqGg$XhoY*wsQN48d#CsZXAC*(hPe4z6{f1@|Y{5c7R zSzDbqcz-av^6Kuvi3dL(bPeCSOLJYQ_2sNE4fQL0TW=|wsBh6Y)4FtnR9Q>yLysM< zJ8ZMIy6;f2v9K|=nV)%8=%Vt;i3u^Q&j+qe^E;n4@v7Nsm28%*QvR&3@?Z5AgqdE^ zS`gO$)bE7u`C5*{+nyXtypq-4B`3N!JUVRo!m#HHgV$fxk`VYkGt2Z_=$o}SW^at$ z_;zFN#A3o*@DvIyY0=a%xuhb%uLKw%q*^{U$efZe9iQl z&NY)Tfz$n_eNT^UN{-xEWmtXY*X3k;U)$)qvOhN`rn}FPt=aberuDgRmbV}0+}^zQ zyqT@E#q2_}t*bV@D!KY`)%n$SYk%!{<#F}ls{U1cp|ugE3tly^`WyN_bZ_)mzpM9F z*@ota?v32K_*L(!x1sC9bJtca&5FHxYt{ZR-L+MlUUjZ=4dq_-EOhJotk|oYR&CJQ zt+iPzD0Tg&5YEsiXQmqOpY!wQnWx6n&;9v)#y@?ZUGcLs)6?zjKR=wwoNhKRvi{jj zW9D;TY%l-z*={`d+?|qV$4$}^oDrSB)xmraHL_sG<~&yKj){PgvUj}z7T z6Fq;LPgGNW>slqAsdlMu3IC(_e``8QBwiXW>3{5UpY@l>OO;EHJ(f?{=N8peV&`}I z%(9=`PCV{8ct1nv7}J4r^Uk>A-%UGz3!QdUD_p)&$90$d&-EK*`b`*r8b|m!9jYr# z-#Dk$MEqxQ#5wcMeOFKDJ47}9an*@;v1(|!XwhH$Fw@$1qTYikrRLLQH@fWQaGr3# zNA=jdLmE%ECw3Zf+|b)E>%C`tL+#W1hl&I*6`y#2Oz5}f8ngGhYg}(N{dpd7>2=`# zKlU5$w6;9|bU)!I-zB>z`;ULBRk>pNpLrU4W1T*i%_;p?9&tA34j74^?60w9kbS%2 zy`!D9_b*w|bq`wd80yZcFur|pyzZCilZ*T6`aPLmou1$F#JNstT7`W*!%xYGM|a-l z_t?C;G`~Nj=TDB#ZH2p?Hn*^9ddpKn*Y;X z#`ot-h5D!Y37u9Sl#j6-;Vt7e`e4IjRUqbgXkYhb#uv`}8NS8Z^radJoznW(q58%dBt^wS0SqoZrbZ4 zCwKnhxauzVTij`Giq>MgKqrT4q-@5nJ z>7PF=^il5EjNoI20>?rNXPj#OTpHo(G&eHfn!zbiH=RfWKVIc;haG>N)t@G)a-@|t zm3O;CR&Nc5_nTsg+9|B5yyZqGFEMyeQLowkv$sIv@r@4(pQ9fd+*0g$d?=_v_19U0 zK56b>(+qxf8N9mIw2lA0;YlL_g+nt_9Hrd~=D3A?p8bg9meC^@x%c9ZXWWC%yzf!g z$Y*)FiRZY{WfksQHj{EEvHlH7>GJ$C`w2(i@)K20+> z^A-ElNlnQc?0)V3Wg)JikzM;`BkzU#8Y|AT-Jg}>x_?5m*$Kxx5f}5HJeir|8sE90 zq3uSW=<&dJ36s~nFfR(6cBk;f<2jSN|5=FFP7r7(Slm<*{hN?HWvk(})g7J3dVPZeuZwmZr<>TJ3^2D=qr81nNaC z-i2&AoVDe8){*Y6+L*a*Eqz|PM>cKs)OuB9`l!hCoM4vsXMf2U7uVG*?swl*Tlt+S z=2r5guG-xtCsafYOI~((YTcS!cdLliuy?iZg7@809m!MQr7!I7S@=I-In%=WO;0(t zt+(TO^4QeFV*SeKhMG@uLg%z!@khuxIQ?B|-*_bQtnRY-qw&w|M2`F~JF)*)dfds) zu{tO3$R55rw`*fN@0$k)Ot%ZiJUBLWqxhr)>?bEQY2Pu4*?cLTld+^%QD)!7*JS~Q zI{oh#J^SBXd&TU6*rE%3w+{DSV9aakD=;oOR9cn(;!xP$y9KWIne&?GUEsbxeY>-K zO!xP_yIxx{upPP^!1RUl;bH^nX9sL5gr*%bst^o2q_v`9|ADL@+JAVjZHoOrJ<&F& zA^gGn4_Y}%yZ=QeSnu)s{&T7E2L_%tMFS@*ZsA1MDTg$^6s8&o*&a&%u;wW5V;$CM zP7-YVr>=_KRQfb?8qW@Xxkqm|ux&fYvqSt?gv^rdOBsKyzG&e3OYHHcnIAZ8eE0KC zu$yW(dEXR2Z}laUKg@c{Trqjeq|Q6j-d(>`o3WDX)KdK=>zBwUik)e1e^@w!n>$g^ zhLQWmJHrD)+lv3l{5f*=$-IW&JCE;Vz2h|Fi0(77LVjcG;uNE^hEoryE;{U?k^Z&z z!}Q%JY%5HpKeq-rsZCy5k!OA-F?-4f_cikmuH&B|Ipdn4%bNqUWYyZgzW$)sV75cP zde@Y#ANvZX8-&cz;ZglQp)y78+MEUZIeQHjmb=O&82xj*KVz2T_vIeU5?x_=4ciVn zHtwH(c=Hjhx`y(5&PItA+b;8FicaicO||rTb0^@}cBcfH+bQ2J|Lb($7%sd(X1(>P zORP3>JWn45o;)0TsIK(TeU*hQ=N{aB-~PLEs>r9-FYAvz*n3(~@rL#$F^hS}npJ1K z+I)pE*Hq|ZP~XeScXI0jR`{P!+O)kbxkFUzd%zYp1+nX!WPW5>oDrY6@Xbmwhpr!L zUnW{lo{*wm`N?FLywcA^HggfC8g>W!=Z$A4X?&1ryt80m8^@aA5&c9|IFQo-aq+8CMn7;q}MmJyJVWfO z)erV5LAi5Ir%gB6z-?8fUGOkhZ(i}%l3h`cbhY)v-kC~ z+Qc|8uxv#IT*J$ zX#J76=jP>NX%nP7HXCYY-QwY&BYEU`kBQpXxlCJE^sLJF>6lw#>uFamZKJvR-)-T! z^>Hcxe_pPa)7Sr-5U}RsM4D$klfP4=5CxBY(g@4Zi*+xU0AXA`O{5&IeZSyn&K zN<(n=$H`YV>?=(C!*gy%{bB3balajm>RiGnYM%+L-u~`}`rc#f?p@qj?0MkM$sD2I zUUGeLPDf{I^QJF%+Mzsa_N-}hrp=i&Ytm#})!12&nlz&xYrcGV5{%+xK10_Rht1 zuHL^kTja+bef9Hmc=#FVqKxzN`t5FQetzM+{l{LuxA%&Fe3*B)o$dO+tiJYnH`4jP z?KC{MHGGltg{K{JthWd16`E&FiN4UHeWsk<`QS6%9X90}B4nqoO^xmn@)4xgW{>uF8C)1i`TRCKwx&1ERH_fE{ zlG7i(bKki0w>%M+5I7tDc}k6Y@mANUxU4#_$vw|9bwyOqpISBPbI_;Yjapk>%k#f4 zS@<)xQuxzb<`WHUOZLr8*y8)p!!eRSmfJa{W!8b|Pn2^#K6?b7klrYKGkiv7lCZ9F zbftu;X#tV&Q)n6<-ee1l8n3eYB;DD2SI^%5s(f`f_lH$kua> + * @protected + */ + protected $clusters = array( + array( // cluster 0 ----------------------------------------------------------------------- + 0x1d5c0,0x1eaf0,0x1f57c,0x1d4e0,0x1ea78,0x1f53e,0x1a8c0,0x1d470,0x1a860,0x15040, // 10 + 0x1a830,0x15020,0x1adc0,0x1d6f0,0x1eb7c,0x1ace0,0x1d678,0x1eb3e,0x158c0,0x1ac70, // 20 + 0x15860,0x15dc0,0x1aef0,0x1d77c,0x15ce0,0x1ae78,0x1d73e,0x15c70,0x1ae3c,0x15ef0, // 30 + 0x1af7c,0x15e78,0x1af3e,0x15f7c,0x1f5fa,0x1d2e0,0x1e978,0x1f4be,0x1a4c0,0x1d270, // 40 + 0x1e93c,0x1a460,0x1d238,0x14840,0x1a430,0x1d21c,0x14820,0x1a418,0x14810,0x1a6e0, // 50 + 0x1d378,0x1e9be,0x14cc0,0x1a670,0x1d33c,0x14c60,0x1a638,0x1d31e,0x14c30,0x1a61c, // 60 + 0x14ee0,0x1a778,0x1d3be,0x14e70,0x1a73c,0x14e38,0x1a71e,0x14f78,0x1a7be,0x14f3c, // 70 + 0x14f1e,0x1a2c0,0x1d170,0x1e8bc,0x1a260,0x1d138,0x1e89e,0x14440,0x1a230,0x1d11c, // 80 + 0x14420,0x1a218,0x14410,0x14408,0x146c0,0x1a370,0x1d1bc,0x14660,0x1a338,0x1d19e, // 90 + 0x14630,0x1a31c,0x14618,0x1460c,0x14770,0x1a3bc,0x14738,0x1a39e,0x1471c,0x147bc, // 100 + 0x1a160,0x1d0b8,0x1e85e,0x14240,0x1a130,0x1d09c,0x14220,0x1a118,0x1d08e,0x14210, // 110 + 0x1a10c,0x14208,0x1a106,0x14360,0x1a1b8,0x1d0de,0x14330,0x1a19c,0x14318,0x1a18e, // 120 + 0x1430c,0x14306,0x1a1de,0x1438e,0x14140,0x1a0b0,0x1d05c,0x14120,0x1a098,0x1d04e, // 130 + 0x14110,0x1a08c,0x14108,0x1a086,0x14104,0x141b0,0x14198,0x1418c,0x140a0,0x1d02e, // 140 + 0x1a04c,0x1a046,0x14082,0x1cae0,0x1e578,0x1f2be,0x194c0,0x1ca70,0x1e53c,0x19460, // 150 + 0x1ca38,0x1e51e,0x12840,0x19430,0x12820,0x196e0,0x1cb78,0x1e5be,0x12cc0,0x19670, // 160 + 0x1cb3c,0x12c60,0x19638,0x12c30,0x12c18,0x12ee0,0x19778,0x1cbbe,0x12e70,0x1973c, // 170 + 0x12e38,0x12e1c,0x12f78,0x197be,0x12f3c,0x12fbe,0x1dac0,0x1ed70,0x1f6bc,0x1da60, // 180 + 0x1ed38,0x1f69e,0x1b440,0x1da30,0x1ed1c,0x1b420,0x1da18,0x1ed0e,0x1b410,0x1da0c, // 190 + 0x192c0,0x1c970,0x1e4bc,0x1b6c0,0x19260,0x1c938,0x1e49e,0x1b660,0x1db38,0x1ed9e, // 200 + 0x16c40,0x12420,0x19218,0x1c90e,0x16c20,0x1b618,0x16c10,0x126c0,0x19370,0x1c9bc, // 210 + 0x16ec0,0x12660,0x19338,0x1c99e,0x16e60,0x1b738,0x1db9e,0x16e30,0x12618,0x16e18, // 220 + 0x12770,0x193bc,0x16f70,0x12738,0x1939e,0x16f38,0x1b79e,0x16f1c,0x127bc,0x16fbc, // 230 + 0x1279e,0x16f9e,0x1d960,0x1ecb8,0x1f65e,0x1b240,0x1d930,0x1ec9c,0x1b220,0x1d918, // 240 + 0x1ec8e,0x1b210,0x1d90c,0x1b208,0x1b204,0x19160,0x1c8b8,0x1e45e,0x1b360,0x19130, // 250 + 0x1c89c,0x16640,0x12220,0x1d99c,0x1c88e,0x16620,0x12210,0x1910c,0x16610,0x1b30c, // 260 + 0x19106,0x12204,0x12360,0x191b8,0x1c8de,0x16760,0x12330,0x1919c,0x16730,0x1b39c, // 270 + 0x1918e,0x16718,0x1230c,0x12306,0x123b8,0x191de,0x167b8,0x1239c,0x1679c,0x1238e, // 280 + 0x1678e,0x167de,0x1b140,0x1d8b0,0x1ec5c,0x1b120,0x1d898,0x1ec4e,0x1b110,0x1d88c, // 290 + 0x1b108,0x1d886,0x1b104,0x1b102,0x12140,0x190b0,0x1c85c,0x16340,0x12120,0x19098, // 300 + 0x1c84e,0x16320,0x1b198,0x1d8ce,0x16310,0x12108,0x19086,0x16308,0x1b186,0x16304, // 310 + 0x121b0,0x190dc,0x163b0,0x12198,0x190ce,0x16398,0x1b1ce,0x1638c,0x12186,0x16386, // 320 + 0x163dc,0x163ce,0x1b0a0,0x1d858,0x1ec2e,0x1b090,0x1d84c,0x1b088,0x1d846,0x1b084, // 330 + 0x1b082,0x120a0,0x19058,0x1c82e,0x161a0,0x12090,0x1904c,0x16190,0x1b0cc,0x19046, // 340 + 0x16188,0x12084,0x16184,0x12082,0x120d8,0x161d8,0x161cc,0x161c6,0x1d82c,0x1d826, // 350 + 0x1b042,0x1902c,0x12048,0x160c8,0x160c4,0x160c2,0x18ac0,0x1c570,0x1e2bc,0x18a60, // 360 + 0x1c538,0x11440,0x18a30,0x1c51c,0x11420,0x18a18,0x11410,0x11408,0x116c0,0x18b70, // 370 + 0x1c5bc,0x11660,0x18b38,0x1c59e,0x11630,0x18b1c,0x11618,0x1160c,0x11770,0x18bbc, // 380 + 0x11738,0x18b9e,0x1171c,0x117bc,0x1179e,0x1cd60,0x1e6b8,0x1f35e,0x19a40,0x1cd30, // 390 + 0x1e69c,0x19a20,0x1cd18,0x1e68e,0x19a10,0x1cd0c,0x19a08,0x1cd06,0x18960,0x1c4b8, // 400 + 0x1e25e,0x19b60,0x18930,0x1c49c,0x13640,0x11220,0x1cd9c,0x1c48e,0x13620,0x19b18, // 410 + 0x1890c,0x13610,0x11208,0x13608,0x11360,0x189b8,0x1c4de,0x13760,0x11330,0x1cdde, // 420 + 0x13730,0x19b9c,0x1898e,0x13718,0x1130c,0x1370c,0x113b8,0x189de,0x137b8,0x1139c, // 430 + 0x1379c,0x1138e,0x113de,0x137de,0x1dd40,0x1eeb0,0x1f75c,0x1dd20,0x1ee98,0x1f74e, // 440 + 0x1dd10,0x1ee8c,0x1dd08,0x1ee86,0x1dd04,0x19940,0x1ccb0,0x1e65c,0x1bb40,0x19920, // 450 + 0x1eedc,0x1e64e,0x1bb20,0x1dd98,0x1eece,0x1bb10,0x19908,0x1cc86,0x1bb08,0x1dd86, // 460 + 0x19902,0x11140,0x188b0,0x1c45c,0x13340,0x11120,0x18898,0x1c44e,0x17740,0x13320, // 470 + 0x19998,0x1ccce,0x17720,0x1bb98,0x1ddce,0x18886,0x17710,0x13308,0x19986,0x17708, // 480 + 0x11102,0x111b0,0x188dc,0x133b0,0x11198,0x188ce,0x177b0,0x13398,0x199ce,0x17798, // 490 + 0x1bbce,0x11186,0x13386,0x111dc,0x133dc,0x111ce,0x177dc,0x133ce,0x1dca0,0x1ee58, // 500 + 0x1f72e,0x1dc90,0x1ee4c,0x1dc88,0x1ee46,0x1dc84,0x1dc82,0x198a0,0x1cc58,0x1e62e, // 510 + 0x1b9a0,0x19890,0x1ee6e,0x1b990,0x1dccc,0x1cc46,0x1b988,0x19884,0x1b984,0x19882, // 520 + 0x1b982,0x110a0,0x18858,0x1c42e,0x131a0,0x11090,0x1884c,0x173a0,0x13190,0x198cc, // 530 + 0x18846,0x17390,0x1b9cc,0x11084,0x17388,0x13184,0x11082,0x13182,0x110d8,0x1886e, // 540 + 0x131d8,0x110cc,0x173d8,0x131cc,0x110c6,0x173cc,0x131c6,0x110ee,0x173ee,0x1dc50, // 550 + 0x1ee2c,0x1dc48,0x1ee26,0x1dc44,0x1dc42,0x19850,0x1cc2c,0x1b8d0,0x19848,0x1cc26, // 560 + 0x1b8c8,0x1dc66,0x1b8c4,0x19842,0x1b8c2,0x11050,0x1882c,0x130d0,0x11048,0x18826, // 570 + 0x171d0,0x130c8,0x19866,0x171c8,0x1b8e6,0x11042,0x171c4,0x130c2,0x171c2,0x130ec, // 580 + 0x171ec,0x171e6,0x1ee16,0x1dc22,0x1cc16,0x19824,0x19822,0x11028,0x13068,0x170e8, // 590 + 0x11022,0x13062,0x18560,0x10a40,0x18530,0x10a20,0x18518,0x1c28e,0x10a10,0x1850c, // 600 + 0x10a08,0x18506,0x10b60,0x185b8,0x1c2de,0x10b30,0x1859c,0x10b18,0x1858e,0x10b0c, // 610 + 0x10b06,0x10bb8,0x185de,0x10b9c,0x10b8e,0x10bde,0x18d40,0x1c6b0,0x1e35c,0x18d20, // 620 + 0x1c698,0x18d10,0x1c68c,0x18d08,0x1c686,0x18d04,0x10940,0x184b0,0x1c25c,0x11b40, // 630 + 0x10920,0x1c6dc,0x1c24e,0x11b20,0x18d98,0x1c6ce,0x11b10,0x10908,0x18486,0x11b08, // 640 + 0x18d86,0x10902,0x109b0,0x184dc,0x11bb0,0x10998,0x184ce,0x11b98,0x18dce,0x11b8c, // 650 + 0x10986,0x109dc,0x11bdc,0x109ce,0x11bce,0x1cea0,0x1e758,0x1f3ae,0x1ce90,0x1e74c, // 660 + 0x1ce88,0x1e746,0x1ce84,0x1ce82,0x18ca0,0x1c658,0x19da0,0x18c90,0x1c64c,0x19d90, // 670 + 0x1cecc,0x1c646,0x19d88,0x18c84,0x19d84,0x18c82,0x19d82,0x108a0,0x18458,0x119a0, // 680 + 0x10890,0x1c66e,0x13ba0,0x11990,0x18ccc,0x18446,0x13b90,0x19dcc,0x10884,0x13b88, // 690 + 0x11984,0x10882,0x11982,0x108d8,0x1846e,0x119d8,0x108cc,0x13bd8,0x119cc,0x108c6, // 700 + 0x13bcc,0x119c6,0x108ee,0x119ee,0x13bee,0x1ef50,0x1f7ac,0x1ef48,0x1f7a6,0x1ef44, // 710 + 0x1ef42,0x1ce50,0x1e72c,0x1ded0,0x1ef6c,0x1e726,0x1dec8,0x1ef66,0x1dec4,0x1ce42, // 720 + 0x1dec2,0x18c50,0x1c62c,0x19cd0,0x18c48,0x1c626,0x1bdd0,0x19cc8,0x1ce66,0x1bdc8, // 730 + 0x1dee6,0x18c42,0x1bdc4,0x19cc2,0x1bdc2,0x10850,0x1842c,0x118d0,0x10848,0x18426, // 740 + 0x139d0,0x118c8,0x18c66,0x17bd0,0x139c8,0x19ce6,0x10842,0x17bc8,0x1bde6,0x118c2, // 750 + 0x17bc4,0x1086c,0x118ec,0x10866,0x139ec,0x118e6,0x17bec,0x139e6,0x17be6,0x1ef28, // 760 + 0x1f796,0x1ef24,0x1ef22,0x1ce28,0x1e716,0x1de68,0x1ef36,0x1de64,0x1ce22,0x1de62, // 770 + 0x18c28,0x1c616,0x19c68,0x18c24,0x1bce8,0x19c64,0x18c22,0x1bce4,0x19c62,0x1bce2, // 780 + 0x10828,0x18416,0x11868,0x18c36,0x138e8,0x11864,0x10822,0x179e8,0x138e4,0x11862, // 790 + 0x179e4,0x138e2,0x179e2,0x11876,0x179f6,0x1ef12,0x1de34,0x1de32,0x19c34,0x1bc74, // 800 + 0x1bc72,0x11834,0x13874,0x178f4,0x178f2,0x10540,0x10520,0x18298,0x10510,0x10508, // 810 + 0x10504,0x105b0,0x10598,0x1058c,0x10586,0x105dc,0x105ce,0x186a0,0x18690,0x1c34c, // 820 + 0x18688,0x1c346,0x18684,0x18682,0x104a0,0x18258,0x10da0,0x186d8,0x1824c,0x10d90, // 830 + 0x186cc,0x10d88,0x186c6,0x10d84,0x10482,0x10d82,0x104d8,0x1826e,0x10dd8,0x186ee, // 840 + 0x10dcc,0x104c6,0x10dc6,0x104ee,0x10dee,0x1c750,0x1c748,0x1c744,0x1c742,0x18650, // 850 + 0x18ed0,0x1c76c,0x1c326,0x18ec8,0x1c766,0x18ec4,0x18642,0x18ec2,0x10450,0x10cd0, // 860 + 0x10448,0x18226,0x11dd0,0x10cc8,0x10444,0x11dc8,0x10cc4,0x10442,0x11dc4,0x10cc2, // 870 + 0x1046c,0x10cec,0x10466,0x11dec,0x10ce6,0x11de6,0x1e7a8,0x1e7a4,0x1e7a2,0x1c728, // 880 + 0x1cf68,0x1e7b6,0x1cf64,0x1c722,0x1cf62,0x18628,0x1c316,0x18e68,0x1c736,0x19ee8, // 890 + 0x18e64,0x18622,0x19ee4,0x18e62,0x19ee2,0x10428,0x18216,0x10c68,0x18636,0x11ce8, // 900 + 0x10c64,0x10422,0x13de8,0x11ce4,0x10c62,0x13de4,0x11ce2,0x10436,0x10c76,0x11cf6, // 910 + 0x13df6,0x1f7d4,0x1f7d2,0x1e794,0x1efb4,0x1e792,0x1efb2,0x1c714,0x1cf34,0x1c712, // 920 + 0x1df74,0x1cf32,0x1df72,0x18614,0x18e34,0x18612,0x19e74,0x18e32,0x1bef4), // 929 + array( // cluster 3 ----------------------------------------------------------------------- + 0x1f560,0x1fab8,0x1ea40,0x1f530,0x1fa9c,0x1ea20,0x1f518,0x1fa8e,0x1ea10,0x1f50c, // 10 + 0x1ea08,0x1f506,0x1ea04,0x1eb60,0x1f5b8,0x1fade,0x1d640,0x1eb30,0x1f59c,0x1d620, // 20 + 0x1eb18,0x1f58e,0x1d610,0x1eb0c,0x1d608,0x1eb06,0x1d604,0x1d760,0x1ebb8,0x1f5de, // 30 + 0x1ae40,0x1d730,0x1eb9c,0x1ae20,0x1d718,0x1eb8e,0x1ae10,0x1d70c,0x1ae08,0x1d706, // 40 + 0x1ae04,0x1af60,0x1d7b8,0x1ebde,0x15e40,0x1af30,0x1d79c,0x15e20,0x1af18,0x1d78e, // 50 + 0x15e10,0x1af0c,0x15e08,0x1af06,0x15f60,0x1afb8,0x1d7de,0x15f30,0x1af9c,0x15f18, // 60 + 0x1af8e,0x15f0c,0x15fb8,0x1afde,0x15f9c,0x15f8e,0x1e940,0x1f4b0,0x1fa5c,0x1e920, // 70 + 0x1f498,0x1fa4e,0x1e910,0x1f48c,0x1e908,0x1f486,0x1e904,0x1e902,0x1d340,0x1e9b0, // 80 + 0x1f4dc,0x1d320,0x1e998,0x1f4ce,0x1d310,0x1e98c,0x1d308,0x1e986,0x1d304,0x1d302, // 90 + 0x1a740,0x1d3b0,0x1e9dc,0x1a720,0x1d398,0x1e9ce,0x1a710,0x1d38c,0x1a708,0x1d386, // 100 + 0x1a704,0x1a702,0x14f40,0x1a7b0,0x1d3dc,0x14f20,0x1a798,0x1d3ce,0x14f10,0x1a78c, // 110 + 0x14f08,0x1a786,0x14f04,0x14fb0,0x1a7dc,0x14f98,0x1a7ce,0x14f8c,0x14f86,0x14fdc, // 120 + 0x14fce,0x1e8a0,0x1f458,0x1fa2e,0x1e890,0x1f44c,0x1e888,0x1f446,0x1e884,0x1e882, // 130 + 0x1d1a0,0x1e8d8,0x1f46e,0x1d190,0x1e8cc,0x1d188,0x1e8c6,0x1d184,0x1d182,0x1a3a0, // 140 + 0x1d1d8,0x1e8ee,0x1a390,0x1d1cc,0x1a388,0x1d1c6,0x1a384,0x1a382,0x147a0,0x1a3d8, // 150 + 0x1d1ee,0x14790,0x1a3cc,0x14788,0x1a3c6,0x14784,0x14782,0x147d8,0x1a3ee,0x147cc, // 160 + 0x147c6,0x147ee,0x1e850,0x1f42c,0x1e848,0x1f426,0x1e844,0x1e842,0x1d0d0,0x1e86c, // 170 + 0x1d0c8,0x1e866,0x1d0c4,0x1d0c2,0x1a1d0,0x1d0ec,0x1a1c8,0x1d0e6,0x1a1c4,0x1a1c2, // 180 + 0x143d0,0x1a1ec,0x143c8,0x1a1e6,0x143c4,0x143c2,0x143ec,0x143e6,0x1e828,0x1f416, // 190 + 0x1e824,0x1e822,0x1d068,0x1e836,0x1d064,0x1d062,0x1a0e8,0x1d076,0x1a0e4,0x1a0e2, // 200 + 0x141e8,0x1a0f6,0x141e4,0x141e2,0x1e814,0x1e812,0x1d034,0x1d032,0x1a074,0x1a072, // 210 + 0x1e540,0x1f2b0,0x1f95c,0x1e520,0x1f298,0x1f94e,0x1e510,0x1f28c,0x1e508,0x1f286, // 220 + 0x1e504,0x1e502,0x1cb40,0x1e5b0,0x1f2dc,0x1cb20,0x1e598,0x1f2ce,0x1cb10,0x1e58c, // 230 + 0x1cb08,0x1e586,0x1cb04,0x1cb02,0x19740,0x1cbb0,0x1e5dc,0x19720,0x1cb98,0x1e5ce, // 240 + 0x19710,0x1cb8c,0x19708,0x1cb86,0x19704,0x19702,0x12f40,0x197b0,0x1cbdc,0x12f20, // 250 + 0x19798,0x1cbce,0x12f10,0x1978c,0x12f08,0x19786,0x12f04,0x12fb0,0x197dc,0x12f98, // 260 + 0x197ce,0x12f8c,0x12f86,0x12fdc,0x12fce,0x1f6a0,0x1fb58,0x16bf0,0x1f690,0x1fb4c, // 270 + 0x169f8,0x1f688,0x1fb46,0x168fc,0x1f684,0x1f682,0x1e4a0,0x1f258,0x1f92e,0x1eda0, // 280 + 0x1e490,0x1fb6e,0x1ed90,0x1f6cc,0x1f246,0x1ed88,0x1e484,0x1ed84,0x1e482,0x1ed82, // 290 + 0x1c9a0,0x1e4d8,0x1f26e,0x1dba0,0x1c990,0x1e4cc,0x1db90,0x1edcc,0x1e4c6,0x1db88, // 300 + 0x1c984,0x1db84,0x1c982,0x1db82,0x193a0,0x1c9d8,0x1e4ee,0x1b7a0,0x19390,0x1c9cc, // 310 + 0x1b790,0x1dbcc,0x1c9c6,0x1b788,0x19384,0x1b784,0x19382,0x1b782,0x127a0,0x193d8, // 320 + 0x1c9ee,0x16fa0,0x12790,0x193cc,0x16f90,0x1b7cc,0x193c6,0x16f88,0x12784,0x16f84, // 330 + 0x12782,0x127d8,0x193ee,0x16fd8,0x127cc,0x16fcc,0x127c6,0x16fc6,0x127ee,0x1f650, // 340 + 0x1fb2c,0x165f8,0x1f648,0x1fb26,0x164fc,0x1f644,0x1647e,0x1f642,0x1e450,0x1f22c, // 350 + 0x1ecd0,0x1e448,0x1f226,0x1ecc8,0x1f666,0x1ecc4,0x1e442,0x1ecc2,0x1c8d0,0x1e46c, // 360 + 0x1d9d0,0x1c8c8,0x1e466,0x1d9c8,0x1ece6,0x1d9c4,0x1c8c2,0x1d9c2,0x191d0,0x1c8ec, // 370 + 0x1b3d0,0x191c8,0x1c8e6,0x1b3c8,0x1d9e6,0x1b3c4,0x191c2,0x1b3c2,0x123d0,0x191ec, // 380 + 0x167d0,0x123c8,0x191e6,0x167c8,0x1b3e6,0x167c4,0x123c2,0x167c2,0x123ec,0x167ec, // 390 + 0x123e6,0x167e6,0x1f628,0x1fb16,0x162fc,0x1f624,0x1627e,0x1f622,0x1e428,0x1f216, // 400 + 0x1ec68,0x1f636,0x1ec64,0x1e422,0x1ec62,0x1c868,0x1e436,0x1d8e8,0x1c864,0x1d8e4, // 410 + 0x1c862,0x1d8e2,0x190e8,0x1c876,0x1b1e8,0x1d8f6,0x1b1e4,0x190e2,0x1b1e2,0x121e8, // 420 + 0x190f6,0x163e8,0x121e4,0x163e4,0x121e2,0x163e2,0x121f6,0x163f6,0x1f614,0x1617e, // 430 + 0x1f612,0x1e414,0x1ec34,0x1e412,0x1ec32,0x1c834,0x1d874,0x1c832,0x1d872,0x19074, // 440 + 0x1b0f4,0x19072,0x1b0f2,0x120f4,0x161f4,0x120f2,0x161f2,0x1f60a,0x1e40a,0x1ec1a, // 450 + 0x1c81a,0x1d83a,0x1903a,0x1b07a,0x1e2a0,0x1f158,0x1f8ae,0x1e290,0x1f14c,0x1e288, // 460 + 0x1f146,0x1e284,0x1e282,0x1c5a0,0x1e2d8,0x1f16e,0x1c590,0x1e2cc,0x1c588,0x1e2c6, // 470 + 0x1c584,0x1c582,0x18ba0,0x1c5d8,0x1e2ee,0x18b90,0x1c5cc,0x18b88,0x1c5c6,0x18b84, // 480 + 0x18b82,0x117a0,0x18bd8,0x1c5ee,0x11790,0x18bcc,0x11788,0x18bc6,0x11784,0x11782, // 490 + 0x117d8,0x18bee,0x117cc,0x117c6,0x117ee,0x1f350,0x1f9ac,0x135f8,0x1f348,0x1f9a6, // 500 + 0x134fc,0x1f344,0x1347e,0x1f342,0x1e250,0x1f12c,0x1e6d0,0x1e248,0x1f126,0x1e6c8, // 510 + 0x1f366,0x1e6c4,0x1e242,0x1e6c2,0x1c4d0,0x1e26c,0x1cdd0,0x1c4c8,0x1e266,0x1cdc8, // 520 + 0x1e6e6,0x1cdc4,0x1c4c2,0x1cdc2,0x189d0,0x1c4ec,0x19bd0,0x189c8,0x1c4e6,0x19bc8, // 530 + 0x1cde6,0x19bc4,0x189c2,0x19bc2,0x113d0,0x189ec,0x137d0,0x113c8,0x189e6,0x137c8, // 540 + 0x19be6,0x137c4,0x113c2,0x137c2,0x113ec,0x137ec,0x113e6,0x137e6,0x1fba8,0x175f0, // 550 + 0x1bafc,0x1fba4,0x174f8,0x1ba7e,0x1fba2,0x1747c,0x1743e,0x1f328,0x1f996,0x132fc, // 560 + 0x1f768,0x1fbb6,0x176fc,0x1327e,0x1f764,0x1f322,0x1767e,0x1f762,0x1e228,0x1f116, // 570 + 0x1e668,0x1e224,0x1eee8,0x1f776,0x1e222,0x1eee4,0x1e662,0x1eee2,0x1c468,0x1e236, // 580 + 0x1cce8,0x1c464,0x1dde8,0x1cce4,0x1c462,0x1dde4,0x1cce2,0x1dde2,0x188e8,0x1c476, // 590 + 0x199e8,0x188e4,0x1bbe8,0x199e4,0x188e2,0x1bbe4,0x199e2,0x1bbe2,0x111e8,0x188f6, // 600 + 0x133e8,0x111e4,0x177e8,0x133e4,0x111e2,0x177e4,0x133e2,0x177e2,0x111f6,0x133f6, // 610 + 0x1fb94,0x172f8,0x1b97e,0x1fb92,0x1727c,0x1723e,0x1f314,0x1317e,0x1f734,0x1f312, // 620 + 0x1737e,0x1f732,0x1e214,0x1e634,0x1e212,0x1ee74,0x1e632,0x1ee72,0x1c434,0x1cc74, // 630 + 0x1c432,0x1dcf4,0x1cc72,0x1dcf2,0x18874,0x198f4,0x18872,0x1b9f4,0x198f2,0x1b9f2, // 640 + 0x110f4,0x131f4,0x110f2,0x173f4,0x131f2,0x173f2,0x1fb8a,0x1717c,0x1713e,0x1f30a, // 650 + 0x1f71a,0x1e20a,0x1e61a,0x1ee3a,0x1c41a,0x1cc3a,0x1dc7a,0x1883a,0x1987a,0x1b8fa, // 660 + 0x1107a,0x130fa,0x171fa,0x170be,0x1e150,0x1f0ac,0x1e148,0x1f0a6,0x1e144,0x1e142, // 670 + 0x1c2d0,0x1e16c,0x1c2c8,0x1e166,0x1c2c4,0x1c2c2,0x185d0,0x1c2ec,0x185c8,0x1c2e6, // 680 + 0x185c4,0x185c2,0x10bd0,0x185ec,0x10bc8,0x185e6,0x10bc4,0x10bc2,0x10bec,0x10be6, // 690 + 0x1f1a8,0x1f8d6,0x11afc,0x1f1a4,0x11a7e,0x1f1a2,0x1e128,0x1f096,0x1e368,0x1e124, // 700 + 0x1e364,0x1e122,0x1e362,0x1c268,0x1e136,0x1c6e8,0x1c264,0x1c6e4,0x1c262,0x1c6e2, // 710 + 0x184e8,0x1c276,0x18de8,0x184e4,0x18de4,0x184e2,0x18de2,0x109e8,0x184f6,0x11be8, // 720 + 0x109e4,0x11be4,0x109e2,0x11be2,0x109f6,0x11bf6,0x1f9d4,0x13af8,0x19d7e,0x1f9d2, // 730 + 0x13a7c,0x13a3e,0x1f194,0x1197e,0x1f3b4,0x1f192,0x13b7e,0x1f3b2,0x1e114,0x1e334, // 740 + 0x1e112,0x1e774,0x1e332,0x1e772,0x1c234,0x1c674,0x1c232,0x1cef4,0x1c672,0x1cef2, // 750 + 0x18474,0x18cf4,0x18472,0x19df4,0x18cf2,0x19df2,0x108f4,0x119f4,0x108f2,0x13bf4, // 760 + 0x119f2,0x13bf2,0x17af0,0x1bd7c,0x17a78,0x1bd3e,0x17a3c,0x17a1e,0x1f9ca,0x1397c, // 770 + 0x1fbda,0x17b7c,0x1393e,0x17b3e,0x1f18a,0x1f39a,0x1f7ba,0x1e10a,0x1e31a,0x1e73a, // 780 + 0x1ef7a,0x1c21a,0x1c63a,0x1ce7a,0x1defa,0x1843a,0x18c7a,0x19cfa,0x1bdfa,0x1087a, // 790 + 0x118fa,0x139fa,0x17978,0x1bcbe,0x1793c,0x1791e,0x138be,0x179be,0x178bc,0x1789e, // 800 + 0x1785e,0x1e0a8,0x1e0a4,0x1e0a2,0x1c168,0x1e0b6,0x1c164,0x1c162,0x182e8,0x1c176, // 810 + 0x182e4,0x182e2,0x105e8,0x182f6,0x105e4,0x105e2,0x105f6,0x1f0d4,0x10d7e,0x1f0d2, // 820 + 0x1e094,0x1e1b4,0x1e092,0x1e1b2,0x1c134,0x1c374,0x1c132,0x1c372,0x18274,0x186f4, // 830 + 0x18272,0x186f2,0x104f4,0x10df4,0x104f2,0x10df2,0x1f8ea,0x11d7c,0x11d3e,0x1f0ca, // 840 + 0x1f1da,0x1e08a,0x1e19a,0x1e3ba,0x1c11a,0x1c33a,0x1c77a,0x1823a,0x1867a,0x18efa, // 850 + 0x1047a,0x10cfa,0x11dfa,0x13d78,0x19ebe,0x13d3c,0x13d1e,0x11cbe,0x13dbe,0x17d70, // 860 + 0x1bebc,0x17d38,0x1be9e,0x17d1c,0x17d0e,0x13cbc,0x17dbc,0x13c9e,0x17d9e,0x17cb8, // 870 + 0x1be5e,0x17c9c,0x17c8e,0x13c5e,0x17cde,0x17c5c,0x17c4e,0x17c2e,0x1c0b4,0x1c0b2, // 880 + 0x18174,0x18172,0x102f4,0x102f2,0x1e0da,0x1c09a,0x1c1ba,0x1813a,0x1837a,0x1027a, // 890 + 0x106fa,0x10ebe,0x11ebc,0x11e9e,0x13eb8,0x19f5e,0x13e9c,0x13e8e,0x11e5e,0x13ede, // 900 + 0x17eb0,0x1bf5c,0x17e98,0x1bf4e,0x17e8c,0x17e86,0x13e5c,0x17edc,0x13e4e,0x17ece, // 910 + 0x17e58,0x1bf2e,0x17e4c,0x17e46,0x13e2e,0x17e6e,0x17e2c,0x17e26,0x10f5e,0x11f5c, // 920 + 0x11f4e,0x13f58,0x19fae,0x13f4c,0x13f46,0x11f2e,0x13f6e,0x13f2c,0x13f26), // 929 + array( // cluster 6 ----------------------------------------------------------------------- + 0x1abe0,0x1d5f8,0x153c0,0x1a9f0,0x1d4fc,0x151e0,0x1a8f8,0x1d47e,0x150f0,0x1a87c, // 10 + 0x15078,0x1fad0,0x15be0,0x1adf8,0x1fac8,0x159f0,0x1acfc,0x1fac4,0x158f8,0x1ac7e, // 20 + 0x1fac2,0x1587c,0x1f5d0,0x1faec,0x15df8,0x1f5c8,0x1fae6,0x15cfc,0x1f5c4,0x15c7e, // 30 + 0x1f5c2,0x1ebd0,0x1f5ec,0x1ebc8,0x1f5e6,0x1ebc4,0x1ebc2,0x1d7d0,0x1ebec,0x1d7c8, // 40 + 0x1ebe6,0x1d7c4,0x1d7c2,0x1afd0,0x1d7ec,0x1afc8,0x1d7e6,0x1afc4,0x14bc0,0x1a5f0, // 50 + 0x1d2fc,0x149e0,0x1a4f8,0x1d27e,0x148f0,0x1a47c,0x14878,0x1a43e,0x1483c,0x1fa68, // 60 + 0x14df0,0x1a6fc,0x1fa64,0x14cf8,0x1a67e,0x1fa62,0x14c7c,0x14c3e,0x1f4e8,0x1fa76, // 70 + 0x14efc,0x1f4e4,0x14e7e,0x1f4e2,0x1e9e8,0x1f4f6,0x1e9e4,0x1e9e2,0x1d3e8,0x1e9f6, // 80 + 0x1d3e4,0x1d3e2,0x1a7e8,0x1d3f6,0x1a7e4,0x1a7e2,0x145e0,0x1a2f8,0x1d17e,0x144f0, // 90 + 0x1a27c,0x14478,0x1a23e,0x1443c,0x1441e,0x1fa34,0x146f8,0x1a37e,0x1fa32,0x1467c, // 100 + 0x1463e,0x1f474,0x1477e,0x1f472,0x1e8f4,0x1e8f2,0x1d1f4,0x1d1f2,0x1a3f4,0x1a3f2, // 110 + 0x142f0,0x1a17c,0x14278,0x1a13e,0x1423c,0x1421e,0x1fa1a,0x1437c,0x1433e,0x1f43a, // 120 + 0x1e87a,0x1d0fa,0x14178,0x1a0be,0x1413c,0x1411e,0x141be,0x140bc,0x1409e,0x12bc0, // 130 + 0x195f0,0x1cafc,0x129e0,0x194f8,0x1ca7e,0x128f0,0x1947c,0x12878,0x1943e,0x1283c, // 140 + 0x1f968,0x12df0,0x196fc,0x1f964,0x12cf8,0x1967e,0x1f962,0x12c7c,0x12c3e,0x1f2e8, // 150 + 0x1f976,0x12efc,0x1f2e4,0x12e7e,0x1f2e2,0x1e5e8,0x1f2f6,0x1e5e4,0x1e5e2,0x1cbe8, // 160 + 0x1e5f6,0x1cbe4,0x1cbe2,0x197e8,0x1cbf6,0x197e4,0x197e2,0x1b5e0,0x1daf8,0x1ed7e, // 170 + 0x169c0,0x1b4f0,0x1da7c,0x168e0,0x1b478,0x1da3e,0x16870,0x1b43c,0x16838,0x1b41e, // 180 + 0x1681c,0x125e0,0x192f8,0x1c97e,0x16de0,0x124f0,0x1927c,0x16cf0,0x1b67c,0x1923e, // 190 + 0x16c78,0x1243c,0x16c3c,0x1241e,0x16c1e,0x1f934,0x126f8,0x1937e,0x1fb74,0x1f932, // 200 + 0x16ef8,0x1267c,0x1fb72,0x16e7c,0x1263e,0x16e3e,0x1f274,0x1277e,0x1f6f4,0x1f272, // 210 + 0x16f7e,0x1f6f2,0x1e4f4,0x1edf4,0x1e4f2,0x1edf2,0x1c9f4,0x1dbf4,0x1c9f2,0x1dbf2, // 220 + 0x193f4,0x193f2,0x165c0,0x1b2f0,0x1d97c,0x164e0,0x1b278,0x1d93e,0x16470,0x1b23c, // 230 + 0x16438,0x1b21e,0x1641c,0x1640e,0x122f0,0x1917c,0x166f0,0x12278,0x1913e,0x16678, // 240 + 0x1b33e,0x1663c,0x1221e,0x1661e,0x1f91a,0x1237c,0x1fb3a,0x1677c,0x1233e,0x1673e, // 250 + 0x1f23a,0x1f67a,0x1e47a,0x1ecfa,0x1c8fa,0x1d9fa,0x191fa,0x162e0,0x1b178,0x1d8be, // 260 + 0x16270,0x1b13c,0x16238,0x1b11e,0x1621c,0x1620e,0x12178,0x190be,0x16378,0x1213c, // 270 + 0x1633c,0x1211e,0x1631e,0x121be,0x163be,0x16170,0x1b0bc,0x16138,0x1b09e,0x1611c, // 280 + 0x1610e,0x120bc,0x161bc,0x1209e,0x1619e,0x160b8,0x1b05e,0x1609c,0x1608e,0x1205e, // 290 + 0x160de,0x1605c,0x1604e,0x115e0,0x18af8,0x1c57e,0x114f0,0x18a7c,0x11478,0x18a3e, // 300 + 0x1143c,0x1141e,0x1f8b4,0x116f8,0x18b7e,0x1f8b2,0x1167c,0x1163e,0x1f174,0x1177e, // 310 + 0x1f172,0x1e2f4,0x1e2f2,0x1c5f4,0x1c5f2,0x18bf4,0x18bf2,0x135c0,0x19af0,0x1cd7c, // 320 + 0x134e0,0x19a78,0x1cd3e,0x13470,0x19a3c,0x13438,0x19a1e,0x1341c,0x1340e,0x112f0, // 330 + 0x1897c,0x136f0,0x11278,0x1893e,0x13678,0x19b3e,0x1363c,0x1121e,0x1361e,0x1f89a, // 340 + 0x1137c,0x1f9ba,0x1377c,0x1133e,0x1373e,0x1f13a,0x1f37a,0x1e27a,0x1e6fa,0x1c4fa, // 350 + 0x1cdfa,0x189fa,0x1bae0,0x1dd78,0x1eebe,0x174c0,0x1ba70,0x1dd3c,0x17460,0x1ba38, // 360 + 0x1dd1e,0x17430,0x1ba1c,0x17418,0x1ba0e,0x1740c,0x132e0,0x19978,0x1ccbe,0x176e0, // 370 + 0x13270,0x1993c,0x17670,0x1bb3c,0x1991e,0x17638,0x1321c,0x1761c,0x1320e,0x1760e, // 380 + 0x11178,0x188be,0x13378,0x1113c,0x17778,0x1333c,0x1111e,0x1773c,0x1331e,0x1771e, // 390 + 0x111be,0x133be,0x177be,0x172c0,0x1b970,0x1dcbc,0x17260,0x1b938,0x1dc9e,0x17230, // 400 + 0x1b91c,0x17218,0x1b90e,0x1720c,0x17206,0x13170,0x198bc,0x17370,0x13138,0x1989e, // 410 + 0x17338,0x1b99e,0x1731c,0x1310e,0x1730e,0x110bc,0x131bc,0x1109e,0x173bc,0x1319e, // 420 + 0x1739e,0x17160,0x1b8b8,0x1dc5e,0x17130,0x1b89c,0x17118,0x1b88e,0x1710c,0x17106, // 430 + 0x130b8,0x1985e,0x171b8,0x1309c,0x1719c,0x1308e,0x1718e,0x1105e,0x130de,0x171de, // 440 + 0x170b0,0x1b85c,0x17098,0x1b84e,0x1708c,0x17086,0x1305c,0x170dc,0x1304e,0x170ce, // 450 + 0x17058,0x1b82e,0x1704c,0x17046,0x1302e,0x1706e,0x1702c,0x17026,0x10af0,0x1857c, // 460 + 0x10a78,0x1853e,0x10a3c,0x10a1e,0x10b7c,0x10b3e,0x1f0ba,0x1e17a,0x1c2fa,0x185fa, // 470 + 0x11ae0,0x18d78,0x1c6be,0x11a70,0x18d3c,0x11a38,0x18d1e,0x11a1c,0x11a0e,0x10978, // 480 + 0x184be,0x11b78,0x1093c,0x11b3c,0x1091e,0x11b1e,0x109be,0x11bbe,0x13ac0,0x19d70, // 490 + 0x1cebc,0x13a60,0x19d38,0x1ce9e,0x13a30,0x19d1c,0x13a18,0x19d0e,0x13a0c,0x13a06, // 500 + 0x11970,0x18cbc,0x13b70,0x11938,0x18c9e,0x13b38,0x1191c,0x13b1c,0x1190e,0x13b0e, // 510 + 0x108bc,0x119bc,0x1089e,0x13bbc,0x1199e,0x13b9e,0x1bd60,0x1deb8,0x1ef5e,0x17a40, // 520 + 0x1bd30,0x1de9c,0x17a20,0x1bd18,0x1de8e,0x17a10,0x1bd0c,0x17a08,0x1bd06,0x17a04, // 530 + 0x13960,0x19cb8,0x1ce5e,0x17b60,0x13930,0x19c9c,0x17b30,0x1bd9c,0x19c8e,0x17b18, // 540 + 0x1390c,0x17b0c,0x13906,0x17b06,0x118b8,0x18c5e,0x139b8,0x1189c,0x17bb8,0x1399c, // 550 + 0x1188e,0x17b9c,0x1398e,0x17b8e,0x1085e,0x118de,0x139de,0x17bde,0x17940,0x1bcb0, // 560 + 0x1de5c,0x17920,0x1bc98,0x1de4e,0x17910,0x1bc8c,0x17908,0x1bc86,0x17904,0x17902, // 570 + 0x138b0,0x19c5c,0x179b0,0x13898,0x19c4e,0x17998,0x1bcce,0x1798c,0x13886,0x17986, // 580 + 0x1185c,0x138dc,0x1184e,0x179dc,0x138ce,0x179ce,0x178a0,0x1bc58,0x1de2e,0x17890, // 590 + 0x1bc4c,0x17888,0x1bc46,0x17884,0x17882,0x13858,0x19c2e,0x178d8,0x1384c,0x178cc, // 600 + 0x13846,0x178c6,0x1182e,0x1386e,0x178ee,0x17850,0x1bc2c,0x17848,0x1bc26,0x17844, // 610 + 0x17842,0x1382c,0x1786c,0x13826,0x17866,0x17828,0x1bc16,0x17824,0x17822,0x13816, // 620 + 0x17836,0x10578,0x182be,0x1053c,0x1051e,0x105be,0x10d70,0x186bc,0x10d38,0x1869e, // 630 + 0x10d1c,0x10d0e,0x104bc,0x10dbc,0x1049e,0x10d9e,0x11d60,0x18eb8,0x1c75e,0x11d30, // 640 + 0x18e9c,0x11d18,0x18e8e,0x11d0c,0x11d06,0x10cb8,0x1865e,0x11db8,0x10c9c,0x11d9c, // 650 + 0x10c8e,0x11d8e,0x1045e,0x10cde,0x11dde,0x13d40,0x19eb0,0x1cf5c,0x13d20,0x19e98, // 660 + 0x1cf4e,0x13d10,0x19e8c,0x13d08,0x19e86,0x13d04,0x13d02,0x11cb0,0x18e5c,0x13db0, // 670 + 0x11c98,0x18e4e,0x13d98,0x19ece,0x13d8c,0x11c86,0x13d86,0x10c5c,0x11cdc,0x10c4e, // 680 + 0x13ddc,0x11cce,0x13dce,0x1bea0,0x1df58,0x1efae,0x1be90,0x1df4c,0x1be88,0x1df46, // 690 + 0x1be84,0x1be82,0x13ca0,0x19e58,0x1cf2e,0x17da0,0x13c90,0x19e4c,0x17d90,0x1becc, // 700 + 0x19e46,0x17d88,0x13c84,0x17d84,0x13c82,0x17d82,0x11c58,0x18e2e,0x13cd8,0x11c4c, // 710 + 0x17dd8,0x13ccc,0x11c46,0x17dcc,0x13cc6,0x17dc6,0x10c2e,0x11c6e,0x13cee,0x17dee, // 720 + 0x1be50,0x1df2c,0x1be48,0x1df26,0x1be44,0x1be42,0x13c50,0x19e2c,0x17cd0,0x13c48, // 730 + 0x19e26,0x17cc8,0x1be66,0x17cc4,0x13c42,0x17cc2,0x11c2c,0x13c6c,0x11c26,0x17cec, // 740 + 0x13c66,0x17ce6,0x1be28,0x1df16,0x1be24,0x1be22,0x13c28,0x19e16,0x17c68,0x13c24, // 750 + 0x17c64,0x13c22,0x17c62,0x11c16,0x13c36,0x17c76,0x1be14,0x1be12,0x13c14,0x17c34, // 760 + 0x13c12,0x17c32,0x102bc,0x1029e,0x106b8,0x1835e,0x1069c,0x1068e,0x1025e,0x106de, // 770 + 0x10eb0,0x1875c,0x10e98,0x1874e,0x10e8c,0x10e86,0x1065c,0x10edc,0x1064e,0x10ece, // 780 + 0x11ea0,0x18f58,0x1c7ae,0x11e90,0x18f4c,0x11e88,0x18f46,0x11e84,0x11e82,0x10e58, // 790 + 0x1872e,0x11ed8,0x18f6e,0x11ecc,0x10e46,0x11ec6,0x1062e,0x10e6e,0x11eee,0x19f50, // 800 + 0x1cfac,0x19f48,0x1cfa6,0x19f44,0x19f42,0x11e50,0x18f2c,0x13ed0,0x19f6c,0x18f26, // 810 + 0x13ec8,0x11e44,0x13ec4,0x11e42,0x13ec2,0x10e2c,0x11e6c,0x10e26,0x13eec,0x11e66, // 820 + 0x13ee6,0x1dfa8,0x1efd6,0x1dfa4,0x1dfa2,0x19f28,0x1cf96,0x1bf68,0x19f24,0x1bf64, // 830 + 0x19f22,0x1bf62,0x11e28,0x18f16,0x13e68,0x11e24,0x17ee8,0x13e64,0x11e22,0x17ee4, // 840 + 0x13e62,0x17ee2,0x10e16,0x11e36,0x13e76,0x17ef6,0x1df94,0x1df92,0x19f14,0x1bf34, // 850 + 0x19f12,0x1bf32,0x11e14,0x13e34,0x11e12,0x17e74,0x13e32,0x17e72,0x1df8a,0x19f0a, // 860 + 0x1bf1a,0x11e0a,0x13e1a,0x17e3a,0x1035c,0x1034e,0x10758,0x183ae,0x1074c,0x10746, // 870 + 0x1032e,0x1076e,0x10f50,0x187ac,0x10f48,0x187a6,0x10f44,0x10f42,0x1072c,0x10f6c, // 880 + 0x10726,0x10f66,0x18fa8,0x1c7d6,0x18fa4,0x18fa2,0x10f28,0x18796,0x11f68,0x18fb6, // 890 + 0x11f64,0x10f22,0x11f62,0x10716,0x10f36,0x11f76,0x1cfd4,0x1cfd2,0x18f94,0x19fb4, // 900 + 0x18f92,0x19fb2,0x10f14,0x11f34,0x10f12,0x13f74,0x11f32,0x13f72,0x1cfca,0x18f8a, // 910 + 0x19f9a,0x10f0a,0x11f1a,0x13f3a,0x103ac,0x103a6,0x107a8,0x183d6,0x107a4,0x107a2, // 920 + 0x10396,0x107b6,0x187d4,0x187d2,0x10794,0x10fb4,0x10792,0x10fb2,0x1c7ea) // 929 + ); // end of $clusters array + + /** + * Array of factors of the Reed-Solomon polynomial equations used for error correction; one sub array for each correction level (0-8). + * @protected + */ + protected $rsfactors = array( + array( // ECL 0 (2 factors) ------------------------------------------------------------------------------- + 0x01b,0x395), // 2 + array( // ECL 1 (4 factors) ------------------------------------------------------------------------------- + 0x20a,0x238,0x2d3,0x329), // 4 + array( // ECL 2 (8 factors) ------------------------------------------------------------------------------- + 0x0ed,0x134,0x1b4,0x11c,0x286,0x28d,0x1ac,0x17b), // 8 + array( // ECL 3 (16 factors) ------------------------------------------------------------------------------ + 0x112,0x232,0x0e8,0x2f3,0x257,0x20c,0x321,0x084,0x127,0x074,0x1ba,0x1ac,0x127,0x02a,0x0b0,0x041),// 16 + array( // ECL 4 (32 factors) ------------------------------------------------------------------------------ + 0x169,0x23f,0x39a,0x20d,0x0b0,0x24a,0x280,0x141,0x218,0x2e6,0x2a5,0x2e6,0x2af,0x11c,0x0c1,0x205, // 16 + 0x111,0x1ee,0x107,0x093,0x251,0x320,0x23b,0x140,0x323,0x085,0x0e7,0x186,0x2ad,0x14a,0x03f,0x19a),// 32 + array( // ECL 5 (64 factors) ------------------------------------------------------------------------------ + 0x21b,0x1a6,0x006,0x05d,0x35e,0x303,0x1c5,0x06a,0x262,0x11f,0x06b,0x1f9,0x2dd,0x36d,0x17d,0x264, // 16 + 0x2d3,0x1dc,0x1ce,0x0ac,0x1ae,0x261,0x35a,0x336,0x21f,0x178,0x1ff,0x190,0x2a0,0x2fa,0x11b,0x0b8, // 32 + 0x1b8,0x023,0x207,0x01f,0x1cc,0x252,0x0e1,0x217,0x205,0x160,0x25d,0x09e,0x28b,0x0c9,0x1e8,0x1f6, // 48 + 0x288,0x2dd,0x2cd,0x053,0x194,0x061,0x118,0x303,0x348,0x275,0x004,0x17d,0x34b,0x26f,0x108,0x21f),// 64 + array( // ECL 6 (128 factors) ----------------------------------------------------------------------------- + 0x209,0x136,0x360,0x223,0x35a,0x244,0x128,0x17b,0x035,0x30b,0x381,0x1bc,0x190,0x39d,0x2ed,0x19f, // 16 + 0x336,0x05d,0x0d9,0x0d0,0x3a0,0x0f4,0x247,0x26c,0x0f6,0x094,0x1bf,0x277,0x124,0x38c,0x1ea,0x2c0, // 32 + 0x204,0x102,0x1c9,0x38b,0x252,0x2d3,0x2a2,0x124,0x110,0x060,0x2ac,0x1b0,0x2ae,0x25e,0x35c,0x239, // 48 + 0x0c1,0x0db,0x081,0x0ba,0x0ec,0x11f,0x0c0,0x307,0x116,0x0ad,0x028,0x17b,0x2c8,0x1cf,0x286,0x308, // 64 + 0x0ab,0x1eb,0x129,0x2fb,0x09c,0x2dc,0x05f,0x10e,0x1bf,0x05a,0x1fb,0x030,0x0e4,0x335,0x328,0x382, // 80 + 0x310,0x297,0x273,0x17a,0x17e,0x106,0x17c,0x25a,0x2f2,0x150,0x059,0x266,0x057,0x1b0,0x29e,0x268, // 96 + 0x09d,0x176,0x0f2,0x2d6,0x258,0x10d,0x177,0x382,0x34d,0x1c6,0x162,0x082,0x32e,0x24b,0x324,0x022, // 112 + 0x0d3,0x14a,0x21b,0x129,0x33b,0x361,0x025,0x205,0x342,0x13b,0x226,0x056,0x321,0x004,0x06c,0x21b),// 128 + array( // ECL 7 (256 factors) ----------------------------------------------------------------------------- + 0x20c,0x37e,0x04b,0x2fe,0x372,0x359,0x04a,0x0cc,0x052,0x24a,0x2c4,0x0fa,0x389,0x312,0x08a,0x2d0, // 16 + 0x35a,0x0c2,0x137,0x391,0x113,0x0be,0x177,0x352,0x1b6,0x2dd,0x0c2,0x118,0x0c9,0x118,0x33c,0x2f5, // 32 + 0x2c6,0x32e,0x397,0x059,0x044,0x239,0x00b,0x0cc,0x31c,0x25d,0x21c,0x391,0x321,0x2bc,0x31f,0x089, // 48 + 0x1b7,0x1a2,0x250,0x29c,0x161,0x35b,0x172,0x2b6,0x145,0x0f0,0x0d8,0x101,0x11c,0x225,0x0d1,0x374, // 64 + 0x13b,0x046,0x149,0x319,0x1ea,0x112,0x36d,0x0a2,0x2ed,0x32c,0x2ac,0x1cd,0x14e,0x178,0x351,0x209, // 80 + 0x133,0x123,0x323,0x2c8,0x013,0x166,0x18f,0x38c,0x067,0x1ff,0x033,0x008,0x205,0x0e1,0x121,0x1d6, // 96 + 0x27d,0x2db,0x042,0x0ff,0x395,0x10d,0x1cf,0x33e,0x2da,0x1b1,0x350,0x249,0x088,0x21a,0x38a,0x05a, // 112 + 0x002,0x122,0x2e7,0x0c7,0x28f,0x387,0x149,0x031,0x322,0x244,0x163,0x24c,0x0bc,0x1ce,0x00a,0x086, // 128 + 0x274,0x140,0x1df,0x082,0x2e3,0x047,0x107,0x13e,0x176,0x259,0x0c0,0x25d,0x08e,0x2a1,0x2af,0x0ea, // 144 + 0x2d2,0x180,0x0b1,0x2f0,0x25f,0x280,0x1c7,0x0c1,0x2b1,0x2c3,0x325,0x281,0x030,0x03c,0x2dc,0x26d, // 160 + 0x37f,0x220,0x105,0x354,0x28f,0x135,0x2b9,0x2f3,0x2f4,0x03c,0x0e7,0x305,0x1b2,0x1a5,0x2d6,0x210, // 176 + 0x1f7,0x076,0x031,0x31b,0x020,0x090,0x1f4,0x0ee,0x344,0x18a,0x118,0x236,0x13f,0x009,0x287,0x226, // 192 + 0x049,0x392,0x156,0x07e,0x020,0x2a9,0x14b,0x318,0x26c,0x03c,0x261,0x1b9,0x0b4,0x317,0x37d,0x2f2, // 208 + 0x25d,0x17f,0x0e4,0x2ed,0x2f8,0x0d5,0x036,0x129,0x086,0x036,0x342,0x12b,0x39a,0x0bf,0x38e,0x214, // 224 + 0x261,0x33d,0x0bd,0x014,0x0a7,0x01d,0x368,0x1c1,0x053,0x192,0x029,0x290,0x1f9,0x243,0x1e1,0x0ad, // 240 + 0x194,0x0fb,0x2b0,0x05f,0x1f1,0x22b,0x282,0x21f,0x133,0x09f,0x39c,0x22e,0x288,0x037,0x1f1,0x00a),// 256 + array( // ECL 8 (512 factors) ----------------------------------------------------------------------------- + 0x160,0x04d,0x175,0x1f8,0x023,0x257,0x1ac,0x0cf,0x199,0x23e,0x076,0x1f2,0x11d,0x17c,0x15e,0x1ec, // 16 + 0x0c5,0x109,0x398,0x09b,0x392,0x12b,0x0e5,0x283,0x126,0x367,0x132,0x058,0x057,0x0c1,0x160,0x30d, // 32 + 0x34e,0x04b,0x147,0x208,0x1b3,0x21f,0x0cb,0x29a,0x0f9,0x15a,0x30d,0x26d,0x280,0x10c,0x31a,0x216, // 48 + 0x21b,0x30d,0x198,0x186,0x284,0x066,0x1dc,0x1f3,0x122,0x278,0x221,0x025,0x35a,0x394,0x228,0x029, // 64 + 0x21e,0x121,0x07a,0x110,0x17f,0x320,0x1e5,0x062,0x2f0,0x1d8,0x2f9,0x06b,0x310,0x35c,0x292,0x2e5, // 80 + 0x122,0x0cc,0x2a9,0x197,0x357,0x055,0x063,0x03e,0x1e2,0x0b4,0x014,0x129,0x1c3,0x251,0x391,0x08e, // 96 + 0x328,0x2ac,0x11f,0x218,0x231,0x04c,0x28d,0x383,0x2d9,0x237,0x2e8,0x186,0x201,0x0c0,0x204,0x102, // 112 + 0x0f0,0x206,0x31a,0x18b,0x300,0x350,0x033,0x262,0x180,0x0a8,0x0be,0x33a,0x148,0x254,0x312,0x12f, // 128 + 0x23a,0x17d,0x19f,0x281,0x09c,0x0ed,0x097,0x1ad,0x213,0x0cf,0x2a4,0x2c6,0x059,0x0a8,0x130,0x192, // 144 + 0x028,0x2c4,0x23f,0x0a2,0x360,0x0e5,0x041,0x35d,0x349,0x200,0x0a4,0x1dd,0x0dd,0x05c,0x166,0x311, // 160 + 0x120,0x165,0x352,0x344,0x33b,0x2e0,0x2c3,0x05e,0x008,0x1ee,0x072,0x209,0x002,0x1f3,0x353,0x21f, // 176 + 0x098,0x2d9,0x303,0x05f,0x0f8,0x169,0x242,0x143,0x358,0x31d,0x121,0x033,0x2ac,0x1d2,0x215,0x334, // 192 + 0x29d,0x02d,0x386,0x1c4,0x0a7,0x156,0x0f4,0x0ad,0x023,0x1cf,0x28b,0x033,0x2bb,0x24f,0x1c4,0x242, // 208 + 0x025,0x07c,0x12a,0x14c,0x228,0x02b,0x1ab,0x077,0x296,0x309,0x1db,0x352,0x2fc,0x16c,0x242,0x38f, // 224 + 0x11b,0x2c7,0x1d8,0x1a4,0x0f5,0x120,0x252,0x18a,0x1ff,0x147,0x24d,0x309,0x2bb,0x2b0,0x02b,0x198, // 240 + 0x34a,0x17f,0x2d1,0x209,0x230,0x284,0x2ca,0x22f,0x03e,0x091,0x369,0x297,0x2c9,0x09f,0x2a0,0x2d9, // 256 + 0x270,0x03b,0x0c1,0x1a1,0x09e,0x0d1,0x233,0x234,0x157,0x2b5,0x06d,0x260,0x233,0x16d,0x0b5,0x304, // 272 + 0x2a5,0x136,0x0f8,0x161,0x2c4,0x19a,0x243,0x366,0x269,0x349,0x278,0x35c,0x121,0x218,0x023,0x309, // 288 + 0x26a,0x24a,0x1a8,0x341,0x04d,0x255,0x15a,0x10d,0x2f5,0x278,0x2b7,0x2ef,0x14b,0x0f7,0x0b8,0x02d, // 304 + 0x313,0x2a8,0x012,0x042,0x197,0x171,0x036,0x1ec,0x0e4,0x265,0x33e,0x39a,0x1b5,0x207,0x284,0x389, // 320 + 0x315,0x1a4,0x131,0x1b9,0x0cf,0x12c,0x37c,0x33b,0x08d,0x219,0x17d,0x296,0x201,0x038,0x0fc,0x155, // 336 + 0x0f2,0x31d,0x346,0x345,0x2d0,0x0e0,0x133,0x277,0x03d,0x057,0x230,0x136,0x2f4,0x299,0x18d,0x328, // 352 + 0x353,0x135,0x1d9,0x31b,0x17a,0x01f,0x287,0x393,0x1cb,0x326,0x24e,0x2db,0x1a9,0x0d8,0x224,0x0f9, // 368 + 0x141,0x371,0x2bb,0x217,0x2a1,0x30e,0x0d2,0x32f,0x389,0x12f,0x34b,0x39a,0x119,0x049,0x1d5,0x317, // 384 + 0x294,0x0a2,0x1f2,0x134,0x09b,0x1a6,0x38b,0x331,0x0bb,0x03e,0x010,0x1a9,0x217,0x150,0x11e,0x1b5, // 400 + 0x177,0x111,0x262,0x128,0x0b7,0x39b,0x074,0x29b,0x2ef,0x161,0x03e,0x16e,0x2b3,0x17b,0x2af,0x34a, // 416 + 0x025,0x165,0x2d0,0x2e6,0x14a,0x005,0x027,0x39b,0x137,0x1a8,0x0f2,0x2ed,0x141,0x036,0x29d,0x13c, // 432 + 0x156,0x12b,0x216,0x069,0x29b,0x1e8,0x280,0x2a0,0x240,0x21c,0x13c,0x1e6,0x2d1,0x262,0x02e,0x290, // 448 + 0x1bf,0x0ab,0x268,0x1d0,0x0be,0x213,0x129,0x141,0x2fa,0x2f0,0x215,0x0af,0x086,0x00e,0x17d,0x1b1, // 464 + 0x2cd,0x02d,0x06f,0x014,0x254,0x11c,0x2e0,0x08a,0x286,0x19b,0x36d,0x29d,0x08d,0x397,0x02d,0x30c, // 480 + 0x197,0x0a4,0x14c,0x383,0x0a5,0x2d6,0x258,0x145,0x1f2,0x28f,0x165,0x2f0,0x300,0x0df,0x351,0x287, // 496 + 0x03f,0x136,0x35f,0x0fb,0x16e,0x130,0x11a,0x2e2,0x2a3,0x19a,0x185,0x0f4,0x01f,0x079,0x12f,0x107) // 512 + ); + + /** + * This is the class constructor. + * Creates a PDF417 object + * @param $code (string) code to represent using PDF417 + * @param $ecl (int) error correction level (0-8); default -1 = automatic correction level + * @param $aspectratio (float) the width to height of the symbol (excluding quiet zones) + * @param $macro (array) information for macro block + * @public + */ + public function __construct($code, $ecl=-1, $aspectratio=2, $macro=array()) { + $barcode_array = array(); + if ((is_null($code)) OR ($code == '\0') OR ($code == '')) { + return false; + } + // get the input sequence array + $sequence = $this->getInputSequences($code); + $codewords = array(); // array of code-words + foreach($sequence as $seq) { + $cw = $this->getCompaction($seq[0], $seq[1], true); + $codewords = array_merge($codewords, $cw); + } + if ($codewords[0] == 900) { + // Text Alpha is the default mode, so remove the first code + array_shift($codewords); + } + // count number of codewords + $numcw = count($codewords); + if ($numcw > 925) { + // reached maximum data codeword capacity + return false; + } + // build macro control block codewords + if (!empty($macro)) { + $macrocw = array(); + // beginning of macro control block + $macrocw[] = 928; + // segment index + $cw = $this->getCompaction(902, sprintf('%05d', $macro['segment_index']), false); + $macrocw = array_merge($macrocw, $cw); + // file ID + $cw = $this->getCompaction(900, $macro['file_id'], false); + $macrocw = array_merge($macrocw, $cw); + // optional fields + $optmodes = array(900,902,902,900,900,902,902); + $optsize = array(-1,2,4,-1,-1,-1,2); + foreach ($optmodes as $k => $omode) { + if (isset($macro['option_'.$k])) { + $macrocw[] = 923; + $macrocw[] = $k; + if ($optsize[$k] == 2) { + $macro['option_'.$k] = sprintf('%05d', $macro['option_'.$k]); + } elseif ($optsize[$k] == 4) { + $macro['option_'.$k] = sprintf('%010d', $macro['option_'.$k]); + } + $cw = $this->getCompaction($omode, $macro['option_'.$k], false); + $macrocw = array_merge($macrocw, $cw); + } + } + if ($macro['segment_index'] == ($macro['segment_total'] - 1)) { + // end of control block + $macrocw[] = 922; + } + // update total codewords + $numcw += count($macrocw); + } + // set error correction level + $ecl = $this->getErrorCorrectionLevel($ecl, $numcw); + // number of codewords for error correction + $errsize = (2 << $ecl); + // calculate number of columns (number of codewords per row) and rows + $nce = ($numcw + $errsize + 1); + $cols = round((sqrt(4761 + (68 * $aspectratio * ROWHEIGHT * $nce)) - 69) / 34); + // adjust cols + if ($cols < 1) { + $cols = 1; + } elseif ($cols > 30) { + $cols = 30; + } + $rows = ceil($nce / $cols); + $size = ($cols * $rows); + // adjust rows + if (($rows < 3) OR ($rows > 90)) { + if ($rows < 3) { + $rows = 3; + } elseif ($rows > 90) { + $rows = 90; + } + $cols = ceil($size / $rows); + $size = ($cols * $rows); + } + if ($size > 928) { + // set dimensions to get maximum capacity + if (abs($aspectratio - (17 * 29 / 32)) < abs($aspectratio - (17 * 16 / 58))) { + $cols = 29; + $rows = 32; + } else { + $cols = 16; + $rows = 58; + } + $size = 928; + } + // calculate padding + $pad = ($size - $nce); + if ($pad > 0) { + if (($size - $rows) == $nce) { + --$rows; + $size -= $rows; + } else { + // add pading + $codewords = array_merge($codewords, array_fill(0, $pad, 900)); + } + } + if (!empty($macro)) { + // add macro section + $codewords = array_merge($codewords, $macrocw); + } + // Symbol Lenght Descriptor (number of data codewords including Symbol Lenght Descriptor and pad codewords) + $sld = $size - $errsize; + // add symbol length description + array_unshift($codewords, $sld); + // calculate error correction + $ecw = $this->getErrorCorrection($codewords, $ecl); + // add error correction codewords + $codewords = array_merge($codewords, $ecw); + // add horizontal quiet zones to start and stop patterns + $pstart = str_repeat('0', QUIETH).$this->start_pattern; + $pstop = $this->stop_pattern.str_repeat('0', QUIETH); + $barcode_array['num_rows'] = ($rows * ROWHEIGHT) + (2 * QUIETV); + $barcode_array['num_cols'] = (($cols + 2) * 17) + 35 + (2 * QUIETH); + $barcode_array['bcode'] = array(); + // build rows for vertical quiet zone + if (QUIETV > 0) { + $empty_row = array_fill(0, $barcode_array['num_cols'], 0); + for ($i = 0; $i < QUIETV; ++$i) { + // add vertical quiet rows + $barcode_array['bcode'][] = $empty_row; + } + } + $k = 0; // codeword index + $cid = 0; // initial cluster + // for each row + for ($r = 0; $r < $rows; ++$r) { + // row start code + $row = $pstart; + switch ($cid) { + case 0: { + $L = ((30 * intval($r / 3)) + intval(($rows - 1) / 3)); + break; + } + case 1: { + $L = ((30 * intval($r / 3)) + ($ecl * 3) + (($rows - 1) % 3)); + break; + } + case 2: { + $L = ((30 * intval($r / 3)) + ($cols - 1)); + break; + } + } + // left row indicator + $row .= sprintf('%17b', $this->clusters[$cid][$L]); + // for each column + for ($c = 0; $c < $cols; ++$c) { + $row .= sprintf('%17b', $this->clusters[$cid][$codewords[$k]]); + ++$k; + } + switch ($cid) { + case 0: { + $L = ((30 * intval($r / 3)) + ($cols - 1)); + break; + } + case 1: { + $L = ((30 * intval($r / 3)) + intval(($rows - 1) / 3)); + break; + } + case 2: { + $L = ((30 * intval($r / 3)) + ($ecl * 3) + (($rows - 1) % 3)); + break; + } + } + // right row indicator + $row .= sprintf('%17b', $this->clusters[$cid][$L]); + // row stop code + $row .= $pstop; + // convert the string to array + $arow = preg_split('//', $row, -1, PREG_SPLIT_NO_EMPTY); + // duplicate row to get the desired height + for ($h = 0; $h < ROWHEIGHT; ++$h) { + $barcode_array['bcode'][] = $arow; + } + ++$cid; + if ($cid > 2) { + $cid = 0; + } + } + if (QUIETV > 0) { + for ($i = 0; $i < QUIETV; ++$i) { + // add vertical quiet rows + $barcode_array['bcode'][] = $empty_row; + } + } + $this->barcode_array = $barcode_array; + } + + /** + * Returns a barcode array which is readable by TCPDF + * @return array barcode array readable by TCPDF; + * @public + */ + public function getBarcodeArray() { + return $this->barcode_array; + } + + /** + * Returns the error correction level (0-8) to be used + * @param $ecl (int) error correction level + * @param $numcw (int) number of data codewords + * @return int error correction level + * @protected + */ + protected function getErrorCorrectionLevel($ecl, $numcw) { + // get maximum correction level + $maxecl = 8; // starting error level + $maxerrsize = (928 - $numcw); // available codewords for error + while ($maxecl > 0) { + $errsize = (2 << $ecl); + if ($maxerrsize >= $errsize) { + break; + } + --$maxecl; + } + // check for automatic levels + if (($ecl < 0) OR ($ecl > 8)) { + if ($numcw < 41) { + $ecl = 2; + } elseif ($numcw < 161) { + $ecl = 3; + } elseif ($numcw < 321) { + $ecl = 4; + } elseif ($numcw < 864) { + $ecl = 5; + } else { + $ecl = $maxecl; + } + } + if ($ecl > $maxecl) { + $ecl = $maxecl; + } + return $ecl; + } + + /** + * Returns the error correction codewords + * @param $cw (array) array of codewords including Symbol Lenght Descriptor and pad + * @param $ecl (int) error correction level 0-8 + * @return array of error correction codewords + * @protected + */ + protected function getErrorCorrection($cw, $ecl) { + // get error correction coefficients + $ecc = $this->rsfactors[$ecl]; + // number of error correction factors + $eclsize = (2 << $ecl); + // maximum index for $rsfactors[$ecl] + $eclmaxid = ($eclsize - 1); + // initialize array of error correction codewords + $ecw = array_fill(0, $eclsize, 0); + // for each data codeword + foreach($cw as $k => $d) { + $t1 = ($d + $ecw[$eclmaxid]) % 929; + for ($j = $eclmaxid; $j > 0; --$j) { + $t2 = ($t1 * $ecc[$j]) % 929; + $t3 = 929 - $t2; + $ecw[$j] = ($ecw[($j - 1)] + $t3) % 929; + } + $t2 = ($t1 * $ecc[0]) % 929; + $t3 = 929 - $t2; + $ecw[0] = $t3 % 929; + } + foreach($ecw as $j => $e) { + if ($e != 0) { + $ecw[$j] = 929 - $e; + } + } + $ecw = array_reverse($ecw); + return $ecw; + } + + /** + * Create array of sequences from input + * @param $code (string) code + * @return bidimensional array containing characters and classification + * @protected + */ + protected function getInputSequences($code) { + $sequence_array = array(); // array to be returned + $numseq = array(); + // get numeric sequences + preg_match_all('/([0-9]{13,})/', $code, $numseq, PREG_OFFSET_CAPTURE); + $numseq[1][] = array('', strlen($code)); + $offset = 0; + foreach($numseq[1] as $seq) { + $seqlen = strlen($seq[0]); + if ($seq[1] > 0) { + // extract text sequence before the number sequence + $prevseq = substr($code, $offset, ($seq[1] - $offset)); + $textseq = array(); + // get text sequences + preg_match_all('/([\x09\x0a\x0d\x20-\x7e]{5,})/', $prevseq, $textseq, PREG_OFFSET_CAPTURE); + $textseq[1][] = array('', strlen($prevseq)); + $txtoffset = 0; + foreach($textseq[1] as $txtseq) { + $txtseqlen = strlen($txtseq[0]); + if ($txtseq[1] > 0) { + // extract byte sequence before the text sequence + $prevtxtseq = substr($prevseq, $txtoffset, ($txtseq[1] - $txtoffset)); + if (strlen($prevtxtseq) > 0) { + // add BYTE sequence + if ((strlen($prevtxtseq) == 1) AND ((count($sequence_array) > 0) AND ($sequence_array[(count($sequence_array) - 1)][0] == 900))) { + $sequence_array[] = array(913, $prevtxtseq); + } elseif ((strlen($prevtxtseq) % 6) == 0) { + $sequence_array[] = array(924, $prevtxtseq); + } else { + $sequence_array[] = array(901, $prevtxtseq); + } + } + } + if ($txtseqlen > 0) { + // add numeric sequence + $sequence_array[] = array(900, $txtseq[0]); + } + $txtoffset = $txtseq[1] + $txtseqlen; + } + } + if ($seqlen > 0) { + // add numeric sequence + $sequence_array[] = array(902, $seq[0]); + } + $offset = $seq[1] + $seqlen; + } + return $sequence_array; + } + + /** + * Compact data by mode. + * @param $mode (int) compaction mode number + * @param $code (string) data to compact + * @param $addmode (boolean) if true add the mode codeword at first position + * @return array of codewords + * @protected + */ + protected function getCompaction($mode, $code, $addmode=true) { + $cw = array(); // array of codewords to return + switch($mode) { + case 900: { // Text Compaction mode latch + $submode = 0; // default Alpha sub-mode + $txtarr = array(); // array of characters and sub-mode switching characters + $codelen = strlen($code); + for ($i = 0; $i < $codelen; ++$i) { + $chval = ord($code{$i}); + if (($k = array_search($chval, $this->textsubmodes[$submode])) !== false) { + // we are on the same sub-mode + $txtarr[] = $k; + } else { + // the sub-mode is changed + for ($s = 0; $s < 4; ++$s) { + // search new sub-mode + if (($s != $submode) AND (($k = array_search($chval, $this->textsubmodes[$s])) !== false)) { + // $s is the new submode + if (((($i + 1) == $codelen) OR ((($i + 1) < $codelen) AND (array_search(ord($code{($i + 1)}), $this->textsubmodes[$submode]) !== false))) AND (($s == 3) OR (($s == 0) AND ($submode == 1)))) { + // shift (temporary change only for this char) + if ($s == 3) { + // shift to puntuaction + $txtarr[] = 29; + } else { + // shift from lower to alpha + $txtarr[] = 27; + } + } else { + // latch + $txtarr = array_merge($txtarr, $this->textlatch[''.$submode.$s]); + // set new submode + $submode = $s; + } + // add characted code to array + $txtarr[] = $k; + break; + } + } + } + } + $txtarrlen = count($txtarr); + if (($txtarrlen % 2) != 0) { + // add padding + $txtarr[] = 29; + ++$txtarrlen; + } + // calculate codewords + for ($i = 0; $i < $txtarrlen; $i += 2) { + $cw[] = (30 * $txtarr[$i]) + $txtarr[($i + 1)]; + } + break; + } + case 901: + case 924: { // Byte Compaction mode latch + while (($codelen = strlen($code)) > 0) { + if ($codelen > 6) { + $rest = substr($code, 6); + $code = substr($code, 0, 6); + $sublen = 6; + } else { + $rest = ''; + $sublen = strlen($code); + } + if ($sublen == 6) { + $t = bcmul(''.ord($code{0}), '1099511627776'); + $t = bcadd($t, bcmul(''.ord($code{1}), '4294967296')); + $t = bcadd($t, bcmul(''.ord($code{2}), '16777216')); + $t = bcadd($t, bcmul(''.ord($code{3}), '65536')); + $t = bcadd($t, bcmul(''.ord($code{4}), '256')); + $t = bcadd($t, ''.ord($code{5})); + do { + $d = bcmod($t, '900'); + $t = bcdiv($t, '900'); + array_unshift($cw, $d); + } while ($t != '0'); + } else { + for ($i = 0; $i < $sublen; ++$i) { + $cw[] = ord($code{$i}); + } + } + $code = $rest; + } + break; + } + case 902: { // Numeric Compaction mode latch + while (($codelen = strlen($code)) > 0) { + if ($codelen > 44) { + $rest = substr($code, 44); + $code = substr($code, 0, 44); + } else { + $rest = ''; + } + $t = '1'.$code; + do { + $d = bcmod($t, '900'); + $t = bcdiv($t, '900'); + array_unshift($cw, $d); + } while ($t != '0'); + $code = $rest; + } + break; + } + case 913: { // Byte Compaction mode shift + $cw[] = ord($code); + break; + } + } + if ($addmode) { + // add the compaction mode codeword at the beginning + array_unshift($cw, $mode); + } + return $cw; + } + +} // end PDF417 class + +//============================================================+ +// END OF FILE +//============================================================+ diff --git a/libraries/tcpdf/qrcode.php b/libraries/tcpdf/qrcode.php new file mode 100644 index 000000000..4f9167679 --- /dev/null +++ b/libraries/tcpdf/qrcode.php @@ -0,0 +1,2866 @@ +. +// +// See LICENSE.TXT file for more information. +// ------------------------------------------------------------------- +// +// DESCRIPTION : +// +// Class to create QR-code arrays for TCPDF class. +// QR Code symbol is a 2D barcode that can be scanned by +// handy terminals such as a mobile phone with CCD. +// The capacity of QR Code is up to 7000 digits or 4000 +// characters, and has high robustness. +// This class supports QR Code model 2, described in +// JIS (Japanese Industrial Standards) X0510:2004 +// or ISO/IEC 18004. +// Currently the following features are not supported: +// ECI and FNC1 mode, Micro QR Code, QR Code model 1, +// Structured mode. +// +// This class is derived from the following projects: +// --------------------------------------------------------- +// "PHP QR Code encoder" +// License: GNU-LGPLv3 +// Copyright (C) 2010 by Dominik Dzienia +// http://phpqrcode.sourceforge.net/ +// https://sourceforge.net/projects/phpqrcode/ +// +// The "PHP QR Code encoder" is based on +// "C libqrencode library" (ver. 3.1.1) +// License: GNU-LGPL 2.1 +// Copyright (C) 2006-2010 by Kentaro Fukuchi +// http://megaui.net/fukuchi/works/qrencode/index.en.html +// +// Reed-Solomon code encoder is written by Phil Karn, KA9Q. +// Copyright (C) 2002-2006 Phil Karn, KA9Q +// +// QR Code is registered trademark of DENSO WAVE INCORPORATED +// http://www.denso-wave.com/qrcode/index-e.html +// --------------------------------------------------------- +//============================================================+ + +/** + * @file + * Class to create QR-code arrays for TCPDF class. + * QR Code symbol is a 2D barcode that can be scanned by handy terminals such as a mobile phone with CCD. + * The capacity of QR Code is up to 7000 digits or 4000 characters, and has high robustness. + * This class supports QR Code model 2, described in JIS (Japanese Industrial Standards) X0510:2004 or ISO/IEC 18004. + * Currently the following features are not supported: ECI and FNC1 mode, Micro QR Code, QR Code model 1, Structured mode. + * + * This class is derived from "PHP QR Code encoder" by Dominik Dzienia (http://phpqrcode.sourceforge.net/) based on "libqrencode C library 3.1.1." by Kentaro Fukuchi (http://megaui.net/fukuchi/works/qrencode/index.en.html), contains Reed-Solomon code written by Phil Karn, KA9Q. QR Code is registered trademark of DENSO WAVE INCORPORATED (http://www.denso-wave.com/qrcode/index-e.html). + * Please read comments on this class source file for full copyright and license information. + * + * @package com.tecnick.tcpdf + * @author Nicola Asuni + * @version 1.0.009 + */ + +// definitions +if (!defined('QRCODEDEFS')) { + + /** + * Indicate that definitions for this class are set + */ + define('QRCODEDEFS', true); + + // ----------------------------------------------------- + + // Encoding modes (characters which can be encoded in QRcode) + + /** + * Encoding mode + */ + define('QR_MODE_NL', -1); + + /** + * Encoding mode numeric (0-9). 3 characters are encoded to 10bit length. In theory, 7089 characters or less can be stored in a QRcode. + */ + define('QR_MODE_NM', 0); + + /** + * Encoding mode alphanumeric (0-9A-Z $%*+-./:) 45characters. 2 characters are encoded to 11bit length. In theory, 4296 characters or less can be stored in a QRcode. + */ + define('QR_MODE_AN', 1); + + /** + * Encoding mode 8bit byte data. In theory, 2953 characters or less can be stored in a QRcode. + */ + define('QR_MODE_8B', 2); + + /** + * Encoding mode KANJI. A KANJI character (multibyte character) is encoded to 13bit length. In theory, 1817 characters or less can be stored in a QRcode. + */ + define('QR_MODE_KJ', 3); + + /** + * Encoding mode STRUCTURED (currently unsupported) + */ + define('QR_MODE_ST', 4); + + // ----------------------------------------------------- + + // Levels of error correction. + // QRcode has a function of an error correcting for miss reading that white is black. + // Error correcting is defined in 4 level as below. + + /** + * Error correction level L : About 7% or less errors can be corrected. + */ + define('QR_ECLEVEL_L', 0); + + /** + * Error correction level M : About 15% or less errors can be corrected. + */ + define('QR_ECLEVEL_M', 1); + + /** + * Error correction level Q : About 25% or less errors can be corrected. + */ + define('QR_ECLEVEL_Q', 2); + + /** + * Error correction level H : About 30% or less errors can be corrected. + */ + define('QR_ECLEVEL_H', 3); + + // ----------------------------------------------------- + + // Version. Size of QRcode is defined as version. + // Version is from 1 to 40. + // Version 1 is 21*21 matrix. And 4 modules increases whenever 1 version increases. + // So version 40 is 177*177 matrix. + + /** + * Maximum QR Code version. + */ + define('QRSPEC_VERSION_MAX', 40); + + /** + * Maximum matrix size for maximum version (version 40 is 177*177 matrix). + */ + define('QRSPEC_WIDTH_MAX', 177); + + // ----------------------------------------------------- + + /** + * Matrix index to get width from $capacity array. + */ + define('QRCAP_WIDTH', 0); + + /** + * Matrix index to get number of words from $capacity array. + */ + define('QRCAP_WORDS', 1); + + /** + * Matrix index to get remainder from $capacity array. + */ + define('QRCAP_REMINDER', 2); + + /** + * Matrix index to get error correction level from $capacity array. + */ + define('QRCAP_EC', 3); + + // ----------------------------------------------------- + + // Structure (currently usupported) + + /** + * Number of header bits for structured mode + */ + define('STRUCTURE_HEADER_BITS', 20); + + /** + * Max number of symbols for structured mode + */ + define('MAX_STRUCTURED_SYMBOLS', 16); + + // ----------------------------------------------------- + + // Masks + + /** + * Down point base value for case 1 mask pattern (concatenation of same color in a line or a column) + */ + define('N1', 3); + + /** + * Down point base value for case 2 mask pattern (module block of same color) + */ + define('N2', 3); + + /** + * Down point base value for case 3 mask pattern (1:1:3:1:1(dark:bright:dark:bright:dark)pattern in a line or a column) + */ + define('N3', 40); + + /** + * Down point base value for case 4 mask pattern (ration of dark modules in whole) + */ + define('N4', 10); + + // ----------------------------------------------------- + + // Optimization settings + + /** + * if true, estimates best mask (spec. default, but extremally slow; set to false to significant performance boost but (propably) worst quality code + */ + define('QR_FIND_BEST_MASK', true); + + /** + * if false, checks all masks available, otherwise value tells count of masks need to be checked, mask id are got randomly + */ + define('QR_FIND_FROM_RANDOM', 2); + + /** + * when QR_FIND_BEST_MASK === false + */ + define('QR_DEFAULT_MASK', 2); + + // ----------------------------------------------------- + +} // end of definitions + +// #*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*# + +// for compatibility with PHP4 +if (!function_exists('str_split')) { + /** + * Convert a string to an array (needed for PHP4 compatibility) + * @param $string (string) The input string. + * @param $split_length (int) Maximum length of the chunk. + * @return If the optional split_length parameter is specified, the returned array will be broken down into chunks with each being split_length in length, otherwise each chunk will be one character in length. FALSE is returned if split_length is less than 1. If the split_length length exceeds the length of string , the entire string is returned as the first (and only) array element. + */ + function str_split($string, $split_length=1) { + if ((strlen($string) > $split_length) OR (!$split_length)) { + do { + $c = strlen($string); + $parts[] = substr($string, 0, $split_length); + $string = substr($string, $split_length); + } while ($string !== false); + } else { + $parts = array($string); + } + return $parts; + } +} + +// ##################################################### + +/** + * @class QRcode + * Class to create QR-code arrays for TCPDF class. + * QR Code symbol is a 2D barcode that can be scanned by handy terminals such as a mobile phone with CCD. + * The capacity of QR Code is up to 7000 digits or 4000 characters, and has high robustness. + * This class supports QR Code model 2, described in JIS (Japanese Industrial Standards) X0510:2004 or ISO/IEC 18004. + * Currently the following features are not supported: ECI and FNC1 mode, Micro QR Code, QR Code model 1, Structured mode. + * + * This class is derived from "PHP QR Code encoder" by Dominik Dzienia (http://phpqrcode.sourceforge.net/) based on "libqrencode C library 3.1.1." by Kentaro Fukuchi (http://megaui.net/fukuchi/works/qrencode/index.en.html), contains Reed-Solomon code written by Phil Karn, KA9Q. QR Code is registered trademark of DENSO WAVE INCORPORATED (http://www.denso-wave.com/qrcode/index-e.html). + * Please read comments on this class source file for full copyright and license information. + * + * @package com.tecnick.tcpdf + * @author Nicola Asuni + * @version 1.0.009 + */ +class QRcode { + + /** + * Barcode array to be returned which is readable by TCPDF. + * @protected + */ + protected $barcode_array = array(); + + /** + * QR code version. Size of QRcode is defined as version. Version is from 1 to 40. Version 1 is 21*21 matrix. And 4 modules increases whenever 1 version increases. So version 40 is 177*177 matrix. + * @protected + */ + protected $version = 0; + + /** + * Levels of error correction. See definitions for possible values. + * @protected + */ + protected $level = QR_ECLEVEL_L; + + /** + * Encoding mode. + * @protected + */ + protected $hint = QR_MODE_8B; + + /** + * Boolean flag, if true the input string will be converted to uppercase. + * @protected + */ + protected $casesensitive = true; + + /** + * Structured QR code (not supported yet). + * @protected + */ + protected $structured = 0; + + /** + * Mask data. + * @protected + */ + protected $data; + + // FrameFiller + + /** + * Width. + * @protected + */ + protected $width; + + /** + * Frame. + * @protected + */ + protected $frame; + + /** + * X position of bit. + * @protected + */ + protected $x; + + /** + * Y position of bit. + * @protected + */ + protected $y; + + /** + * Direction. + * @protected + */ + protected $dir; + + /** + * Single bit value. + * @protected + */ + protected $bit; + + // ---- QRrawcode ---- + + /** + * Data code. + * @protected + */ + protected $datacode = array(); + + /** + * Error correction code. + * @protected + */ + protected $ecccode = array(); + + /** + * Blocks. + * @protected + */ + protected $blocks; + + /** + * Reed-Solomon blocks. + * @protected + */ + protected $rsblocks = array(); //of RSblock + + /** + * Counter. + * @protected + */ + protected $count; + + /** + * Data length. + * @protected + */ + protected $dataLength; + + /** + * Error correction length. + * @protected + */ + protected $eccLength; + + /** + * Value b1. + * @protected + */ + protected $b1; + + // ---- QRmask ---- + + /** + * Run length. + * @protected + */ + protected $runLength = array(); + + // ---- QRsplit ---- + + /** + * Input data string. + * @protected + */ + protected $dataStr = ''; + + /** + * Input items. + * @protected + */ + protected $items; + + // Reed-Solomon items + + /** + * Reed-Solomon items. + * @protected + */ + protected $rsitems = array(); + + /** + * Array of frames. + * @protected + */ + protected $frames = array(); + + /** + * Alphabet-numeric convesion table. + * @protected + */ + protected $anTable = array( + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, // + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, // + 36, -1, -1, -1, 37, 38, -1, -1, -1, -1, 39, 40, -1, 41, 42, 43, // + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 44, -1, -1, -1, -1, -1, // + -1, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, // + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, -1, -1, -1, -1, -1, // + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, // + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 // + ); + + /** + * Array Table of the capacity of symbols. + * See Table 1 (pp.13) and Table 12-16 (pp.30-36), JIS X0510:2004. + * @protected + */ + protected $capacity = array( + array( 0, 0, 0, array( 0, 0, 0, 0)), // + array( 21, 26, 0, array( 7, 10, 13, 17)), // 1 + array( 25, 44, 7, array( 10, 16, 22, 28)), // + array( 29, 70, 7, array( 15, 26, 36, 44)), // + array( 33, 100, 7, array( 20, 36, 52, 64)), // + array( 37, 134, 7, array( 26, 48, 72, 88)), // 5 + array( 41, 172, 7, array( 36, 64, 96, 112)), // + array( 45, 196, 0, array( 40, 72, 108, 130)), // + array( 49, 242, 0, array( 48, 88, 132, 156)), // + array( 53, 292, 0, array( 60, 110, 160, 192)), // + array( 57, 346, 0, array( 72, 130, 192, 224)), // 10 + array( 61, 404, 0, array( 80, 150, 224, 264)), // + array( 65, 466, 0, array( 96, 176, 260, 308)), // + array( 69, 532, 0, array( 104, 198, 288, 352)), // + array( 73, 581, 3, array( 120, 216, 320, 384)), // + array( 77, 655, 3, array( 132, 240, 360, 432)), // 15 + array( 81, 733, 3, array( 144, 280, 408, 480)), // + array( 85, 815, 3, array( 168, 308, 448, 532)), // + array( 89, 901, 3, array( 180, 338, 504, 588)), // + array( 93, 991, 3, array( 196, 364, 546, 650)), // + array( 97, 1085, 3, array( 224, 416, 600, 700)), // 20 + array(101, 1156, 4, array( 224, 442, 644, 750)), // + array(105, 1258, 4, array( 252, 476, 690, 816)), // + array(109, 1364, 4, array( 270, 504, 750, 900)), // + array(113, 1474, 4, array( 300, 560, 810, 960)), // + array(117, 1588, 4, array( 312, 588, 870, 1050)), // 25 + array(121, 1706, 4, array( 336, 644, 952, 1110)), // + array(125, 1828, 4, array( 360, 700, 1020, 1200)), // + array(129, 1921, 3, array( 390, 728, 1050, 1260)), // + array(133, 2051, 3, array( 420, 784, 1140, 1350)), // + array(137, 2185, 3, array( 450, 812, 1200, 1440)), // 30 + array(141, 2323, 3, array( 480, 868, 1290, 1530)), // + array(145, 2465, 3, array( 510, 924, 1350, 1620)), // + array(149, 2611, 3, array( 540, 980, 1440, 1710)), // + array(153, 2761, 3, array( 570, 1036, 1530, 1800)), // + array(157, 2876, 0, array( 570, 1064, 1590, 1890)), // 35 + array(161, 3034, 0, array( 600, 1120, 1680, 1980)), // + array(165, 3196, 0, array( 630, 1204, 1770, 2100)), // + array(169, 3362, 0, array( 660, 1260, 1860, 2220)), // + array(173, 3532, 0, array( 720, 1316, 1950, 2310)), // + array(177, 3706, 0, array( 750, 1372, 2040, 2430)) // 40 + ); + + /** + * Array Length indicator. + * @protected + */ + protected $lengthTableBits = array( + array(10, 12, 14), + array( 9, 11, 13), + array( 8, 16, 16), + array( 8, 10, 12) + ); + + /** + * Array Table of the error correction code (Reed-Solomon block). + * See Table 12-16 (pp.30-36), JIS X0510:2004. + * @protected + */ + protected $eccTable = array( + array(array( 0, 0), array( 0, 0), array( 0, 0), array( 0, 0)), // + array(array( 1, 0), array( 1, 0), array( 1, 0), array( 1, 0)), // 1 + array(array( 1, 0), array( 1, 0), array( 1, 0), array( 1, 0)), // + array(array( 1, 0), array( 1, 0), array( 2, 0), array( 2, 0)), // + array(array( 1, 0), array( 2, 0), array( 2, 0), array( 4, 0)), // + array(array( 1, 0), array( 2, 0), array( 2, 2), array( 2, 2)), // 5 + array(array( 2, 0), array( 4, 0), array( 4, 0), array( 4, 0)), // + array(array( 2, 0), array( 4, 0), array( 2, 4), array( 4, 1)), // + array(array( 2, 0), array( 2, 2), array( 4, 2), array( 4, 2)), // + array(array( 2, 0), array( 3, 2), array( 4, 4), array( 4, 4)), // + array(array( 2, 2), array( 4, 1), array( 6, 2), array( 6, 2)), // 10 + array(array( 4, 0), array( 1, 4), array( 4, 4), array( 3, 8)), // + array(array( 2, 2), array( 6, 2), array( 4, 6), array( 7, 4)), // + array(array( 4, 0), array( 8, 1), array( 8, 4), array(12, 4)), // + array(array( 3, 1), array( 4, 5), array(11, 5), array(11, 5)), // + array(array( 5, 1), array( 5, 5), array( 5, 7), array(11, 7)), // 15 + array(array( 5, 1), array( 7, 3), array(15, 2), array( 3, 13)), // + array(array( 1, 5), array(10, 1), array( 1, 15), array( 2, 17)), // + array(array( 5, 1), array( 9, 4), array(17, 1), array( 2, 19)), // + array(array( 3, 4), array( 3, 11), array(17, 4), array( 9, 16)), // + array(array( 3, 5), array( 3, 13), array(15, 5), array(15, 10)), // 20 + array(array( 4, 4), array(17, 0), array(17, 6), array(19, 6)), // + array(array( 2, 7), array(17, 0), array( 7, 16), array(34, 0)), // + array(array( 4, 5), array( 4, 14), array(11, 14), array(16, 14)), // + array(array( 6, 4), array( 6, 14), array(11, 16), array(30, 2)), // + array(array( 8, 4), array( 8, 13), array( 7, 22), array(22, 13)), // 25 + array(array(10, 2), array(19, 4), array(28, 6), array(33, 4)), // + array(array( 8, 4), array(22, 3), array( 8, 26), array(12, 28)), // + array(array( 3, 10), array( 3, 23), array( 4, 31), array(11, 31)), // + array(array( 7, 7), array(21, 7), array( 1, 37), array(19, 26)), // + array(array( 5, 10), array(19, 10), array(15, 25), array(23, 25)), // 30 + array(array(13, 3), array( 2, 29), array(42, 1), array(23, 28)), // + array(array(17, 0), array(10, 23), array(10, 35), array(19, 35)), // + array(array(17, 1), array(14, 21), array(29, 19), array(11, 46)), // + array(array(13, 6), array(14, 23), array(44, 7), array(59, 1)), // + array(array(12, 7), array(12, 26), array(39, 14), array(22, 41)), // 35 + array(array( 6, 14), array( 6, 34), array(46, 10), array( 2, 64)), // + array(array(17, 4), array(29, 14), array(49, 10), array(24, 46)), // + array(array( 4, 18), array(13, 32), array(48, 14), array(42, 32)), // + array(array(20, 4), array(40, 7), array(43, 22), array(10, 67)), // + array(array(19, 6), array(18, 31), array(34, 34), array(20, 61)) // 40 + ); + + /** + * Array Positions of alignment patterns. + * This array includes only the second and the third position of the alignment patterns. Rest of them can be calculated from the distance between them. + * See Table 1 in Appendix E (pp.71) of JIS X0510:2004. + * @protected + */ + protected $alignmentPattern = array( + array( 0, 0), + array( 0, 0), array(18, 0), array(22, 0), array(26, 0), array(30, 0), // 1- 5 + array(34, 0), array(22, 38), array(24, 42), array(26, 46), array(28, 50), // 6-10 + array(30, 54), array(32, 58), array(34, 62), array(26, 46), array(26, 48), // 11-15 + array(26, 50), array(30, 54), array(30, 56), array(30, 58), array(34, 62), // 16-20 + array(28, 50), array(26, 50), array(30, 54), array(28, 54), array(32, 58), // 21-25 + array(30, 58), array(34, 62), array(26, 50), array(30, 54), array(26, 52), // 26-30 + array(30, 56), array(34, 60), array(30, 58), array(34, 62), array(30, 54), // 31-35 + array(24, 50), array(28, 54), array(32, 58), array(26, 54), array(30, 58) // 35-40 + ); + + /** + * Array Version information pattern (BCH coded). + * See Table 1 in Appendix D (pp.68) of JIS X0510:2004. + * size: [QRSPEC_VERSION_MAX - 6] + * @protected + */ + protected $versionPattern = array( + 0x07c94, 0x085bc, 0x09a99, 0x0a4d3, 0x0bbf6, 0x0c762, 0x0d847, 0x0e60d, // + 0x0f928, 0x10b78, 0x1145d, 0x12a17, 0x13532, 0x149a6, 0x15683, 0x168c9, // + 0x177ec, 0x18ec4, 0x191e1, 0x1afab, 0x1b08e, 0x1cc1a, 0x1d33f, 0x1ed75, // + 0x1f250, 0x209d5, 0x216f0, 0x228ba, 0x2379f, 0x24b0b, 0x2542e, 0x26a64, // + 0x27541, 0x28c69 + ); + + /** + * Array Format information + * @protected + */ + protected $formatInfo = array( + array(0x77c4, 0x72f3, 0x7daa, 0x789d, 0x662f, 0x6318, 0x6c41, 0x6976), // + array(0x5412, 0x5125, 0x5e7c, 0x5b4b, 0x45f9, 0x40ce, 0x4f97, 0x4aa0), // + array(0x355f, 0x3068, 0x3f31, 0x3a06, 0x24b4, 0x2183, 0x2eda, 0x2bed), // + array(0x1689, 0x13be, 0x1ce7, 0x19d0, 0x0762, 0x0255, 0x0d0c, 0x083b) // + ); + + + // ------------------------------------------------- + // ------------------------------------------------- + + + /** + * This is the class constructor. + * Creates a QRcode object + * @param $code (string) code to represent using QRcode + * @param $eclevel (string) error level:
    • L : About 7% or less errors can be corrected.
    • M : About 15% or less errors can be corrected.
    • Q : About 25% or less errors can be corrected.
    • H : About 30% or less errors can be corrected.
    + * @public + * @since 1.0.000 + */ + public function __construct($code, $eclevel = 'L') { + $barcode_array = array(); + if ((is_null($code)) OR ($code == '\0') OR ($code == '')) { + return false; + } + // set error correction level + $this->level = array_search($eclevel, array('L', 'M', 'Q', 'H')); + if ($this->level === false) { + $this->level = QR_ECLEVEL_L; + } + if (($this->hint != QR_MODE_8B) AND ($this->hint != QR_MODE_KJ)) { + return false; + } + if (($this->version < 0) OR ($this->version > QRSPEC_VERSION_MAX)) { + return false; + } + $this->items = array(); + $this->encodeString($code); + if (is_null($this->data)) { + return false; + } + $qrTab = $this->binarize($this->data); + $size = count($qrTab); + $barcode_array['num_rows'] = $size; + $barcode_array['num_cols'] = $size; + $barcode_array['bcode'] = array(); + foreach ($qrTab as $line) { + $arrAdd = array(); + foreach (str_split($line) as $char) { + $arrAdd[] = ($char=='1')?1:0; + } + $barcode_array['bcode'][] = $arrAdd; + } + $this->barcode_array = $barcode_array; + } + + /** + * Returns a barcode array which is readable by TCPDF + * @return array barcode array readable by TCPDF; + * @public + */ + public function getBarcodeArray() { + return $this->barcode_array; + } + + /** + * Convert the frame in binary form + * @param $frame (array) array to binarize + * @return array frame in binary form + */ + protected function binarize($frame) { + $len = count($frame); + // the frame is square (width = height) + foreach ($frame as &$frameLine) { + for ($i=0; $i<$len; $i++) { + $frameLine[$i] = (ord($frameLine[$i])&1)?'1':'0'; + } + } + return $frame; + } + + /** + * Encode the input string to QR code + * @param $string (string) input string to encode + */ + protected function encodeString($string) { + $this->dataStr = $string; + if (!$this->casesensitive) { + $this->toUpper(); + } + $ret = $this->splitString(); + if ($ret < 0) { + return NULL; + } + $this->encodeMask(-1); + } + + /** + * Encode mask + * @param $mask (int) masking mode + */ + protected function encodeMask($mask) { + $spec = array(0, 0, 0, 0, 0); + $this->datacode = $this->getByteStream($this->items); + if (is_null($this->datacode)) { + return NULL; + } + $spec = $this->getEccSpec($this->version, $this->level, $spec); + $this->b1 = $this->rsBlockNum1($spec); + $this->dataLength = $this->rsDataLength($spec); + $this->eccLength = $this->rsEccLength($spec); + $this->ecccode = array_fill(0, $this->eccLength, 0); + $this->blocks = $this->rsBlockNum($spec); + $ret = $this->init($spec); + if ($ret < 0) { + return NULL; + } + $this->count = 0; + $this->width = $this->getWidth($this->version); + $this->frame = $this->newFrame($this->version); + $this->x = $this->width - 1; + $this->y = $this->width - 1; + $this->dir = -1; + $this->bit = -1; + // inteleaved data and ecc codes + for ($i=0; $i < ($this->dataLength + $this->eccLength); $i++) { + $code = $this->getCode(); + $bit = 0x80; + for ($j=0; $j<8; $j++) { + $addr = $this->getNextPosition(); + $this->setFrameAt($addr, 0x02 | (($bit & $code) != 0)); + $bit = $bit >> 1; + } + } + // remainder bits + $j = $this->getRemainder($this->version); + for ($i=0; $i<$j; $i++) { + $addr = $this->getNextPosition(); + $this->setFrameAt($addr, 0x02); + } + // masking + $this->runLength = array_fill(0, QRSPEC_WIDTH_MAX + 1, 0); + if ($mask < 0) { + if (QR_FIND_BEST_MASK) { + $masked = $this->mask($this->width, $this->frame, $this->level); + } else { + $masked = $this->makeMask($this->width, $this->frame, (intval(QR_DEFAULT_MASK) % 8), $this->level); + } + } else { + $masked = $this->makeMask($this->width, $this->frame, $mask, $this->level); + } + if ($masked == NULL) { + return NULL; + } + $this->data = $masked; + } + + // - - - - - - - - - - - - - - - - - - - - - - - - - + + // FrameFiller + + /** + * Set frame value at specified position + * @param $at (array) x,y position + * @param $val (int) value of the character to set + */ + protected function setFrameAt($at, $val) { + $this->frame[$at['y']][$at['x']] = chr($val); + } + + /** + * Get frame value at specified position + * @param $at (array) x,y position + * @return value at specified position + */ + protected function getFrameAt($at) { + return ord($this->frame[$at['y']][$at['x']]); + } + + /** + * Return the next frame position + * @return array of x,y coordinates + */ + protected function getNextPosition() { + do { + if ($this->bit == -1) { + $this->bit = 0; + return array('x'=>$this->x, 'y'=>$this->y); + } + $x = $this->x; + $y = $this->y; + $w = $this->width; + if ($this->bit == 0) { + $x--; + $this->bit++; + } else { + $x++; + $y += $this->dir; + $this->bit--; + } + if ($this->dir < 0) { + if ($y < 0) { + $y = 0; + $x -= 2; + $this->dir = 1; + if ($x == 6) { + $x--; + $y = 9; + } + } + } else { + if ($y == $w) { + $y = $w - 1; + $x -= 2; + $this->dir = -1; + if ($x == 6) { + $x--; + $y -= 8; + } + } + } + if (($x < 0) OR ($y < 0)) { + return NULL; + } + $this->x = $x; + $this->y = $y; + } while(ord($this->frame[$y][$x]) & 0x80); + return array('x'=>$x, 'y'=>$y); + } + + // - - - - - - - - - - - - - - - - - - - - - - - - - + + // QRrawcode + + /** + * Initialize code. + * @param $spec (array) array of ECC specification + * @return 0 in case of success, -1 in case of error + */ + protected function init($spec) { + $dl = $this->rsDataCodes1($spec); + $el = $this->rsEccCodes1($spec); + $rs = $this->init_rs(8, 0x11d, 0, 1, $el, 255 - $dl - $el); + $blockNo = 0; + $dataPos = 0; + $eccPos = 0; + $endfor = $this->rsBlockNum1($spec); + for ($i=0; $i < $endfor; ++$i) { + $ecc = array_slice($this->ecccode, $eccPos); + $this->rsblocks[$blockNo] = array(); + $this->rsblocks[$blockNo]['dataLength'] = $dl; + $this->rsblocks[$blockNo]['data'] = array_slice($this->datacode, $dataPos); + $this->rsblocks[$blockNo]['eccLength'] = $el; + $ecc = $this->encode_rs_char($rs, $this->rsblocks[$blockNo]['data'], $ecc); + $this->rsblocks[$blockNo]['ecc'] = $ecc; + $this->ecccode = array_merge(array_slice($this->ecccode,0, $eccPos), $ecc); + $dataPos += $dl; + $eccPos += $el; + $blockNo++; + } + if ($this->rsBlockNum2($spec) == 0) { + return 0; + } + $dl = $this->rsDataCodes2($spec); + $el = $this->rsEccCodes2($spec); + $rs = $this->init_rs(8, 0x11d, 0, 1, $el, 255 - $dl - $el); + if ($rs == NULL) { + return -1; + } + $endfor = $this->rsBlockNum2($spec); + for ($i=0; $i < $endfor; ++$i) { + $ecc = array_slice($this->ecccode, $eccPos); + $this->rsblocks[$blockNo] = array(); + $this->rsblocks[$blockNo]['dataLength'] = $dl; + $this->rsblocks[$blockNo]['data'] = array_slice($this->datacode, $dataPos); + $this->rsblocks[$blockNo]['eccLength'] = $el; + $ecc = $this->encode_rs_char($rs, $this->rsblocks[$blockNo]['data'], $ecc); + $this->rsblocks[$blockNo]['ecc'] = $ecc; + $this->ecccode = array_merge(array_slice($this->ecccode, 0, $eccPos), $ecc); + $dataPos += $dl; + $eccPos += $el; + $blockNo++; + } + return 0; + } + + /** + * Return Reed-Solomon block code. + * @return array rsblocks + */ + protected function getCode() { + if ($this->count < $this->dataLength) { + $row = $this->count % $this->blocks; + $col = $this->count / $this->blocks; + if ($col >= $this->rsblocks[0]['dataLength']) { + $row += $this->b1; + } + $ret = $this->rsblocks[$row]['data'][$col]; + } elseif ($this->count < $this->dataLength + $this->eccLength) { + $row = ($this->count - $this->dataLength) % $this->blocks; + $col = ($this->count - $this->dataLength) / $this->blocks; + $ret = $this->rsblocks[$row]['ecc'][$col]; + } else { + return 0; + } + $this->count++; + return $ret; + } + + // - - - - - - - - - - - - - - - - - - - - - - - - - + + // QRmask + + /** + * Write Format Information on frame and returns the number of black bits + * @param $width (int) frame width + * @param $frame (array) frame + * @param $mask (array) masking mode + * @param $level (int) error correction level + * @return int blacks + */ + protected function writeFormatInformation($width, &$frame, $mask, $level) { + $blacks = 0; + $format = $this->getFormatInfo($mask, $level); + for ($i=0; $i<8; ++$i) { + if ($format & 1) { + $blacks += 2; + $v = 0x85; + } else { + $v = 0x84; + } + $frame[8][$width - 1 - $i] = chr($v); + if ($i < 6) { + $frame[$i][8] = chr($v); + } else { + $frame[$i + 1][8] = chr($v); + } + $format = $format >> 1; + } + for ($i=0; $i<7; ++$i) { + if ($format & 1) { + $blacks += 2; + $v = 0x85; + } else { + $v = 0x84; + } + $frame[$width - 7 + $i][8] = chr($v); + if ($i == 0) { + $frame[8][7] = chr($v); + } else { + $frame[8][6 - $i] = chr($v); + } + $format = $format >> 1; + } + return $blacks; + } + + /** + * mask0 + * @param $x (int) X position + * @param $y (int) Y position + * @return int mask + */ + protected function mask0($x, $y) { + return ($x + $y) & 1; + } + + /** + * mask1 + * @param $x (int) X position + * @param $y (int) Y position + * @return int mask + */ + protected function mask1($x, $y) { + return ($y & 1); + } + + /** + * mask2 + * @param $x (int) X position + * @param $y (int) Y position + * @return int mask + */ + protected function mask2($x, $y) { + return ($x % 3); + } + + /** + * mask3 + * @param $x (int) X position + * @param $y (int) Y position + * @return int mask + */ + protected function mask3($x, $y) { + return ($x + $y) % 3; + } + + /** + * mask4 + * @param $x (int) X position + * @param $y (int) Y position + * @return int mask + */ + protected function mask4($x, $y) { + return (((int)($y / 2)) + ((int)($x / 3))) & 1; + } + + /** + * mask5 + * @param $x (int) X position + * @param $y (int) Y position + * @return int mask + */ + protected function mask5($x, $y) { + return (($x * $y) & 1) + ($x * $y) % 3; + } + + /** + * mask6 + * @param $x (int) X position + * @param $y (int) Y position + * @return int mask + */ + protected function mask6($x, $y) { + return ((($x * $y) & 1) + ($x * $y) % 3) & 1; + } + + /** + * mask7 + * @param $x (int) X position + * @param $y (int) Y position + * @return int mask + */ + protected function mask7($x, $y) { + return ((($x * $y) % 3) + (($x + $y) & 1)) & 1; + } + + /** + * Return bitmask + * @param $maskNo (int) mask number + * @param $width (int) width + * @param $frame (array) frame + * @return array bitmask + */ + protected function generateMaskNo($maskNo, $width, $frame) { + $bitMask = array_fill(0, $width, array_fill(0, $width, 0)); + for ($y=0; $y<$width; ++$y) { + for ($x=0; $x<$width; ++$x) { + if (ord($frame[$y][$x]) & 0x80) { + $bitMask[$y][$x] = 0; + } else { + $maskFunc = call_user_func(array($this, 'mask'.$maskNo), $x, $y); + $bitMask[$y][$x] = ($maskFunc == 0)?1:0; + } + } + } + return $bitMask; + } + + /** + * makeMaskNo + * @param $maskNo (int) + * @param $width (int) + * @param $s (int) + * @param $d (int) + * @param $maskGenOnly (boolean) + * @return int b + */ + protected function makeMaskNo($maskNo, $width, $s, &$d, $maskGenOnly=false) { + $b = 0; + $bitMask = array(); + $bitMask = $this->generateMaskNo($maskNo, $width, $s, $d); + if ($maskGenOnly) { + return; + } + $d = $s; + for ($y=0; $y<$width; ++$y) { + for ($x=0; $x<$width; ++$x) { + if ($bitMask[$y][$x] == 1) { + $d[$y][$x] = chr(ord($s[$y][$x]) ^ ((int)($bitMask[$y][$x]))); + } + $b += (int)(ord($d[$y][$x]) & 1); + } + } + return $b; + } + + /** + * makeMask + * @param $width (int) + * @param $frame (array) + * @param $maskNo (int) + * @param $level (int) + * @return array mask + */ + protected function makeMask($width, $frame, $maskNo, $level) { + $masked = array_fill(0, $width, str_repeat("\0", $width)); + $this->makeMaskNo($maskNo, $width, $frame, $masked); + $this->writeFormatInformation($width, $masked, $maskNo, $level); + return $masked; + } + + /** + * calcN1N3 + * @param $length (int) + * @return int demerit + */ + protected function calcN1N3($length) { + $demerit = 0; + for ($i=0; $i<$length; ++$i) { + if ($this->runLength[$i] >= 5) { + $demerit += (N1 + ($this->runLength[$i] - 5)); + } + if ($i & 1) { + if (($i >= 3) AND ($i < ($length-2)) AND ($this->runLength[$i] % 3 == 0)) { + $fact = (int)($this->runLength[$i] / 3); + if (($this->runLength[$i-2] == $fact) + AND ($this->runLength[$i-1] == $fact) + AND ($this->runLength[$i+1] == $fact) + AND ($this->runLength[$i+2] == $fact)) { + if (($this->runLength[$i-3] < 0) OR ($this->runLength[$i-3] >= (4 * $fact))) { + $demerit += N3; + } elseif ((($i+3) >= $length) OR ($this->runLength[$i+3] >= (4 * $fact))) { + $demerit += N3; + } + } + } + } + } + return $demerit; + } + + /** + * evaluateSymbol + * @param $width (int) + * @param $frame (array) + * @return int demerit + */ + protected function evaluateSymbol($width, $frame) { + $head = 0; + $demerit = 0; + for ($y=0; $y<$width; ++$y) { + $head = 0; + $this->runLength[0] = 1; + $frameY = $frame[$y]; + if ($y > 0) { + $frameYM = $frame[$y-1]; + } + for ($x=0; $x<$width; ++$x) { + if (($x > 0) AND ($y > 0)) { + $b22 = ord($frameY[$x]) & ord($frameY[$x-1]) & ord($frameYM[$x]) & ord($frameYM[$x-1]); + $w22 = ord($frameY[$x]) | ord($frameY[$x-1]) | ord($frameYM[$x]) | ord($frameYM[$x-1]); + if (($b22 | ($w22 ^ 1)) & 1) { + $demerit += N2; + } + } + if (($x == 0) AND (ord($frameY[$x]) & 1)) { + $this->runLength[0] = -1; + $head = 1; + $this->runLength[$head] = 1; + } elseif ($x > 0) { + if ((ord($frameY[$x]) ^ ord($frameY[$x-1])) & 1) { + $head++; + $this->runLength[$head] = 1; + } else { + $this->runLength[$head]++; + } + } + } + $demerit += $this->calcN1N3($head+1); + } + for ($x=0; $x<$width; ++$x) { + $head = 0; + $this->runLength[0] = 1; + for ($y=0; $y<$width; ++$y) { + if (($y == 0) AND (ord($frame[$y][$x]) & 1)) { + $this->runLength[0] = -1; + $head = 1; + $this->runLength[$head] = 1; + } elseif ($y > 0) { + if ((ord($frame[$y][$x]) ^ ord($frame[$y-1][$x])) & 1) { + $head++; + $this->runLength[$head] = 1; + } else { + $this->runLength[$head]++; + } + } + } + $demerit += $this->calcN1N3($head+1); + } + return $demerit; + } + + /** + * mask + * @param $width (int) + * @param $frame (array) + * @param $level (int) + * @return array best mask + */ + protected function mask($width, $frame, $level) { + $minDemerit = PHP_INT_MAX; + $bestMaskNum = 0; + $bestMask = array(); + $checked_masks = array(0, 1, 2, 3, 4, 5, 6, 7); + if (QR_FIND_FROM_RANDOM !== false) { + $howManuOut = 8 - (QR_FIND_FROM_RANDOM % 9); + for ($i = 0; $i < $howManuOut; ++$i) { + $remPos = rand (0, count($checked_masks)-1); + unset($checked_masks[$remPos]); + $checked_masks = array_values($checked_masks); + } + } + $bestMask = $frame; + foreach ($checked_masks as $i) { + $mask = array_fill(0, $width, str_repeat("\0", $width)); + $demerit = 0; + $blacks = 0; + $blacks = $this->makeMaskNo($i, $width, $frame, $mask); + $blacks += $this->writeFormatInformation($width, $mask, $i, $level); + $blacks = (int)(100 * $blacks / ($width * $width)); + $demerit = (int)((int)(abs($blacks - 50) / 5) * N4); + $demerit += $this->evaluateSymbol($width, $mask); + if ($demerit < $minDemerit) { + $minDemerit = $demerit; + $bestMask = $mask; + $bestMaskNum = $i; + } + } + return $bestMask; + } + + // - - - - - - - - - - - - - - - - - - - - - - - - - + + // QRsplit + + /** + * Return true if the character at specified position is a number + * @param $str (string) string + * @param $pos (int) characted position + * @return boolean true of false + */ + protected function isdigitat($str, $pos) { + if ($pos >= strlen($str)) { + return false; + } + return ((ord($str[$pos]) >= ord('0'))&&(ord($str[$pos]) <= ord('9'))); + } + + /** + * Return true if the character at specified position is an alphanumeric character + * @param $str (string) string + * @param $pos (int) characted position + * @return boolean true of false + */ + protected function isalnumat($str, $pos) { + if ($pos >= strlen($str)) { + return false; + } + return ($this->lookAnTable(ord($str[$pos])) >= 0); + } + + /** + * identifyMode + * @param $pos (int) + * @return int mode + */ + protected function identifyMode($pos) { + if ($pos >= strlen($this->dataStr)) { + return QR_MODE_NL; + } + $c = $this->dataStr[$pos]; + if ($this->isdigitat($this->dataStr, $pos)) { + return QR_MODE_NM; + } elseif ($this->isalnumat($this->dataStr, $pos)) { + return QR_MODE_AN; + } elseif ($this->hint == QR_MODE_KJ) { + if ($pos+1 < strlen($this->dataStr)) { + $d = $this->dataStr[$pos+1]; + $word = (ord($c) << 8) | ord($d); + if (($word >= 0x8140 && $word <= 0x9ffc) OR ($word >= 0xe040 && $word <= 0xebbf)) { + return QR_MODE_KJ; + } + } + } + return QR_MODE_8B; + } + + /** + * eatNum + * @return int run + */ + protected function eatNum() { + $ln = $this->lengthIndicator(QR_MODE_NM, $this->version); + $p = 0; + while($this->isdigitat($this->dataStr, $p)) { + $p++; + } + $run = $p; + $mode = $this->identifyMode($p); + if ($mode == QR_MODE_8B) { + $dif = $this->estimateBitsModeNum($run) + 4 + $ln + + $this->estimateBitsMode8(1) // + 4 + l8 + - $this->estimateBitsMode8($run + 1); // - 4 - l8 + if ($dif > 0) { + return $this->eat8(); + } + } + if ($mode == QR_MODE_AN) { + $dif = $this->estimateBitsModeNum($run) + 4 + $ln + + $this->estimateBitsModeAn(1) // + 4 + la + - $this->estimateBitsModeAn($run + 1);// - 4 - la + if ($dif > 0) { + return $this->eatAn(); + } + } + $this->items = $this->appendNewInputItem($this->items, QR_MODE_NM, $run, str_split($this->dataStr)); + return $run; + } + + /** + * eatAn + * @return int run + */ + protected function eatAn() { + $la = $this->lengthIndicator(QR_MODE_AN, $this->version); + $ln = $this->lengthIndicator(QR_MODE_NM, $this->version); + $p =1 ; + while($this->isalnumat($this->dataStr, $p)) { + if ($this->isdigitat($this->dataStr, $p)) { + $q = $p; + while($this->isdigitat($this->dataStr, $q)) { + $q++; + } + $dif = $this->estimateBitsModeAn($p) // + 4 + la + + $this->estimateBitsModeNum($q - $p) + 4 + $ln + - $this->estimateBitsModeAn($q); // - 4 - la + if ($dif < 0) { + break; + } else { + $p = $q; + } + } else { + $p++; + } + } + $run = $p; + if (!$this->isalnumat($this->dataStr, $p)) { + $dif = $this->estimateBitsModeAn($run) + 4 + $la + + $this->estimateBitsMode8(1) // + 4 + l8 + - $this->estimateBitsMode8($run + 1); // - 4 - l8 + if ($dif > 0) { + return $this->eat8(); + } + } + $this->items = $this->appendNewInputItem($this->items, QR_MODE_AN, $run, str_split($this->dataStr)); + return $run; + } + + /** + * eatKanji + * @return int run + */ + protected function eatKanji() { + $p = 0; + while($this->identifyMode($p) == QR_MODE_KJ) { + $p += 2; + } + $this->items = $this->appendNewInputItem($this->items, QR_MODE_KJ, $p, str_split($this->dataStr)); + return $run; + } + + /** + * eat8 + * @return int run + */ + protected function eat8() { + $la = $this->lengthIndicator(QR_MODE_AN, $this->version); + $ln = $this->lengthIndicator(QR_MODE_NM, $this->version); + $p = 1; + $dataStrLen = strlen($this->dataStr); + while($p < $dataStrLen) { + $mode = $this->identifyMode($p); + if ($mode == QR_MODE_KJ) { + break; + } + if ($mode == QR_MODE_NM) { + $q = $p; + while($this->isdigitat($this->dataStr, $q)) { + $q++; + } + $dif = $this->estimateBitsMode8($p) // + 4 + l8 + + $this->estimateBitsModeNum($q - $p) + 4 + $ln + - $this->estimateBitsMode8($q); // - 4 - l8 + if ($dif < 0) { + break; + } else { + $p = $q; + } + } elseif ($mode == QR_MODE_AN) { + $q = $p; + while($this->isalnumat($this->dataStr, $q)) { + $q++; + } + $dif = $this->estimateBitsMode8($p) // + 4 + l8 + + $this->estimateBitsModeAn($q - $p) + 4 + $la + - $this->estimateBitsMode8($q); // - 4 - l8 + if ($dif < 0) { + break; + } else { + $p = $q; + } + } else { + $p++; + } + } + $run = $p; + $this->items = $this->appendNewInputItem($this->items, QR_MODE_8B, $run, str_split($this->dataStr)); + return $run; + } + + /** + * splitString + */ + protected function splitString() { + while (strlen($this->dataStr) > 0) { + if ($this->dataStr == '') { + return 0; + } + $mode = $this->identifyMode(0); + switch ($mode) { + case QR_MODE_NM: { + $length = $this->eatNum(); + break; + } + case QR_MODE_AN: { + $length = $this->eatAn(); + break; + } + case QR_MODE_KJ: { + if ($hint == QR_MODE_KJ) { + $length = $this->eatKanji(); + } else { + $length = $this->eat8(); + } + break; + } + default: { + $length = $this->eat8(); + break; + } + } + if ($length == 0) { + return 0; + } + if ($length < 0) { + return -1; + } + $this->dataStr = substr($this->dataStr, $length); + } + } + + /** + * toUpper + */ + protected function toUpper() { + $stringLen = strlen($this->dataStr); + $p = 0; + while ($p < $stringLen) { + $mode = $this->identifyMode(substr($this->dataStr, $p), $this->hint); + if ($mode == QR_MODE_KJ) { + $p += 2; + } else { + if ((ord($this->dataStr[$p]) >= ord('a')) AND (ord($this->dataStr[$p]) <= ord('z'))) { + $this->dataStr[$p] = chr(ord($this->dataStr[$p]) - 32); + } + $p++; + } + } + return $this->dataStr; + } + + // - - - - - - - - - - - - - - - - - - - - - - - - - + + // QRinputItem + + /** + * newInputItem + * @param $mode (int) + * @param $size (int) + * @param $data (array) + * @param $bstream (array) + * @return array input item + */ + protected function newInputItem($mode, $size, $data, $bstream=null) { + $setData = array_slice($data, 0, $size); + if (count($setData) < $size) { + $setData = array_merge($setData, array_fill(0, ($size - count($setData)), 0)); + } + if (!$this->check($mode, $size, $setData)) { + return NULL; + } + $inputitem = array(); + $inputitem['mode'] = $mode; + $inputitem['size'] = $size; + $inputitem['data'] = $setData; + $inputitem['bstream'] = $bstream; + return $inputitem; + } + + /** + * encodeModeNum + * @param $inputitem (array) + * @param $version (int) + * @return array input item + */ + protected function encodeModeNum($inputitem, $version) { + $words = (int)($inputitem['size'] / 3); + $inputitem['bstream'] = array(); + $val = 0x1; + $inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 4, $val); + $inputitem['bstream'] = $this->appendNum($inputitem['bstream'], $this->lengthIndicator(QR_MODE_NM, $version), $inputitem['size']); + for ($i=0; $i < $words; ++$i) { + $val = (ord($inputitem['data'][$i*3 ]) - ord('0')) * 100; + $val += (ord($inputitem['data'][$i*3+1]) - ord('0')) * 10; + $val += (ord($inputitem['data'][$i*3+2]) - ord('0')); + $inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 10, $val); + } + if ($inputitem['size'] - $words * 3 == 1) { + $val = ord($inputitem['data'][$words*3]) - ord('0'); + $inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 4, $val); + } elseif (($inputitem['size'] - ($words * 3)) == 2) { + $val = (ord($inputitem['data'][$words*3 ]) - ord('0')) * 10; + $val += (ord($inputitem['data'][$words*3+1]) - ord('0')); + $inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 7, $val); + } + return $inputitem; + } + + /** + * encodeModeAn + * @param $inputitem (array) + * @param $version (int) + * @return array input item + */ + protected function encodeModeAn($inputitem, $version) { + $words = (int)($inputitem['size'] / 2); + $inputitem['bstream'] = array(); + $inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 4, 0x02); + $inputitem['bstream'] = $this->appendNum($inputitem['bstream'], $this->lengthIndicator(QR_MODE_AN, $version), $inputitem['size']); + for ($i=0; $i < $words; ++$i) { + $val = (int)($this->lookAnTable(ord($inputitem['data'][$i*2])) * 45); + $val += (int)($this->lookAnTable(ord($inputitem['data'][($i*2)+1]))); + $inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 11, $val); + } + if ($inputitem['size'] & 1) { + $val = $this->lookAnTable(ord($inputitem['data'][($words * 2)])); + $inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 6, $val); + } + return $inputitem; + } + + /** + * encodeMode8 + * @param $inputitem (array) + * @param $version (int) + * @return array input item + */ + protected function encodeMode8($inputitem, $version) { + $inputitem['bstream'] = array(); + $inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 4, 0x4); + $inputitem['bstream'] = $this->appendNum($inputitem['bstream'], $this->lengthIndicator(QR_MODE_8B, $version), $inputitem['size']); + for ($i=0; $i < $inputitem['size']; ++$i) { + $inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 8, ord($inputitem['data'][$i])); + } + return $inputitem; + } + + /** + * encodeModeKanji + * @param $inputitem (array) + * @param $version (int) + * @return array input item + */ + protected function encodeModeKanji($inputitem, $version) { + $inputitem['bstream'] = array(); + $inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 4, 0x8); + $inputitem['bstream'] = $this->appendNum($inputitem['bstream'], $this->lengthIndicator(QR_MODE_KJ, $version), (int)($inputitem['size'] / 2)); + for ($i=0; $i<$inputitem['size']; $i+=2) { + $val = (ord($inputitem['data'][$i]) << 8) | ord($inputitem['data'][$i+1]); + if ($val <= 0x9ffc) { + $val -= 0x8140; + } else { + $val -= 0xc140; + } + $h = ($val >> 8) * 0xc0; + $val = ($val & 0xff) + $h; + $inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 13, $val); + } + return $inputitem; + } + + /** + * encodeModeStructure + * @param $inputitem (array) + * @return array input item + */ + protected function encodeModeStructure($inputitem) { + $inputitem['bstream'] = array(); + $inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 4, 0x03); + $inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 4, ord($inputitem['data'][1]) - 1); + $inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 4, ord($inputitem['data'][0]) - 1); + $inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 8, ord($inputitem['data'][2])); + return $inputitem; + } + + /** + * encodeBitStream + * @param $inputitem (array) + * @param $version (int) + * @return array input item + */ + protected function encodeBitStream($inputitem, $version) { + $inputitem['bstream'] = array(); + $words = $this->maximumWords($inputitem['mode'], $version); + if ($inputitem['size'] > $words) { + $st1 = $this->newInputItem($inputitem['mode'], $words, $inputitem['data']); + $st2 = $this->newInputItem($inputitem['mode'], $inputitem['size'] - $words, array_slice($inputitem['data'], $words)); + $st1 = $this->encodeBitStream($st1, $version); + $st2 = $this->encodeBitStream($st2, $version); + $inputitem['bstream'] = array(); + $inputitem['bstream'] = $this->appendBitstream($inputitem['bstream'], $st1['bstream']); + $inputitem['bstream'] = $this->appendBitstream($inputitem['bstream'], $st2['bstream']); + } else { + switch($inputitem['mode']) { + case QR_MODE_NM: { + $inputitem = $this->encodeModeNum($inputitem, $version); + break; + } + case QR_MODE_AN: { + $inputitem = $this->encodeModeAn($inputitem, $version); + break; + } + case QR_MODE_8B: { + $inputitem = $this->encodeMode8($inputitem, $version); + break; + } + case QR_MODE_KJ: { + $inputitem = $this->encodeModeKanji($inputitem, $version); + break; + } + case QR_MODE_ST: { + $inputitem = $this->encodeModeStructure($inputitem); + break; + } + default: { + break; + } + } + } + return $inputitem; + } + + // - - - - - - - - - - - - - - - - - - - - - - - - - + + // QRinput + + /** + * Append data to an input object. + * The data is copied and appended to the input object. + * @param $items (arrray) input items + * @param $mode (int) encoding mode. + * @param $size (int) size of data (byte). + * @param $data (array) array of input data. + * @return items + * + */ + protected function appendNewInputItem($items, $mode, $size, $data) { + $newitem = $this->newInputItem($mode, $size, $data); + if (!empty($newitem)) { + $items[] = $newitem; + } + return $items; + } + + /** + * insertStructuredAppendHeader + * @param $items (array) + * @param $size (int) + * @param $index (int) + * @param $parity (int) + * @return array items + */ + protected function insertStructuredAppendHeader($items, $size, $index, $parity) { + if ($size > MAX_STRUCTURED_SYMBOLS) { + return -1; + } + if (($index <= 0) OR ($index > MAX_STRUCTURED_SYMBOLS)) { + return -1; + } + $buf = array($size, $index, $parity); + $entry = $this->newInputItem(QR_MODE_ST, 3, buf); + array_unshift($items, $entry); + return $items; + } + + /** + * calcParity + * @param $items (array) + * @return int parity + */ + protected function calcParity($items) { + $parity = 0; + foreach ($items as $item) { + if ($item['mode'] != QR_MODE_ST) { + for ($i=$item['size']-1; $i>=0; --$i) { + $parity ^= $item['data'][$i]; + } + } + } + return $parity; + } + + /** + * checkModeNum + * @param $size (int) + * @param $data (array) + * @return boolean true or false + */ + protected function checkModeNum($size, $data) { + for ($i=0; $i<$size; ++$i) { + if ((ord($data[$i]) < ord('0')) OR (ord($data[$i]) > ord('9'))){ + return false; + } + } + return true; + } + + /** + * Look up the alphabet-numeric convesion table (see JIS X0510:2004, pp.19). + * @param $c (int) character value + * @return value + */ + protected function lookAnTable($c) { + return (($c > 127)?-1:$this->anTable[$c]); + } + + /** + * checkModeAn + * @param $size (int) + * @param $data (array) + * @return boolean true or false + */ + protected function checkModeAn($size, $data) { + for ($i=0; $i<$size; ++$i) { + if ($this->lookAnTable(ord($data[$i])) == -1) { + return false; + } + } + return true; + } + + /** + * estimateBitsModeNum + * @param $size (int) + * @return int number of bits + */ + protected function estimateBitsModeNum($size) { + $w = (int)($size / 3); + $bits = ($w * 10); + switch($size - ($w * 3)) { + case 1: { + $bits += 4; + break; + } + case 2: { + $bits += 7; + break; + } + } + return $bits; + } + + /** + * estimateBitsModeAn + * @param $size (int) + * @return int number of bits + */ + protected function estimateBitsModeAn($size) { + $bits = (int)($size * 5.5); // (size / 2 ) * 11 + if ($size & 1) { + $bits += 6; + } + return $bits; + } + + /** + * estimateBitsMode8 + * @param $size (int) + * @return int number of bits + */ + protected function estimateBitsMode8($size) { + return (int)($size * 8); + } + + /** + * estimateBitsModeKanji + * @param $size (int) + * @return int number of bits + */ + protected function estimateBitsModeKanji($size) { + return (int)($size * 6.5); // (size / 2 ) * 13 + } + + /** + * checkModeKanji + * @param $size (int) + * @param $data (array) + * @return boolean true or false + */ + protected function checkModeKanji($size, $data) { + if ($size & 1) { + return false; + } + for ($i=0; $i<$size; $i+=2) { + $val = (ord($data[$i]) << 8) | ord($data[$i+1]); + if (($val < 0x8140) OR (($val > 0x9ffc) AND ($val < 0xe040)) OR ($val > 0xebbf)) { + return false; + } + } + return true; + } + + /** + * Validate the input data. + * @param $mode (int) encoding mode. + * @param $size (int) size of data (byte). + * @param $data (array) data to validate + * @return boolean true in case of valid data, false otherwise + */ + protected function check($mode, $size, $data) { + if ($size <= 0) { + return false; + } + switch($mode) { + case QR_MODE_NM: { + return $this->checkModeNum($size, $data); + } + case QR_MODE_AN: { + return $this->checkModeAn($size, $data); + } + case QR_MODE_KJ: { + return $this->checkModeKanji($size, $data); + } + case QR_MODE_8B: { + return true; + } + case QR_MODE_ST: { + return true; + } + default: { + break; + } + } + return false; + } + + /** + * estimateBitStreamSize + * @param $items (array) + * @param $version (int) + * @return int bits + */ + protected function estimateBitStreamSize($items, $version) { + $bits = 0; + if ($version == 0) { + $version = 1; + } + foreach ($items as $item) { + switch($item['mode']) { + case QR_MODE_NM: { + $bits = $this->estimateBitsModeNum($item['size']); + break; + } + case QR_MODE_AN: { + $bits = $this->estimateBitsModeAn($item['size']); + break; + } + case QR_MODE_8B: { + $bits = $this->estimateBitsMode8($item['size']); + break; + } + case QR_MODE_KJ: { + $bits = $this->estimateBitsModeKanji($item['size']); + break; + } + case QR_MODE_ST: { + return STRUCTURE_HEADER_BITS; + } + default: { + return 0; + } + } + $l = $this->lengthIndicator($item['mode'], $version); + $m = 1 << $l; + $num = (int)(($item['size'] + $m - 1) / $m); + $bits += $num * (4 + $l); + } + return $bits; + } + + /** + * estimateVersion + * @param $items (array) + * @return int version + */ + protected function estimateVersion($items) { + $version = 0; + $prev = 0; + do { + $prev = $version; + $bits = $this->estimateBitStreamSize($items, $prev); + $version = $this->getMinimumVersion((int)(($bits + 7) / 8), $this->level); + if ($version < 0) { + return -1; + } + } while ($version > $prev); + return $version; + } + + /** + * lengthOfCode + * @param $mode (int) + * @param $version (int) + * @param $bits (int) + * @return int size + */ + protected function lengthOfCode($mode, $version, $bits) { + $payload = $bits - 4 - $this->lengthIndicator($mode, $version); + switch($mode) { + case QR_MODE_NM: { + $chunks = (int)($payload / 10); + $remain = $payload - $chunks * 10; + $size = $chunks * 3; + if ($remain >= 7) { + $size += 2; + } elseif ($remain >= 4) { + $size += 1; + } + break; + } + case QR_MODE_AN: { + $chunks = (int)($payload / 11); + $remain = $payload - $chunks * 11; + $size = $chunks * 2; + if ($remain >= 6) { + ++$size; + } + break; + } + case QR_MODE_8B: { + $size = (int)($payload / 8); + break; + } + case QR_MODE_KJ: { + $size = (int)(($payload / 13) * 2); + break; + } + case QR_MODE_ST: { + $size = (int)($payload / 8); + break; + } + default: { + $size = 0; + break; + } + } + $maxsize = $this->maximumWords($mode, $version); + if ($size < 0) { + $size = 0; + } + if ($size > $maxsize) { + $size = $maxsize; + } + return $size; + } + + /** + * createBitStream + * @param $items (array) + * @return array of items and total bits + */ + protected function createBitStream($items) { + $total = 0; + foreach ($items as $key => $item) { + $items[$key] = $this->encodeBitStream($item, $this->version); + $bits = count($items[$key]['bstream']); + $total += $bits; + } + return array($items, $total); + } + + /** + * convertData + * @param $items (array) + * @return array items + */ + protected function convertData($items) { + $ver = $this->estimateVersion($items); + if ($ver > $this->version) { + $this->version = $ver; + } + for (;;) { + $cbs = $this->createBitStream($items); + $items = $cbs[0]; + $bits = $cbs[1]; + if ($bits < 0) { + return -1; + } + $ver = $this->getMinimumVersion((int)(($bits + 7) / 8), $this->level); + if ($ver < 0) { + return -1; + } elseif ($ver > $this->version) { + $this->version = $ver; + } else { + break; + } + } + return $items; + } + + /** + * Append Padding Bit to bitstream + * @param $bstream (array) + * @return array bitstream + */ + protected function appendPaddingBit($bstream) { + if (is_null($bstream)) { + return null; + } + $bits = count($bstream); + $maxwords = $this->getDataLength($this->version, $this->level); + $maxbits = $maxwords * 8; + if ($maxbits == $bits) { + return $bstream; + } + if ($maxbits - $bits < 5) { + return $this->appendNum($bstream, $maxbits - $bits, 0); + } + $bits += 4; + $words = (int)(($bits + 7) / 8); + $padding = array(); + $padding = $this->appendNum($padding, $words * 8 - $bits + 4, 0); + $padlen = $maxwords - $words; + if ($padlen > 0) { + $padbuf = array(); + for ($i=0; $i<$padlen; ++$i) { + $padbuf[$i] = ($i&1)?0x11:0xec; + } + $padding = $this->appendBytes($padding, $padlen, $padbuf); + } + return $this->appendBitstream($bstream, $padding); + } + + /** + * mergeBitStream + * @param $items (array) items + * @return array bitstream + */ + protected function mergeBitStream($items) { + $items = $this->convertData($items); + if (!is_array($items)) { + return null; + } + $bstream = array(); + foreach ($items as $item) { + $bstream = $this->appendBitstream($bstream, $item['bstream']); + } + return $bstream; + } + + /** + * Returns a stream of bits. + * @param $items (int) + * @return array padded merged byte stream + */ + protected function getBitStream($items) { + $bstream = $this->mergeBitStream($items); + return $this->appendPaddingBit($bstream); + } + + /** + * Pack all bit streams padding bits into a byte array. + * @param $items (int) + * @return array padded merged byte stream + */ + protected function getByteStream($items) { + $bstream = $this->getBitStream($items); + return $this->bitstreamToByte($bstream); + } + + // - - - - - - - - - - - - - - - - - - - - - - - - - + + // QRbitstream + + /** + * Return an array with zeros + * @param $setLength (int) array size + * @return array + */ + protected function allocate($setLength) { + return array_fill(0, $setLength, 0); + } + + /** + * Return new bitstream from number + * @param $bits (int) number of bits + * @param $num (int) number + * @return array bitstream + */ + protected function newFromNum($bits, $num) { + $bstream = $this->allocate($bits); + $mask = 1 << ($bits - 1); + for ($i=0; $i<$bits; ++$i) { + if ($num & $mask) { + $bstream[$i] = 1; + } else { + $bstream[$i] = 0; + } + $mask = $mask >> 1; + } + return $bstream; + } + + /** + * Return new bitstream from bytes + * @param $size (int) size + * @param $data (array) bytes + * @return array bitstream + */ + protected function newFromBytes($size, $data) { + $bstream = $this->allocate($size * 8); + $p=0; + for ($i=0; $i<$size; ++$i) { + $mask = 0x80; + for ($j=0; $j<8; ++$j) { + if ($data[$i] & $mask) { + $bstream[$p] = 1; + } else { + $bstream[$p] = 0; + } + $p++; + $mask = $mask >> 1; + } + } + return $bstream; + } + + /** + * Append one bitstream to another + * @param $bitstream (array) original bitstream + * @param $append (array) bitstream to append + * @return array bitstream + */ + protected function appendBitstream($bitstream, $append) { + if ((!is_array($append)) OR (count($append) == 0)) { + return $bitstream; + } + if (count($bitstream) == 0) { + return $append; + } + return array_values(array_merge($bitstream, $append)); + } + + /** + * Append one bitstream created from number to another + * @param $bitstream (array) original bitstream + * @param $bits (int) number of bits + * @param $num (int) number + * @return array bitstream + */ + protected function appendNum($bitstream, $bits, $num) { + if ($bits == 0) { + return 0; + } + $b = $this->newFromNum($bits, $num); + return $this->appendBitstream($bitstream, $b); + } + + /** + * Append one bitstream created from bytes to another + * @param $bitstream (array) original bitstream + * @param $size (int) size + * @param $data (array) bytes + * @return array bitstream + */ + protected function appendBytes($bitstream, $size, $data) { + if ($size == 0) { + return 0; + } + $b = $this->newFromBytes($size, $data); + return $this->appendBitstream($bitstream, $b); + } + + /** + * Convert bitstream to bytes + * @param $bstream (array) original bitstream + * @return array of bytes + */ + protected function bitstreamToByte($bstream) { + if (is_null($bstream)) { + return null; + } + $size = count($bstream); + if ($size == 0) { + return array(); + } + $data = array_fill(0, (int)(($size + 7) / 8), 0); + $bytes = (int)($size / 8); + $p = 0; + for ($i=0; $i<$bytes; $i++) { + $v = 0; + for ($j=0; $j<8; $j++) { + $v = $v << 1; + $v |= $bstream[$p]; + $p++; + } + $data[$i] = $v; + } + if ($size & 7) { + $v = 0; + for ($j=0; $j<($size & 7); $j++) { + $v = $v << 1; + $v |= $bstream[$p]; + $p++; + } + $data[$bytes] = $v; + } + return $data; + } + + // - - - - - - - - - - - - - - - - - - - - - - - - - + + // QRspec + + /** + * Replace a value on the array at the specified position + * @param $srctab (array) + * @param $x (int) X position + * @param $y (int) Y position + * @param $repl (string) value to replace + * @param $replLen (int) length of the repl string + * @return array srctab + */ + protected function qrstrset($srctab, $x, $y, $repl, $replLen=false) { + $srctab[$y] = substr_replace($srctab[$y], ($replLen !== false)?substr($repl,0,$replLen):$repl, $x, ($replLen !== false)?$replLen:strlen($repl)); + return $srctab; + } + + /** + * Return maximum data code length (bytes) for the version. + * @param $version (int) version + * @param $level (int) error correction level + * @return int maximum size (bytes) + */ + protected function getDataLength($version, $level) { + return $this->capacity[$version][QRCAP_WORDS] - $this->capacity[$version][QRCAP_EC][$level]; + } + + /** + * Return maximum error correction code length (bytes) for the version. + * @param $version (int) version + * @param $level (int) error correction level + * @return int ECC size (bytes) + */ + protected function getECCLength($version, $level){ + return $this->capacity[$version][QRCAP_EC][$level]; + } + + /** + * Return the width of the symbol for the version. + * @param $version (int) version + * @return int width + */ + protected function getWidth($version) { + return $this->capacity[$version][QRCAP_WIDTH]; + } + + /** + * Return the numer of remainder bits. + * @param $version (int) version + * @return int number of remainder bits + */ + protected function getRemainder($version) { + return $this->capacity[$version][QRCAP_REMINDER]; + } + + /** + * Return a version number that satisfies the input code length. + * @param $size (int) input code length (byte) + * @param $level (int) error correction level + * @return int version number + */ + protected function getMinimumVersion($size, $level) { + for ($i=1; $i <= QRSPEC_VERSION_MAX; ++$i) { + $words = $this->capacity[$i][QRCAP_WORDS] - $this->capacity[$i][QRCAP_EC][$level]; + if ($words >= $size) { + return $i; + } + } + return -1; + } + + /** + * Return the size of length indicator for the mode and version. + * @param $mode (int) encoding mode + * @param $version (int) version + * @return int the size of the appropriate length indicator (bits). + */ + protected function lengthIndicator($mode, $version) { + if ($mode == QR_MODE_ST) { + return 0; + } + if ($version <= 9) { + $l = 0; + } elseif ($version <= 26) { + $l = 1; + } else { + $l = 2; + } + return $this->lengthTableBits[$mode][$l]; + } + + /** + * Return the maximum length for the mode and version. + * @param $mode (int) encoding mode + * @param $version (int) version + * @return int the maximum length (bytes) + */ + protected function maximumWords($mode, $version) { + if ($mode == QR_MODE_ST) { + return 3; + } + if ($version <= 9) { + $l = 0; + } else if ($version <= 26) { + $l = 1; + } else { + $l = 2; + } + $bits = $this->lengthTableBits[$mode][$l]; + $words = (1 << $bits) - 1; + if ($mode == QR_MODE_KJ) { + $words *= 2; // the number of bytes is required + } + return $words; + } + + /** + * Return an array of ECC specification. + * @param $version (int) version + * @param $level (int) error correction level + * @param $spec (array) an array of ECC specification contains as following: {# of type1 blocks, # of data code, # of ecc code, # of type2 blocks, # of data code} + * @return array spec + */ + protected function getEccSpec($version, $level, $spec) { + if (count($spec) < 5) { + $spec = array(0, 0, 0, 0, 0); + } + $b1 = $this->eccTable[$version][$level][0]; + $b2 = $this->eccTable[$version][$level][1]; + $data = $this->getDataLength($version, $level); + $ecc = $this->getECCLength($version, $level); + if ($b2 == 0) { + $spec[0] = $b1; + $spec[1] = (int)($data / $b1); + $spec[2] = (int)($ecc / $b1); + $spec[3] = 0; + $spec[4] = 0; + } else { + $spec[0] = $b1; + $spec[1] = (int)($data / ($b1 + $b2)); + $spec[2] = (int)($ecc / ($b1 + $b2)); + $spec[3] = $b2; + $spec[4] = $spec[1] + 1; + } + return $spec; + } + + /** + * Put an alignment marker. + * @param $frame (array) frame + * @param $ox (int) X center coordinate of the pattern + * @param $oy (int) Y center coordinate of the pattern + * @return array frame + */ + protected function putAlignmentMarker($frame, $ox, $oy) { + $finder = array( + "\xa1\xa1\xa1\xa1\xa1", + "\xa1\xa0\xa0\xa0\xa1", + "\xa1\xa0\xa1\xa0\xa1", + "\xa1\xa0\xa0\xa0\xa1", + "\xa1\xa1\xa1\xa1\xa1" + ); + $yStart = $oy - 2; + $xStart = $ox - 2; + for ($y=0; $y < 5; $y++) { + $frame = $this->qrstrset($frame, $xStart, $yStart+$y, $finder[$y]); + } + return $frame; + } + + /** + * Put an alignment pattern. + * @param $version (int) version + * @param $frame (array) frame + * @param $width (int) width + * @return array frame + */ + protected function putAlignmentPattern($version, $frame, $width) { + if ($version < 2) { + return $frame; + } + $d = $this->alignmentPattern[$version][1] - $this->alignmentPattern[$version][0]; + if ($d < 0) { + $w = 2; + } else { + $w = (int)(($width - $this->alignmentPattern[$version][0]) / $d + 2); + } + if ($w * $w - 3 == 1) { + $x = $this->alignmentPattern[$version][0]; + $y = $this->alignmentPattern[$version][0]; + $frame = $this->putAlignmentMarker($frame, $x, $y); + return $frame; + } + $cx = $this->alignmentPattern[$version][0]; + $wo = $w - 1; + for ($x=1; $x < $wo; ++$x) { + $frame = $this->putAlignmentMarker($frame, 6, $cx); + $frame = $this->putAlignmentMarker($frame, $cx, 6); + $cx += $d; + } + $cy = $this->alignmentPattern[$version][0]; + for ($y=0; $y < $wo; ++$y) { + $cx = $this->alignmentPattern[$version][0]; + for ($x=0; $x < $wo; ++$x) { + $frame = $this->putAlignmentMarker($frame, $cx, $cy); + $cx += $d; + } + $cy += $d; + } + return $frame; + } + + /** + * Return BCH encoded version information pattern that is used for the symbol of version 7 or greater. Use lower 18 bits. + * @param $version (int) version + * @return BCH encoded version information pattern + */ + protected function getVersionPattern($version) { + if (($version < 7) OR ($version > QRSPEC_VERSION_MAX)) { + return 0; + } + return $this->versionPattern[($version - 7)]; + } + + /** + * Return BCH encoded format information pattern. + * @param $mask (array) + * @param $level (int) error correction level + * @return BCH encoded format information pattern + */ + protected function getFormatInfo($mask, $level) { + if (($mask < 0) OR ($mask > 7)) { + return 0; + } + if (($level < 0) OR ($level > 3)) { + return 0; + } + return $this->formatInfo[$level][$mask]; + } + + /** + * Put a finder pattern. + * @param $frame (array) frame + * @param $ox (int) X center coordinate of the pattern + * @param $oy (int) Y center coordinate of the pattern + * @return array frame + */ + protected function putFinderPattern($frame, $ox, $oy) { + $finder = array( + "\xc1\xc1\xc1\xc1\xc1\xc1\xc1", + "\xc1\xc0\xc0\xc0\xc0\xc0\xc1", + "\xc1\xc0\xc1\xc1\xc1\xc0\xc1", + "\xc1\xc0\xc1\xc1\xc1\xc0\xc1", + "\xc1\xc0\xc1\xc1\xc1\xc0\xc1", + "\xc1\xc0\xc0\xc0\xc0\xc0\xc1", + "\xc1\xc1\xc1\xc1\xc1\xc1\xc1" + ); + for ($y=0; $y < 7; $y++) { + $frame = $this->qrstrset($frame, $ox, ($oy + $y), $finder[$y]); + } + return $frame; + } + + /** + * Return a copy of initialized frame. + * @param $version (int) version + * @return Array of unsigned char. + */ + protected function createFrame($version) { + $width = $this->capacity[$version][QRCAP_WIDTH]; + $frameLine = str_repeat ("\0", $width); + $frame = array_fill(0, $width, $frameLine); + // Finder pattern + $frame = $this->putFinderPattern($frame, 0, 0); + $frame = $this->putFinderPattern($frame, $width - 7, 0); + $frame = $this->putFinderPattern($frame, 0, $width - 7); + // Separator + $yOffset = $width - 7; + for ($y=0; $y < 7; ++$y) { + $frame[$y][7] = "\xc0"; + $frame[$y][$width - 8] = "\xc0"; + $frame[$yOffset][7] = "\xc0"; + ++$yOffset; + } + $setPattern = str_repeat("\xc0", 8); + $frame = $this->qrstrset($frame, 0, 7, $setPattern); + $frame = $this->qrstrset($frame, $width-8, 7, $setPattern); + $frame = $this->qrstrset($frame, 0, $width - 8, $setPattern); + // Format info + $setPattern = str_repeat("\x84", 9); + $frame = $this->qrstrset($frame, 0, 8, $setPattern); + $frame = $this->qrstrset($frame, $width - 8, 8, $setPattern, 8); + $yOffset = $width - 8; + for ($y=0; $y < 8; ++$y,++$yOffset) { + $frame[$y][8] = "\x84"; + $frame[$yOffset][8] = "\x84"; + } + // Timing pattern + $wo = $width - 15; + for ($i=1; $i < $wo; ++$i) { + $frame[6][7+$i] = chr(0x90 | ($i & 1)); + $frame[7+$i][6] = chr(0x90 | ($i & 1)); + } + // Alignment pattern + $frame = $this->putAlignmentPattern($version, $frame, $width); + // Version information + if ($version >= 7) { + $vinf = $this->getVersionPattern($version); + $v = $vinf; + for ($x=0; $x<6; ++$x) { + for ($y=0; $y<3; ++$y) { + $frame[($width - 11)+$y][$x] = chr(0x88 | ($v & 1)); + $v = $v >> 1; + } + } + $v = $vinf; + for ($y=0; $y<6; ++$y) { + for ($x=0; $x<3; ++$x) { + $frame[$y][$x+($width - 11)] = chr(0x88 | ($v & 1)); + $v = $v >> 1; + } + } + } + // and a little bit... + $frame[$width - 8][8] = "\x81"; + return $frame; + } + + /** + * Set new frame for the specified version. + * @param $version (int) version + * @return Array of unsigned char. + */ + protected function newFrame($version) { + if (($version < 1) OR ($version > QRSPEC_VERSION_MAX)) { + return NULL; + } + if (!isset($this->frames[$version])) { + $this->frames[$version] = $this->createFrame($version); + } + if (is_null($this->frames[$version])) { + return NULL; + } + return $this->frames[$version]; + } + + /** + * Return block number 0 + * @param $spec (array) + * @return int value + */ + protected function rsBlockNum($spec) { + return ($spec[0] + $spec[3]); + } + + /** + * Return block number 1 + * @param $spec (array) + * @return int value + */ + protected function rsBlockNum1($spec) { + return $spec[0]; + } + + /** + * Return data codes 1 + * @param $spec (array) + * @return int value + */ + protected function rsDataCodes1($spec) { + return $spec[1]; + } + + /** + * Return ecc codes 1 + * @param $spec (array) + * @return int value + */ + protected function rsEccCodes1($spec) { + return $spec[2]; + } + + /** + * Return block number 2 + * @param $spec (array) + * @return int value + */ + protected function rsBlockNum2($spec) { + return $spec[3]; + } + + /** + * Return data codes 2 + * @param $spec (array) + * @return int value + */ + protected function rsDataCodes2($spec) { + return $spec[4]; + } + + /** + * Return ecc codes 2 + * @param $spec (array) + * @return int value + */ + protected function rsEccCodes2($spec) { + return $spec[2]; + } + + /** + * Return data length + * @param $spec (array) + * @return int value + */ + protected function rsDataLength($spec) { + return ($spec[0] * $spec[1]) + ($spec[3] * $spec[4]); + } + + /** + * Return ecc length + * @param $spec (array) + * @return int value + */ + protected function rsEccLength($spec) { + return ($spec[0] + $spec[3]) * $spec[2]; + } + + // - - - - - - - - - - - - - - - - - - - - - - - - - + + // QRrs + + /** + * Initialize a Reed-Solomon codec and add it to existing rsitems + * @param $symsize (int) symbol size, bits + * @param $gfpoly (int) Field generator polynomial coefficients + * @param $fcr (int) first root of RS code generator polynomial, index form + * @param $prim (int) primitive element to generate polynomial roots + * @param $nroots (int) RS code generator polynomial degree (number of roots) + * @param $pad (int) padding bytes at front of shortened block + * @return array Array of RS values:
    • mm = Bits per symbol;
    • nn = Symbols per block;
    • alpha_to = log lookup table array;
    • index_of = Antilog lookup table array;
    • genpoly = Generator polynomial array;
    • nroots = Number of generator;
    • roots = number of parity symbols;
    • fcr = First consecutive root, index form;
    • prim = Primitive element, index form;
    • iprim = prim-th root of 1, index form;
    • pad = Padding bytes in shortened block;
    • gfpoly
    . + */ + protected function init_rs($symsize, $gfpoly, $fcr, $prim, $nroots, $pad) { + foreach ($this->rsitems as $rs) { + if (($rs['pad'] != $pad) OR ($rs['nroots'] != $nroots) OR ($rs['mm'] != $symsize) + OR ($rs['gfpoly'] != $gfpoly) OR ($rs['fcr'] != $fcr) OR ($rs['prim'] != $prim)) { + continue; + } + return $rs; + } + $rs = $this->init_rs_char($symsize, $gfpoly, $fcr, $prim, $nroots, $pad); + array_unshift($this->rsitems, $rs); + return $rs; + } + + // - - - - - - - - - - - - - - - - - - - - - - - - - + + // QRrsItem + + /** + * modnn + * @param $rs (array) RS values + * @param $x (int) X position + * @return int X osition + */ + protected function modnn($rs, $x) { + while ($x >= $rs['nn']) { + $x -= $rs['nn']; + $x = ($x >> $rs['mm']) + ($x & $rs['nn']); + } + return $x; + } + + /** + * Initialize a Reed-Solomon codec and returns an array of values. + * @param $symsize (int) symbol size, bits + * @param $gfpoly (int) Field generator polynomial coefficients + * @param $fcr (int) first root of RS code generator polynomial, index form + * @param $prim (int) primitive element to generate polynomial roots + * @param $nroots (int) RS code generator polynomial degree (number of roots) + * @param $pad (int) padding bytes at front of shortened block + * @return array Array of RS values:
    • mm = Bits per symbol;
    • nn = Symbols per block;
    • alpha_to = log lookup table array;
    • index_of = Antilog lookup table array;
    • genpoly = Generator polynomial array;
    • nroots = Number of generator;
    • roots = number of parity symbols;
    • fcr = First consecutive root, index form;
    • prim = Primitive element, index form;
    • iprim = prim-th root of 1, index form;
    • pad = Padding bytes in shortened block;
    • gfpoly
    . + */ + protected function init_rs_char($symsize, $gfpoly, $fcr, $prim, $nroots, $pad) { + // Based on Reed solomon encoder by Phil Karn, KA9Q (GNU-LGPLv2) + $rs = null; + // Check parameter ranges + if (($symsize < 0) OR ($symsize > 8)) { + return $rs; + } + if (($fcr < 0) OR ($fcr >= (1<<$symsize))) { + return $rs; + } + if (($prim <= 0) OR ($prim >= (1<<$symsize))) { + return $rs; + } + if (($nroots < 0) OR ($nroots >= (1<<$symsize))) { + return $rs; + } + if (($pad < 0) OR ($pad >= ((1<<$symsize) -1 - $nroots))) { + return $rs; + } + $rs = array(); + $rs['mm'] = $symsize; + $rs['nn'] = (1 << $symsize) - 1; + $rs['pad'] = $pad; + $rs['alpha_to'] = array_fill(0, ($rs['nn'] + 1), 0); + $rs['index_of'] = array_fill(0, ($rs['nn'] + 1), 0); + // PHP style macro replacement ;) + $NN =& $rs['nn']; + $A0 =& $NN; + // Generate Galois field lookup tables + $rs['index_of'][0] = $A0; // log(zero) = -inf + $rs['alpha_to'][$A0] = 0; // alpha**-inf = 0 + $sr = 1; + for ($i=0; $i<$rs['nn']; ++$i) { + $rs['index_of'][$sr] = $i; + $rs['alpha_to'][$i] = $sr; + $sr <<= 1; + if ($sr & (1 << $symsize)) { + $sr ^= $gfpoly; + } + $sr &= $rs['nn']; + } + if ($sr != 1) { + // field generator polynomial is not primitive! + return NULL; + } + // Form RS code generator polynomial from its roots + $rs['genpoly'] = array_fill(0, ($nroots + 1), 0); + $rs['fcr'] = $fcr; + $rs['prim'] = $prim; + $rs['nroots'] = $nroots; + $rs['gfpoly'] = $gfpoly; + // Find prim-th root of 1, used in decoding + for ($iprim=1; ($iprim % $prim) != 0; $iprim += $rs['nn']) { + ; // intentional empty-body loop! + } + $rs['iprim'] = (int)($iprim / $prim); + $rs['genpoly'][0] = 1; + for ($i = 0,$root=$fcr*$prim; $i < $nroots; $i++, $root += $prim) { + $rs['genpoly'][$i+1] = 1; + // Multiply rs->genpoly[] by @**(root + x) + for ($j = $i; $j > 0; --$j) { + if ($rs['genpoly'][$j] != 0) { + $rs['genpoly'][$j] = $rs['genpoly'][$j-1] ^ $rs['alpha_to'][$this->modnn($rs, $rs['index_of'][$rs['genpoly'][$j]] + $root)]; + } else { + $rs['genpoly'][$j] = $rs['genpoly'][$j-1]; + } + } + // rs->genpoly[0] can never be zero + $rs['genpoly'][0] = $rs['alpha_to'][$this->modnn($rs, $rs['index_of'][$rs['genpoly'][0]] + $root)]; + } + // convert rs->genpoly[] to index form for quicker encoding + for ($i = 0; $i <= $nroots; ++$i) { + $rs['genpoly'][$i] = $rs['index_of'][$rs['genpoly'][$i]]; + } + return $rs; + } + + /** + * Encode a Reed-Solomon codec and returns the parity array + * @param $rs (array) RS values + * @param $data (array) data + * @param $parity (array) parity + * @return parity array + */ + protected function encode_rs_char($rs, $data, $parity) { + $MM =& $rs['mm']; // bits per symbol + $NN =& $rs['nn']; // the total number of symbols in a RS block + $ALPHA_TO =& $rs['alpha_to']; // the address of an array of NN elements to convert Galois field elements in index (log) form to polynomial form + $INDEX_OF =& $rs['index_of']; // the address of an array of NN elements to convert Galois field elements in polynomial form to index (log) form + $GENPOLY =& $rs['genpoly']; // an array of NROOTS+1 elements containing the generator polynomial in index form + $NROOTS =& $rs['nroots']; // the number of roots in the RS code generator polynomial, which is the same as the number of parity symbols in a block + $FCR =& $rs['fcr']; // first consecutive root, index form + $PRIM =& $rs['prim']; // primitive element, index form + $IPRIM =& $rs['iprim']; // prim-th root of 1, index form + $PAD =& $rs['pad']; // the number of pad symbols in a block + $A0 =& $NN; + $parity = array_fill(0, $NROOTS, 0); + for ($i=0; $i < ($NN - $NROOTS - $PAD); $i++) { + $feedback = $INDEX_OF[$data[$i] ^ $parity[0]]; + if ($feedback != $A0) { + // feedback term is non-zero + // This line is unnecessary when GENPOLY[NROOTS] is unity, as it must + // always be for the polynomials constructed by init_rs() + $feedback = $this->modnn($rs, $NN - $GENPOLY[$NROOTS] + $feedback); + for ($j=1; $j < $NROOTS; ++$j) { + $parity[$j] ^= $ALPHA_TO[$this->modnn($rs, $feedback + $GENPOLY[($NROOTS - $j)])]; + } + } + // Shift + array_shift($parity); + if ($feedback != $A0) { + array_push($parity, $ALPHA_TO[$this->modnn($rs, $feedback + $GENPOLY[0])]); + } else { + array_push($parity, 0); + } + } + return $parity; + } + +} // end QRcode class + +//============================================================+ +// END OF FILE +//============================================================+ diff --git a/libraries/tcpdf/spotcolors.php b/libraries/tcpdf/spotcolors.php new file mode 100644 index 000000000..c7e167112 --- /dev/null +++ b/libraries/tcpdf/spotcolors.php @@ -0,0 +1,57 @@ +. +// +// See LICENSE.TXT file for more information. +// ------------------------------------------------------------------- +// +// Description : Array of Spot Colors for TCPDF library +// +//============================================================+ + +/** + * @file + * Arrays of Spot Colors for TCPDF library + * @author Nicola Asuni + * @package com.tecnick.tcpdf + * @since 5.9.012 (2010-11-11) +*/ + +/** + * Array of Spot colors (C,M,Y,K,name) + * Color keys must be in lowercase and without spaces. + * Add here your spot colors ... + */ +$spotcolor = array ( + // these are just examples, add your own spot colors ... + 'pantone116c' => array(0, 20, 100, 0, 'Pantone 116 C'), + 'pantone288c' => array(100, 60, 10, 5, 'Pantone 288 C'), + 'hks16k' => array(30, 100, 90, 10, 'HKS 16 K'), + // ... +); + +//============================================================+ +// END OF FILE +//============================================================+ diff --git a/libraries/tcpdf/tcpdf.crt b/libraries/tcpdf/tcpdf.crt new file mode 100644 index 000000000..f0491391c --- /dev/null +++ b/libraries/tcpdf/tcpdf.crt @@ -0,0 +1,40 @@ +Bag Attributes + localKeyID: 7B AB 1B 7A BE 4C 85 C0 1A A6 DC 59 3F 79 48 C3 93 38 68 9C +subject=/CN=TCPDF DEMO/O=TCPDF/OU=DEMO/emailAddress=you@example.com/C=IT +issuer=/CN=TCPDF DEMO/O=TCPDF/OU=DEMO/emailAddress=you@example.com/C=IT +-----BEGIN CERTIFICATE----- +MIIC1TCCAj6gAwIBAgIKkehOL/XGkB5cjjANBgkqhkiG9w0BAQUFADBhMRMwEQYD +VQQDEwpUQ1BERiBERU1PMQ4wDAYDVQQKEwVUQ1BERjENMAsGA1UECxMEREVNTzEe +MBwGCSqGSIb3DQEJARYPeW91QGV4YW1wbGUuY29tMQswCQYDVQQGEwJJVDAeFw0w +OTA4MjExMjU0NDhaFw0xNDA4MjExMjU0NDhaMGExEzARBgNVBAMTClRDUERGIERF +TU8xDjAMBgNVBAoTBVRDUERGMQ0wCwYDVQQLEwRERU1PMR4wHAYJKoZIhvcNAQkB +Fg95b3VAZXhhbXBsZS5jb20xCzAJBgNVBAYTAklUMIGfMA0GCSqGSIb3DQEBAQUA +A4GNADCBiQKBgQDAqIL0uGKmTR98Lxx2vEEE1OGKkMXFo0JViitALe7Onhxxqx0H +XMUDKF5mvEVu1rcvh7/oAnAfrCuEpL/up3u1mQCgBE7WXBnFFE/AE3jCksh9OkS0 +Z0Xj9woN5bzxRDsGoPiOu/4xzk5qSEXt8jf2Ep90QuNkqLIRT4swAzpDbwIDAQAB +o4GTMIGQMDcGA1UdEgQwMC6gEQYDVQQDDApUQ1BERiBERU1PoAwGA1UECgwFVENQ +REagCwYDVQQLDARERU1PMDcGA1UdEQQwMC6gEQYDVQQDDApUQ1BERiBERU1PoAwG +A1UECgwFVENQREagCwYDVQQLDARERU1PMA8GCSqGSIb3LwEBCgQCBQAwCwYDVR0P +BAQDAgSQMA0GCSqGSIb3DQEBBQUAA4GBAEhTQfqX3ZNdHmpTLDbIj22RHXii2roE +OavCbu9WsHoWpva0qSd+yIoD594VHvYAd29sfzDfiN+7W0aiZfDhq5jpaSQMVlN8 +RGYMupbHY/+a9Gz1wqxnR84mlTtIkZVRYAhsfPwy6M1BEjdMqfdh9h40JIdkdjtb +8faTCfXPePWQ +-----END CERTIFICATE----- +Bag Attributes + localKeyID: 7B AB 1B 7A BE 4C 85 C0 1A A6 DC 59 3F 79 48 C3 93 38 68 9C +Key Attributes: +-----BEGIN RSA PRIVATE KEY----- +MIICXQIBAAKBgQDAqIL0uGKmTR98Lxx2vEEE1OGKkMXFo0JViitALe7Onhxxqx0H +XMUDKF5mvEVu1rcvh7/oAnAfrCuEpL/up3u1mQCgBE7WXBnFFE/AE3jCksh9OkS0 +Z0Xj9woN5bzxRDsGoPiOu/4xzk5qSEXt8jf2Ep90QuNkqLIRT4swAzpDbwIDAQAB +AoGAXc+wNMmz/5Z+RlIKYia44klmqbplEx+0JULqXI4BQsrqvs67i+I4bJkznoL+ +rEIRYSuQ3sCRKFsFtckjTGpxadnxkB+uwGKc6pZChv99BFX6HFR4hgBlT/BBRAQA +hMDlM2JIRr4S4SMVXR7MHwGMUf9mUeanGLR3ZWtU3aXJrIECQQD7OaYUVYNEEnM9 +uXyjm22CuHyqyEf5gb13sK0uQty67547yJTMUQZd/sQc9KGwhzBbhrob2LO2jAhh +S+f+NSRnAkEAxFHm3fMI5RgXmswxlGm4QW07a/Ueo7ZJG6xjTkFXluJhd+XHswRD +dQIO3zG9nGjNUoeMrPhXhPvKqFc2F9RDuQJAQBEGin74N77gxqfr4ik79y8nE8J5 +oGZ2s/RJZdfFRKLg3mwbjjNHhWb4Ck5UgZkoOt8TzRApXG8/n9hktE5HFwJBALur +M5AueO1Pl5kB489lNJ9OxUQRYUXMxpxuscuoCQwSwmv0O2+0/qtG2WKhUQnI4aYo +L+FV0YwtivBb1jj3T/kCQQDIWOxq8eRowdaMzvJpRUHFgMcf1AVZExKyrugwYOWd +KNsDxC4KaQOsPt8iT/Ulo4g/MJC0HolCOhWibKmR9Ayl +-----END RSA PRIVATE KEY----- diff --git a/libraries/tcpdf/tcpdf.fdf b/libraries/tcpdf/tcpdf.fdf new file mode 100644 index 0000000000000000000000000000000000000000..a8f7c35d9af83d2579adafbe8d2745daa30dfd3f GIT binary patch literal 1286 zcmY#&b8*u()HC8$ef0SJWnL~r1p|frq%2+=8+|tyHw7aF1BD=cUkw*4BLf3V0}CTl zLn9LdQv+=SBXt7$u~+K|tH2P7JkC(H^K zHH;}T;0B3s3$uW{WhiGLgD{GdQH&ogYz(;#I6>;!gqb`;4CKUPionrgXlP_=Vqy^` z9#dp!Vqjqe<5SNeF}(Pl(l{SA6c||YW;3>rI`8XFl7tZ4eOBWanhe2u=!*hOF9;Oc({7T%S;uXu;3b(G@f14jwk=0^(E))p*895=hUWJdrX`fn81-! z^T+7LSw|srpOxPezsZ@Xw5OC=M}Pb_ne*%UimwwiWA&Z$^GXtvOHlG3IOjw1sD5%D zvJ@g0RTQPB@p2g`nDTNNz=499sj0E40!RWXW@x4WW+~($)LCGP8DddqWMP2NTT+ym znUh+?%VlGuADmg0s$i-gl%HRs04mgi?Cf~Cic1oUN+6ChG&Ho}^dt0szVM Bdv5>$ literal 0 HcmV?d00001 diff --git a/libraries/tcpdf/tcpdf.p12 b/libraries/tcpdf/tcpdf.p12 new file mode 100644 index 0000000000000000000000000000000000000000..611f0dfb179c096419dee8b8e2d30884ab96b499 GIT binary patch literal 1749 zcmXqLV!O!1$ZXKWHl2-AtIebBJ1-+UCgxOx45NVz8yD0B9!53;J{AtuJsOTV8P|_7F>x?7G%;HoDNH+bS@jERkhIb- z_vIel@%CrARG3Ts8y8Mp#2i0C?t|K=i~lQjGA*^%;*fmipgBj4F)hv^X^EN3f3AAt zCnhb&s-}j2)?Le`lW_b;Qygnwxm>7mh#!*193;#ue1*lW%3 z!{KmeZ~W^=d@bJlHz;kjzn#7H1>docpJW~`5YT$HdEt4{W0&|(<$4=2OY)wV(Fy-- zC@J40mmp!~chBO3lzCO^uk%r&i4&9lmR;w|ON=X`|reYcV2hBWA{vt=k`z4IMfj`gUz}7zV?&@k}Q&? z^*gW6`hMgzr_8*Vf3pPNIlj(6IC+}9p7vq(%+sZFZ5gHBe%K$Gk-GSk6qK~f6?#9ls&&fR{Oud%P7 zch&K|FQ1g1?F~t3)c?V?%+<#0=OQ(y<4oTAYfq-#a`}IKO(1XO`i3uQz8iv_Wfs*f zV949JXr=pw+Y>hMcL*t5_WAg3vRUBUlr*_vljL{(=>5Gavm|mi-}S zl@|4Uhf~1Q%=o#1CK8s?936_!UUWZuuYI7^>xvokjY;+rG{Ehnd!#mfD zbxKJ_y~(@Qs*P8gyBhr_aQvGszpr)q%+P}EaZ3(5izKWr3b@5*n(1$pdZWqHey8vC ziO;VY?);MeZgbAF?3X3cKC$r!r!X($3}IRsa_FXsO!clUk51a;Pt3W{*Wn(mb);S3 zYR#iSWJu_%xdSuYVbdQZ2 zmhHG0nHDrLEi-6hT7;4tnL)X+OEBZ(k%_!LpxnsP#ME$VVlFEy<1Ur9!Z{6}=9^T! zPmwU+zChjg^xFgf_3xIfJ=1e)Y38<7N?}`0AC}a2<&DuRoTqO7HFUyErLb*s4ryG* zb!}@{VlyBA`mm(+Z>?rN_Z43KYavcor`_>ec>b&x6}qo>6^jJkRLpSP z+b~I2^zPrZ4I&K&0dY(JsEE$I&6l=uOHq^1+IfF<_uMv?h!AR>uIPELB`S&|W${C< zj5PBn@|*i!8nL8}y2HADFw~$&Z^xe;u7y)-2?i_^GEuRkm)=vrnA*`_-e?rwG0F z%V+hSy63coHzxnp9lsQua6X&mZ+mcFvn7Jr0`bF1&^1e&RO0 zl${R>=80Th_. +// +// See LICENSE.TXT file for more information. +// ------------------------------------------------------------------- +// +// Description : This is a PHP class for generating PDF documents without +// requiring external extensions. +// +// NOTE: +// This class was originally derived in 2002 from the Public +// Domain FPDF class by Olivier Plathey (http://www.fpdf.org), +// but now is almost entirely rewritten and contains thousands of +// new lines of code and hundreds new features. // // Main features: -// - supports all ISO page formats; -// - supports UTF-8 Unicode and Right-To-Left languages; -// - supports document encryption; -// - includes methods to publish some xhtml code; -// - includes graphic and transformation methods; -// - includes bookmarks; -// - includes Javascript and forms support; -// - includes a method to print various barcode formats using an improved version of "Generic Barcode Render Class" by Karim Mribti (http://www.mribti.com/barcode/) (require GD library: http://www.boutell.com/gd/) -// - supports TrueTypeUnicode, TrueType, Type1 and encoding; -// - supports custom page formats, margins and units of measure; -// - includes methods for page header and footer management; -// - supports automatic page break; -// - supports automatic page numbering; -// - supports automatic line break and text justification; -// - supports JPEG, PNG anf GIF images; -// - supports colors; -// - supports links; -// - support page compression (require zlib extension: http://www.gzip.org/zlib/); -// - the source code is full documented in PhpDocumentor Style (http://www.phpdoc.org). +// * no external libraries are required for the basic functions; +// * all standard page formats, custom page formats, custom margins and units of measure; +// * UTF-8 Unicode and Right-To-Left languages; +// * TrueTypeUnicode, OpenTypeUnicode, TrueType, OpenType, Type1 and CID-0 fonts; +// * font subsetting; +// * methods to publish some XHTML + CSS code, Javascript and Forms; +// * images, graphic (geometric figures) and transformation methods; +// * supports JPEG, PNG and SVG images natively, all images supported by GD (GD, GD2, GD2PART, GIF, JPEG, PNG, BMP, XBM, XPM) and all images supported via ImagMagick (http://www.imagemagick.org/www/formats.html) +// * 1D and 2D barcodes: CODE 39, ANSI MH10.8M-1983, USD-3, 3 of 9, CODE 93, USS-93, Standard 2 of 5, Interleaved 2 of 5, CODE 128 A/B/C, 2 and 5 Digits UPC-Based Extention, EAN 8, EAN 13, UPC-A, UPC-E, MSI, POSTNET, PLANET, RMS4CC (Royal Mail 4-state Customer Code), CBC (Customer Bar Code), KIX (Klant index - Customer index), Intelligent Mail Barcode, Onecode, USPS-B-3200, CODABAR, CODE 11, PHARMACODE, PHARMACODE TWO-TRACKS, QR-Code, PDF417; +// * Grayscale, RGB, CMYK, Spot Colors and Transparencies; +// * automatic page header and footer management; +// * document encryption up to 256 bit and digital signature certifications; +// * transactions to UNDO commands; +// * PDF annotations, including links, text and file attachments; +// * text rendering modes (fill, stroke and clipping); +// * multiple columns mode; +// * no-write page regions; +// * bookmarks and table of content; +// * text hyphenation; +// * text stretching and spacing (tracking/kerning); +// * automatic page break, line break and text alignments including justification; +// * automatic page numbering and page groups; +// * move and delete pages; +// * page compression (requires php-zlib extension); +// * XOBject Templates; // // ----------------------------------------------------------- // THANKS TO: -// +// // Olivier Plathey (http://www.fpdf.org) for original FPDF. // Efthimios Mavrogeorgiadis (emavro@yahoo.com) for suggestions on RTL language support. // Klemen Vodopivec (http://www.fpdf.de/downloads/addons/37/) for Encryption algorithm. @@ -50,6819 +80,26057 @@ // Denis Van Nuffelen for Dynamic Form. // Jacek Czekaj for multibyte justification // Anthony Ferrara for the reintroduction of legacy image methods. +// Sourceforge user 1707880 (hucste) for line-trough mode. +// Larry Stanbery for page groups. +// Martin Hall-May for transparency. +// Aaron C. Spike for Polycurve method. +// Mohamad Ali Golkar, Saleh AlMatrafe, Charles Abbott for Arabic and Persian support. +// Moritz Wagner and Andreas Wurmser for graphic functions. +// Andrew Whitehead for core fonts support. +// Esteban Joël Marín for OpenType font conversion. +// Teus Hagen for several suggestions and fixes. +// Yukihiro Nakadaira for CID-0 CJK fonts fixes. +// Kosmas Papachristos for some CSS improvements. +// Marcel Partap for some fixes. +// Won Kyu Park for several suggestions, fixes and patches. +// Dominik Dzienia for QR-code support. +// Laurent Minguet for some suggestions. +// Christian Deligant for some suggestions and fixes. // Anyone that has reported a bug or sent a suggestion. //============================================================+ - - /** - * This is a PHP5 class for generating PDF files on-the-fly without requiring external extensions.
    - * TCPDF project (http://tcpdf.sourceforge.net) has been originally derived from the Public Domain FPDF class by Olivier Plathey (http://www.fpdf.org).
    + * @file + * This is a PHP class for generating PDF documents without requiring external extensions.
    + * TCPDF project (http://www.tcpdf.org) was originally derived in 2002 from the Public Domain FPDF class by Olivier Plathey (http://www.fpdf.org), but now is almost entirely rewritten.
    *

    TCPDF main features are:

    *
    - * Tools to encode your unicode fonts are on fonts/ttf2ufm directory.

    - * @name TCPDF + * Tools to encode your unicode fonts are on fonts/utils directory.

    * @package com.tecnick.tcpdf - * @abstract Class for generating PDF files on-the-fly without requiring external extensions. * @author Nicola Asuni - * @copyright 2004-2008 Nicola Asuni - Tecnick.com S.r.l (www.tecnick.com) Via Della Pace, 11 - 09044 - Quartucciu (CA) - ITALY - www.tecnick.com - info@tecnick.com - * @link http://tcpdf.sourceforge.net - * @license http://www.gnu.org/copyleft/lesser.html LGPL - * @version 2.2.002 + * @version 5.9.039 */ +// Main configuration file. Define the K_TCPDF_EXTERNAL_CONFIG constant to skip this file. +require_once(dirname(__FILE__).'/config/tcpdf_config.php'); + /** - * include configuration file - * (Disabled in phpMyAdmin) + * @class TCPDF + * PHP class for generating PDF documents without requiring external extensions. + * TCPDF project (http://www.tcpdf.org) has been originally derived in 2002 from the Public Domain FPDF class by Olivier Plathey (http://www.fpdf.org), but now is almost entirely rewritten.
    + * @package com.tecnick.tcpdf + * @brief PHP class for generating PDF documents without requiring external extensions. + * @version 5.9.039 + * @author Nicola Asuni - info@tecnick.com */ -//require_once(dirname(__FILE__).'/config/tcpdf_config.php'); - -if(!class_exists('TCPDF', false)) { - /** - * define default PDF document producer - */ - define('PDF_PRODUCER','TCPDF 2.2.002 (http://tcpdf.sf.net)'); - - /** - * This is a PHP5 class for generating PDF files on-the-fly without requiring external extensions.
    - * TCPDF project (http://tcpdf.sourceforge.net) has been originally derived from the Public Domain FPDF class by Olivier Plathey (http://www.fpdf.org).
    - * To add your own TTF fonts please read /fonts/README.TXT - * @name TCPDF - * @package com.tecnick.tcpdf - * @version 2.2.002 - * @author Nicola Asuni - * @link http://tcpdf.sourceforge.net - * @license http://www.gnu.org/copyleft/lesser.html LGPL - */ - class TCPDF { - - // Private or Protected properties - - /** - * @var current page number - * @access protected - */ - protected $page; - - /** - * @var current object number - * @access protected - */ - protected $n; - - /** - * @var array of object offsets - * @access protected - */ - protected $offsets; - - /** - * @var buffer holding in-memory PDF - * @access protected - */ - protected $buffer; - - /** - * @var array containing pages - * @access protected - */ - protected $pages; - - /** - * @var current document state - * @access protected - */ - protected $state; - - /** - * @var compression flag - * @access protected - */ - protected $compress; - - /** - * @var default page orientation (P = Portrait, L = Landscape) - * @access protected - */ - protected $DefOrientation; - - /** - * @var current page orientation (P = Portrait, L = Landscape) - * @access protected - */ - protected $CurOrientation; - - /** - * @var array indicating page orientation changes - * @access protected - */ - protected $OrientationChanges; - - /** - * @var scale factor (number of points in user unit) - * @access protected - */ - protected $k; - - /** - * @var width of page format in points - * @access protected - */ - protected $fwPt; - - /** - * @var height of page format in points - * @access protected - */ - protected $fhPt; - - /** - * @var width of page format in user unit - * @access protected - */ - protected $fw; - - /** - * @var height of page format in user unit - * @access protected - */ - protected $fh; - - /** - * @var current width of page in points - * @access protected - */ - protected $wPt; - - /** - * @var current height of page in points - * @access protected - */ - protected $hPt; - - /** - * @var current width of page in user unit - * @access protected - */ - protected $w; - - /** - * @var current height of page in user unit - * @access protected - */ - protected $h; - - /** - * @var left margin - * @access protected - */ - protected $lMargin; - - /** - * @var top margin - * @access protected - */ - protected $tMargin; - - /** - * @var right margin - * @access protected - */ - protected $rMargin; - - /** - * @var page break margin - * @access protected - */ - protected $bMargin; - - /** - * @var cell internal padding - * @access protected - */ - protected $cMargin; - - /** - * @var current horizontal position in user unit for cell positioning - * @access protected - */ - protected $x; - - /** - * @var current vertical position in user unit for cell positioning - * @access protected - */ - protected $y; - - /** - * @var height of last cell printed - * @access protected - */ - protected $lasth; - - /** - * @var line width in user unit - * @access protected - */ - protected $LineWidth; - - /** - * @var array of standard font names - * @access protected - */ - protected $CoreFonts; - - /** - * @var array of used fonts - * @access protected - */ - protected $fonts; - - /** - * @var array of font files - * @access protected - */ - protected $FontFiles; - - /** - * @var array of encoding differences - * @access protected - */ - protected $diffs; - - /** - * @var array of used images - * @access protected - */ - protected $images; - - /** - * @var array of links in pages - * @access protected - */ - protected $PageLinks; - - /** - * @var array of internal links - * @access protected - */ - protected $links; - - /** - * @var current font family - * @access protected - */ - protected $FontFamily; - - /** - * @var current font style - * @access protected - */ - protected $FontStyle; - - /** - * @var underlining flag - * @access protected - */ - protected $underline; - - /** - * @var current font info - * @access protected - */ - protected $CurrentFont; - - /** - * @var current font size in points - * @access protected - */ - protected $FontSizePt; - - /** - * @var current font size in user unit - * @access protected - */ - protected $FontSize; - - /** - * @var commands for drawing color - * @access protected - */ - protected $DrawColor; - - /** - * @var commands for filling color - * @access protected - */ - protected $FillColor; - - /** - * @var commands for text color - * @access protected - */ - protected $TextColor; - - /** - * @var indicates whether fill and text colors are different - * @access protected - */ - protected $ColorFlag; - - /** - * @var word spacing - * @access protected - */ - protected $ws; - - /** - * @var automatic page breaking - * @access protected - */ - protected $AutoPageBreak; - - /** - * @var threshold used to trigger page breaks - * @access protected - */ - protected $PageBreakTrigger; - - /** - * @var flag set when processing footer - * @access protected - */ - protected $InFooter; - - /** - * @var zoom display mode - * @access protected - */ - protected $ZoomMode; - - /** - * @var layout display mode - * @access protected - */ - protected $LayoutMode; - - /** - * @var title - * @access protected - */ - protected $title; - - /** - * @var subject - * @access protected - */ - protected $subject; - - /** - * @var author - * @access protected - */ - protected $author; - - /** - * @var keywords - * @access protected - */ - protected $keywords; - - /** - * @var creator - * @access protected - */ - protected $creator; - - /** - * @var alias for total number of pages - * @access protected - */ - protected $AliasNbPages; - - /** - * @var right-bottom corner X coordinate of inserted image - * @since 2002-07-31 - * @author Nicola Asuni - * @access protected - */ - protected $img_rb_x; - - /** - * @var right-bottom corner Y coordinate of inserted image - * @since 2002-07-31 - * @author Nicola Asuni - * @access protected - */ - protected $img_rb_y; - - /** - * @var image scale factor - * @since 2004-06-14 - * @author Nicola Asuni - * @access protected - */ - protected $imgscale = 1; - - /** - * @var boolean set to true when the input text is unicode (require unicode fonts) - * @since 2005-01-02 - * @author Nicola Asuni - * @access protected - */ - protected $isunicode = false; - - /** - * @var PDF version - * @since 1.5.3 - * @access protected - */ - protected $PDFVersion = "1.5"; - - - // ---------------------- - - /** - * @var Minimum distance between header and top page margin. - * @access private - */ - private $header_margin; - - /** - * @var Minimum distance between footer and bottom page margin. - * @access private - */ - private $footer_margin; - - /** - * @var original left margin value - * @access private - * @since 1.53.0.TC013 - */ - private $original_lMargin; - - /** - * @var original right margin value - * @access private - * @since 1.53.0.TC013 - */ - private $original_rMargin; - - /** - * @var Header font. - * @access private - */ - private $header_font; - - /** - * @var Footer font. - * @access private - */ - private $footer_font; - - /** - * @var Language templates. - * @access private - */ - private $l; - - /** - * @var Barcode to print on page footer (only if set). - * @access private - */ - private $barcode = false; - - /** - * @var If true prints header - * @access private - */ - private $print_header = true; - - /** - * @var If true prints footer. - * @access private - */ - private $print_footer = true; - - /** - * @var Header width (0 = full page width). - * @access private - */ - private $header_width = 0; - - /** - * @var Header image logo. - * @access private - */ - private $header_logo = ""; - - /** - * @var Header image logo width in mm. - * @access private - */ - private $header_logo_width = 30; - - /** - * @var String to print as title on document header. - * @access private - */ - private $header_title = ""; - - /** - * @var String to print on document header. - * @access private - */ - private $header_string = ""; - - /** - * @var Default number of columns for html table. - * @access private - */ - private $default_table_columns = 4; - - - // variables for html parser - - /** - * @var HTML PARSER: store current link. - * @access private - */ - private $HREF; - - /** - * @var HTML PARSER: store font list. - * @access private - */ - private $fontList; - - /** - * @var HTML PARSER: true when font attribute is set. - * @access private - */ - private $issetfont; - - /** - * @var HTML PARSER: true when color attribute is set. - * @access private - */ - private $issetcolor; - - /** - * @var HTML PARSER: true in case of ordered list (OL), false otherwise. - * @access private - */ - private $listordered = false; - - /** - * @var HTML PARSER: count list items. - * @access private - */ - private $listcount = 0; - - /** - * @var HTML PARSER: size of table border. - * @access private - */ - private $tableborder = 0; - - /** - * @var HTML PARSER: true at the beginning of table. - * @access private - */ - private $tdbegin = false; - - /** - * @var HTML PARSER: table width. - * @access private - */ - private $tdwidth = 0; - - /** - * @var HTML PARSER: table height. - * @access private - */ - private $tdheight = 0; - - /** - * @var HTML PARSER: table align. - * @access private - */ - private $tdalign = "L"; - - /** - * @var HTML PARSER: table background color. - * @access private - */ - private $tdbgcolor = false; - - /** - * @var Store temporary font size in points. - * @access private - */ - private $tempfontsize = 10; - - /** - * @var Bold font style status. - * @access private - */ - private $b; - - /** - * @var Underlined font style status. - * @access private - */ - private $u; - - /** - * @var Italic font style status. - * @access private - */ - private $i; - - /** - * @var spacer for LI tags. - * @access private - */ - private $lispacer = ""; - - /** - * @var default encoding - * @access private - * @since 1.53.0.TC010 - */ - private $encoding = "UTF-8"; - - /** - * @var PHP internal encoding - * @access private - * @since 1.53.0.TC016 - */ - private $internal_encoding; - - /** - * @var store previous fill color as RGB array - * @access private - * @since 1.53.0.TC017 - */ - private $prevFillColor = array(255,255,255); - - /** - * @var store previous text color as RGB array - * @access private - * @since 1.53.0.TC017 - */ - private $prevTextColor = array(0,0,0); - - /** - * @var store previous font family - * @access private - * @since 1.53.0.TC017 - */ - private $prevFontFamily; - - /** - * @var store previous font style - * @access private - * @since 1.53.0.TC017 - */ - private $prevFontStyle; - - /** - * @var indicates if the document language is Right-To-Left - * @access private - * @since 2.0.000 - */ - private $rtl = false; - - /** - * @var used to force RTL or LTR string inversion - * @access private - * @since 2.0.000 - */ - private $tmprtl = false; - - // --- Variables used for document encryption: - - /** - * Indicates whether document is protected - * @access private - * @since 2.0.000 (2008-01-02) - */ - private $encrypted; - - /** - * U entry in pdf document - * @access private - * @since 2.0.000 (2008-01-02) - */ - private $Uvalue; - - /** - * O entry in pdf document - * @access private - * @since 2.0.000 (2008-01-02) - */ - private $Ovalue; - - /** - * P entry in pdf document - * @access private - * @since 2.0.000 (2008-01-02) - */ - private $Pvalue; - - /** - * encryption object id - * @access private - * @since 2.0.000 (2008-01-02) - */ - private $enc_obj_id; - - /** - * last RC4 key encrypted (cached for optimisation) - * @access private - * @since 2.0.000 (2008-01-02) - */ - private $last_rc4_key; - - /** - * last RC4 computed key - * @access private - * @since 2.0.000 (2008-01-02) - */ - private $last_rc4_key_c; - - // --- bookmark --- - - /** - * Outlines for bookmark - * @access private - * @since 2.1.002 (2008-02-12) - */ - private $outlines = array(); - - /** - * Outline root for bookmark - * @access private - * @since 2.1.002 (2008-02-12) - */ - private $OutlineRoot; - - - // --- javascript and form --- - - /** - * javascript code - * @access private - * @since 2.1.002 (2008-02-12) - */ - private $javascript = ""; - - /** - * javascript counter - * @access private - * @since 2.1.002 (2008-02-12) - */ - private $n_js; - - //------------------------------------------------------------ - // Public methods - //------------------------------------------------------------ - - /** - * This is the class constructor. - * It allows to set up the page format, the orientation and - * the measure unit used in all the methods (except for the font sizes). - * @since 1.0 - * @param string $orientation page orientation. Possible values are (case insensitive):
    • P or Portrait (default)
    • L or Landscape
    - * @param string $unit User measure unit. Possible values are:
    • pt: point
    • mm: millimeter (default)
    • cm: centimeter
    • in: inch

    A point equals 1/72 of inch, that is to say about 0.35 mm (an inch being 2.54 cm). This is a very common unit in typography; font sizes are expressed in that unit. - * @param mixed $format The format used for pages. It can be either one of the following values (case insensitive) or a custom format in the form of a two-element array containing the width and the height (expressed in the unit given by unit).
    • 4A0
    • 2A0
    • A0
    • A1
    • A2
    • A3
    • A4 (default)
    • A5
    • A6
    • A7
    • A8
    • A9
    • A10
    • B0
    • B1
    • B2
    • B3
    • B4
    • B5
    • B6
    • B7
    • B8
    • B9
    • B10
    • C0
    • C1
    • C2
    • C3
    • C4
    • C5
    • C6
    • C7
    • C8
    • C9
    • C10
    • RA0
    • RA1
    • RA2
    • RA3
    • RA4
    • SRA0
    • SRA1
    • SRA2
    • SRA3
    • SRA4
    • LETTER
    • LEGAL
    • EXECUTIVE
    • FOLIO
    - * @param boolean $unicode TRUE means that the input text is unicode (default = true) - * @param String $encoding charset encoding; default is UTF-8 - */ - public function __construct($orientation='P', $unit='mm', $format='A4', $unicode=true, $encoding="UTF-8") { - - /* Set internal character encoding to ASCII */ - if (function_exists("mb_internal_encoding") AND mb_internal_encoding()) { - $this->internal_encoding = mb_internal_encoding(); - mb_internal_encoding("ASCII"); - } - - // set language direction - $this->rtl = $this->l['a_meta_dir']=='rtl' ? true : false; - $this->tmprtl = false; - - //Some checks - $this->_dochecks(); - - //Initialization of properties - $this->isunicode=$unicode; - $this->page=0; - $this->n=2; - $this->buffer=''; - $this->pages=array(); - $this->OrientationChanges=array(); - $this->state=0; - $this->fonts=array(); - $this->FontFiles=array(); - $this->diffs=array(); - $this->images=array(); - $this->links=array(); - $this->InFooter=false; - $this->lasth=0; - $this->FontFamily=''; - $this->FontStyle=''; - $this->FontSizePt=12; - $this->underline=false; - $this->DrawColor='0 G'; - $this->FillColor='0 g'; - $this->TextColor='0 g'; - $this->ColorFlag=false; - $this->ws=0; - // encryption values - $this->encrypted=false; - $this->last_rc4_key=''; - $this->padding="\x28\xBF\x4E\x5E\x4E\x75\x8A\x41\x64\x00\x4E\x56\xFF\xFA\x01\x08\x2E\x2E\x00\xB6\xD0\x68\x3E\x80\x2F\x0C\xA9\xFE\x64\x53\x69\x7A"; - - //Standard Unicode fonts - $this->CoreFonts=array( - 'courier'=>'Courier', - 'courierB'=>'Courier-Bold', - 'courierI'=>'Courier-Oblique', - 'courierBI'=>'Courier-BoldOblique', - 'helvetica'=>'Helvetica', - 'helveticaB'=>'Helvetica-Bold', - 'helveticaI'=>'Helvetica-Oblique', - 'helveticaBI'=>'Helvetica-BoldOblique', - 'times'=>'Times-Roman', - 'timesB'=>'Times-Bold', - 'timesI'=>'Times-Italic', - 'timesBI'=>'Times-BoldItalic', - 'symbol'=>'Symbol', - 'zapfdingbats'=>'ZapfDingbats' - ); - - //Scale factor - switch (strtolower($unit)){ - case 'pt': {$this->k=1; break;} - case 'mm': {$this->k=72/25.4; break;} - case 'cm': {$this->k=72/2.54; break;} - case 'in': {$this->k=72; break;} - default : {$this->Error('Incorrect unit: '.$unit); break;} - } - - //Page format - if(is_string($format)) { - // Page formats (45 standard ISO paper formats and 4 american common formats). - // Paper cordinates are calculated in this way: (inches * 72) where (1 inch = 2.54 cm) - switch (strtoupper($format)){ - case '4A0': {$format = array(4767.87,6740.79); break;} - case '2A0': {$format = array(3370.39,4767.87); break;} - case 'A0': {$format = array(2383.94,3370.39); break;} - case 'A1': {$format = array(1683.78,2383.94); break;} - case 'A2': {$format = array(1190.55,1683.78); break;} - case 'A3': {$format = array(841.89,1190.55); break;} - case 'A4': default: {$format = array(595.28,841.89); break;} - case 'A5': {$format = array(419.53,595.28); break;} - case 'A6': {$format = array(297.64,419.53); break;} - case 'A7': {$format = array(209.76,297.64); break;} - case 'A8': {$format = array(147.40,209.76); break;} - case 'A9': {$format = array(104.88,147.40); break;} - case 'A10': {$format = array(73.70,104.88); break;} - case 'B0': {$format = array(2834.65,4008.19); break;} - case 'B1': {$format = array(2004.09,2834.65); break;} - case 'B2': {$format = array(1417.32,2004.09); break;} - case 'B3': {$format = array(1000.63,1417.32); break;} - case 'B4': {$format = array(708.66,1000.63); break;} - case 'B5': {$format = array(498.90,708.66); break;} - case 'B6': {$format = array(354.33,498.90); break;} - case 'B7': {$format = array(249.45,354.33); break;} - case 'B8': {$format = array(175.75,249.45); break;} - case 'B9': {$format = array(124.72,175.75); break;} - case 'B10': {$format = array(87.87,124.72); break;} - case 'C0': {$format = array(2599.37,3676.54); break;} - case 'C1': {$format = array(1836.85,2599.37); break;} - case 'C2': {$format = array(1298.27,1836.85); break;} - case 'C3': {$format = array(918.43,1298.27); break;} - case 'C4': {$format = array(649.13,918.43); break;} - case 'C5': {$format = array(459.21,649.13); break;} - case 'C6': {$format = array(323.15,459.21); break;} - case 'C7': {$format = array(229.61,323.15); break;} - case 'C8': {$format = array(161.57,229.61); break;} - case 'C9': {$format = array(113.39,161.57); break;} - case 'C10': {$format = array(79.37,113.39); break;} - case 'RA0': {$format = array(2437.80,3458.27); break;} - case 'RA1': {$format = array(1729.13,2437.80); break;} - case 'RA2': {$format = array(1218.90,1729.13); break;} - case 'RA3': {$format = array(864.57,1218.90); break;} - case 'RA4': {$format = array(609.45,864.57); break;} - case 'SRA0': {$format = array(2551.18,3628.35); break;} - case 'SRA1': {$format = array(1814.17,2551.18); break;} - case 'SRA2': {$format = array(1275.59,1814.17); break;} - case 'SRA3': {$format = array(907.09,1275.59); break;} - case 'SRA4': {$format = array(637.80,907.09); break;} - case 'LETTER': {$format = array(612.00,792.00); break;} - case 'LEGAL': {$format = array(612.00,1008.00); break;} - case 'EXECUTIVE': {$format = array(521.86,756.00); break;} - case 'FOLIO': {$format = array(612.00,936.00); break;} - // default: {$this->Error('Unknown page format: '.$format); break;} - } - $this->fwPt=$format[0]; - $this->fhPt=$format[1]; - } - else { - $this->fwPt=$format[0]*$this->k; - $this->fhPt=$format[1]*$this->k; - } - - $this->fw=$this->fwPt/$this->k; - $this->fh=$this->fhPt/$this->k; - - //Page orientation - $orientation=strtolower($orientation); - if($orientation=='p' or $orientation=='portrait') { - $this->DefOrientation='P'; - $this->wPt=$this->fwPt; - $this->hPt=$this->fhPt; - } - elseif($orientation=='l' or $orientation=='landscape') { - $this->DefOrientation='L'; - $this->wPt=$this->fhPt; - $this->hPt=$this->fwPt; - } - else { - $this->Error('Incorrect orientation: '.$orientation); - } - - $this->CurOrientation=$this->DefOrientation; - $this->w=$this->wPt/$this->k; - $this->h=$this->hPt/$this->k; - //Page margins (1 cm) - $margin=28.35/$this->k; - $this->SetMargins($margin,$margin); - //Interior cell margin (1 mm) - $this->cMargin=$margin/10; - //Line width (0.2 mm) - $this->LineWidth=.567/$this->k; - //Automatic page break - $this->SetAutoPageBreak(true,2*$margin); - //Full width display mode - $this->SetDisplayMode('fullwidth'); - //Compression - $this->SetCompression(true); - //Set default PDF version number - $this->PDFVersion = "1.5"; - - $this->encoding = $encoding; - $this->b = 0; - $this->i = 0; - $this->u = 0; - $this->HREF = ''; - $this->fontlist = array("arial", "times", "courier", "helvetica", "symbol"); - $this->issetfont = false; - $this->issetcolor = false; - $this->tableborder = 0; - $this->tdbegin = false; - $this->tdwidth= 0; - $this->tdheight = 0; - if($this->rtl) { - $this->tdalign = "R"; - } else { - $this->tdalign = "L"; - } - $this->tdbgcolor = false; - - $this->SetFillColor(200, 200, 200, true); - $this->SetTextColor(0, 0, 0, true); - } - - /** - * Default destructor. - * @since 1.53.0.TC016 - */ - public function __destruct() { - // restore internal encoding - if (isset($this->internal_encoding) AND !empty($this->internal_encoding)) { - mb_internal_encoding($this->internal_encoding); - } - } - - /** - * Enable or disable Right-To-Left language mode - * @param Boolean $enable if true enable Right-To-Left language mode. - * @since 2.0.000 (2008-01-03) - */ - public function setRTL($enable) { - $this->rtl = $enable ? true : false; - $this->tmprtl = false; - } - - /** - * Force temporary RTL language direction - * @param mixed $mode can be false, 'L' for LTR or 'R' for RTL - * @since 2.1.000 (2008-01-09) - */ - public function setTempRTL($mode) { - switch ($mode) { - case false: - case 'L': - case 'R': { - $this->tmprtl = $mode; - } - } - } - - /** - * Set the last cell height. - * @param float $h cell height. - * @author Nicola Asuni - * @since 1.53.0.TC034 - */ - public function setLastH($h) { - $this->lasth=$h; - } - - /** - * Set the image scale. - * @param float $scale image scale. - * @author Nicola Asuni - * @since 1.5.2 - */ - public function setImageScale($scale) { - $this->imgscale=$scale; - } - - /** - * Returns the image scale. - * @return float image scale. - * @author Nicola Asuni - * @since 1.5.2 - */ - public function getImageScale() { - return $this->imgscale; - } - - /** - * Returns the page width in units. - * @return int page width. - * @author Nicola Asuni - * @since 1.5.2 - */ - public function getPageWidth() { - return $this->w; - } - - /** - * Returns the page height in units. - * @return int page height. - * @author Nicola Asuni - * @since 1.5.2 - */ - public function getPageHeight() { - return $this->h; - } - - /** - * Returns the page break margin. - * @return int page break margin. - * @author Nicola Asuni - * @since 1.5.2 - */ - public function getBreakMargin() { - return $this->bMargin; - } - - /** - * Returns the scale factor (number of points in user unit). - * @return int scale factor. - * @author Nicola Asuni - * @since 1.5.2 - */ - public function getScaleFactor() { - return $this->k; - } - - /** - * Defines the left, top and right margins. By default, they equal 1 cm. Call this method to change them. - * @param float $left Left margin. - * @param float $top Top margin. - * @param float $right Right margin. Default value is the left one. - * @since 1.0 - * @see SetLeftMargin(), SetTopMargin(), SetRightMargin(), SetAutoPageBreak() - */ - public function SetMargins($left, $top, $right=-1) { - //Set left, top and right margins - $this->lMargin=$left; - $this->tMargin=$top; - if($right==-1) { - $right=$left; - } - $this->rMargin=$right; - } - - /** - * Defines the left margin. The method can be called before creating the first page. If the current abscissa gets out of page, it is brought back to the margin. - * @param float $margin The margin. - * @since 1.4 - * @see SetTopMargin(), SetRightMargin(), SetAutoPageBreak(), SetMargins() - */ - public function SetLeftMargin($margin) { - //Set left margin - $this->lMargin=$margin; - if(($this->page > 0) AND ($this->x < $margin)) { - $this->x = $margin; - } - } - - /** - * Defines the top margin. The method can be called before creating the first page. - * @param float $margin The margin. - * @since 1.5 - * @see SetLeftMargin(), SetRightMargin(), SetAutoPageBreak(), SetMargins() - */ - public function SetTopMargin($margin) { - //Set top margin - $this->tMargin=$margin; - if(($this->page > 0) AND ($this->y < $margin)) { - $this->y = $margin; - } - } - - /** - * Defines the right margin. The method can be called before creating the first page. - * @param float $margin The margin. - * @since 1.5 - * @see SetLeftMargin(), SetTopMargin(), SetAutoPageBreak(), SetMargins() - */ - public function SetRightMargin($margin) { - $this->rMargin=$margin; - if(($this->page > 0) AND ($this->x > ($this->w - $margin))) { - $this->x = $this->w - $margin; - } - } - - /** - * Set the internal Cell padding. - * @param float $pad internal padding. - * @since 2.1.000 (2008-01-09) - * @see Cell(), SetLeftMargin(), SetTopMargin(), SetAutoPageBreak(), SetMargins() - */ - public function SetCellPadding($pad) { - $this->cMargin=$pad; - } - - /** - * Enables or disables the automatic page breaking mode. When enabling, the second parameter is the distance from the bottom of the page that defines the triggering limit. By default, the mode is on and the margin is 2 cm. - * @param boolean $auto Boolean indicating if mode should be on or off. - * @param float $margin Distance from the bottom of the page. - * @since 1.0 - * @see Cell(), MultiCell(), AcceptPageBreak() - */ - public function SetAutoPageBreak($auto, $margin=0) { - //Set auto page break mode and triggering margin - $this->AutoPageBreak = $auto; - $this->bMargin = $margin; - $this->PageBreakTrigger = $this->h - $margin; - } - - /** - * Defines the way the document is to be displayed by the viewer. The zoom level can be set: pages can be displayed entirely on screen, occupy the full width of the window, use real size, be scaled by a specific zooming factor or use viewer default (configured in the Preferences menu of Acrobat). The page layout can be specified too: single at once, continuous display, two columns or viewer default. By default, documents use the full width mode with continuous display. - * @param mixed $zoom The zoom to use. It can be one of the following string values or a number indicating the zooming factor to use.
    • fullpage: displays the entire page on screen
    • fullwidth: uses maximum width of window
    • real: uses real size (equivalent to 100% zoom)
    • default: uses viewer default mode
    - * @param string $layout The page layout. Possible values are:
    • single: displays one page at once
    • continuous: displays pages continuously (default)
    • two: displays two pages on two columns
    • default: uses viewer default mode
    - * @since 1.2 - */ - public function SetDisplayMode($zoom, $layout='continuous') { - //Set display mode in viewer - if($zoom=='fullpage' or $zoom=='fullwidth' or $zoom=='real' or $zoom=='default' or !is_string($zoom)) { - $this->ZoomMode=$zoom; - } - else { - $this->Error('Incorrect zoom display mode: '.$zoom); - } - if($layout=='single' or $layout=='continuous' or $layout=='two' or $layout=='default') { - $this->LayoutMode=$layout; - } - else { - $this->Error('Incorrect layout display mode: '.$layout); - } - } - - /** - * Activates or deactivates page compression. When activated, the internal representation of each page is compressed, which leads to a compression ratio of about 2 for the resulting document. Compression is on by default. - * Note: the Zlib extension is required for this feature. If not present, compression will be turned off. - * @param boolean $compress Boolean indicating if compression must be enabled. - * @since 1.4 - */ - public function SetCompression($compress) { - //Set page compression - if(function_exists('gzcompress')) { - $this->compress=$compress; - } - else { - $this->compress=false; - } - } - - /** - * Defines the title of the document. - * @param string $title The title. - * @since 1.2 - * @see SetAuthor(), SetCreator(), SetKeywords(), SetSubject() - */ - public function SetTitle($title) { - //Title of document - $this->title=$title; - } - - /** - * Defines the subject of the document. - * @param string $subject The subject. - * @since 1.2 - * @see SetAuthor(), SetCreator(), SetKeywords(), SetTitle() - */ - public function SetSubject($subject) { - //Subject of document - $this->subject=$subject; - } - - /** - * Defines the author of the document. - * @param string $author The name of the author. - * @since 1.2 - * @see SetCreator(), SetKeywords(), SetSubject(), SetTitle() - */ - public function SetAuthor($author) { - //Author of document - $this->author=$author; - } - - /** - * Associates keywords with the document, generally in the form 'keyword1 keyword2 ...'. - * @param string $keywords The list of keywords. - * @since 1.2 - * @see SetAuthor(), SetCreator(), SetSubject(), SetTitle() - */ - public function SetKeywords($keywords) { - //Keywords of document - $this->keywords=$keywords; - } - - /** - * Defines the creator of the document. This is typically the name of the application that generates the PDF. - * @param string $creator The name of the creator. - * @since 1.2 - * @see SetAuthor(), SetKeywords(), SetSubject(), SetTitle() - */ - public function SetCreator($creator) { - //Creator of document - $this->creator=$creator; - } - - /** - * Defines an alias for the total number of pages. It will be substituted as the document is closed.
    - * Example:
    - *
    -		* class PDF extends TCPDF {
    -		* 	public function Footer() {
    -		* 		//Go to 1.5 cm from bottom
    -		* 		$this->SetY(-15);
    -		* 		//Select Arial italic 8
    -		* 		$this->SetFont('Arial','I',8);
    -		* 		//Print current and total page numbers
    -		* 		$this->Cell(0,10,'Page '.$this->PageNo().'/{nb}',0,0,'C');
    -		* 	}
    -		* }
    -		* $pdf=new PDF();
    -		* $pdf->AliasNbPages();
    -		* 
    - * @param string $alias The alias. Default value: {nb}. - * @since 1.4 - * @see PageNo(), Footer() - */ - public function AliasNbPages($alias='{nb}') { - //Define an alias for total number of pages - $this->AliasNbPages = $this->_escapetext($alias); - } - - /** - * This method is automatically called in case of fatal error; it simply outputs the message and halts the execution. An inherited class may override it to customize the error handling but should always halt the script, or the resulting document would probably be invalid. - * 2004-06-11 :: Nicola Asuni : changed bold tag with strong - * @param string $msg The error message - * @since 1.0 - */ - public function Error($msg) { - //Fatal error - die('TCPDF error: '.$msg); - } - - /** - * This method begins the generation of the PDF document. It is not necessary to call it explicitly because AddPage() does it automatically. - * Note: no page is created by this method - * @since 1.0 - * @see AddPage(), Close() - */ - public function Open() { - //Begin document - $this->state=1; - } - - /** - * Terminates the PDF document. It is not necessary to call this method explicitly because Output() does it automatically. If the document contains no page, AddPage() is called to prevent from getting an invalid document. - * @since 1.0 - * @see Open(), Output() - */ - public function Close() { - //Terminate document - if($this->state==3) { - return; - } - if($this->page==0) { - $this->AddPage(); - } - //Page footer - $this->InFooter=true; - $this->Footer(); - $this->InFooter=false; - //Close page - $this->_endpage(); - //Close document - $this->_enddoc(); - } - - /** - * Reset pointer to the last document page. - * @since 2.0.000 (2008-01-04) - * @see setPage(), getPage(), getNumPages() - */ - public function lastPage() { - $this->page = count($this->pages); - } - - /** - * Move pointer to the apecified document page. - * @param int $pnum page number - * @since 2.1.000 (2008-01-07) - * @see getPage(), lastpage(), getNumPages() - */ - public function setPage($pnum) { - if(($pnum > 0) AND ($pnum <= count($this->pages))) { - $this->page = $pnum; - } - } - - /** - * Get current document page number. - * @return int page number - * @since 2.1.000 (2008-01-07) - * @see setPage(), lastpage(), getNumPages() - */ - public function getPage() { - return $this->page; - } - - - /** - * Get the total number of insered pages. - * @return int number of pages - * @since 2.1.000 (2008-01-07) - * @see setPage(), getPage(), lastpage() - */ - public function getNumPages() { - return count($this->pages); - } - - /** - * Adds a new page to the document. If a page is already present, the Footer() method is called first to output the footer. Then the page is added, the current position set to the top-left corner according to the left and top margins, and Header() is called to display the header. - * The font which was set before calling is automatically restored. There is no need to call SetFont() again if you want to continue with the same font. The same is true for colors and line width. - * The origin of the coordinate system is at the top-left corner and increasing ordinates go downwards. - * @param string $orientation Page orientation. Possible values are (case insensitive):
    • P or Portrait
    • L or Landscape
    The default value is the one passed to the constructor. - * @since 1.0 - * @see TCPDF(), Header(), Footer(), SetMargins() - */ - public function AddPage($orientation='') { - if (count($this->pages) > ($this->page + 1)) { - // this page has been already added - $this->page++; - return; - } - //Start a new page - if($this->state==0) { - $this->Open(); - } - $family=$this->FontFamily; - $style=$this->FontStyle.($this->underline ? 'U' : ''); - $size=$this->FontSizePt; - $lw=$this->LineWidth; - $dc=$this->DrawColor; - $fc=$this->FillColor; - $tc=$this->TextColor; - $cf=$this->ColorFlag; - if($this->page>0) { - //Page footer - $this->InFooter=true; - $this->Footer(); - $this->InFooter=false; - //Close page - $this->_endpage(); - } - //Start new page - $this->_beginpage($orientation); - //Set line cap style to square - $this->_out('2 J'); - //Set line width - $this->LineWidth=$lw; - $this->_out(sprintf('%.2f w',$lw*$this->k)); - //Set font - if($family) { - $this->SetFont($family,$style,$size); - } - //Set colors - $this->DrawColor=$dc; - if($dc!='0 G') { - $this->_out($dc); - } - $this->FillColor=$fc; - if($fc!='0 g') { - $this->_out($fc); - } - $this->TextColor=$tc; - $this->ColorFlag=$cf; - //Page header - $this->Header(); - //Restore line width - if($this->LineWidth!=$lw) { - $this->LineWidth=$lw; - $this->_out(sprintf('%.2f w',$lw*$this->k)); - } - //Restore font - if($family) { - $this->SetFont($family,$style,$size); - } - //Restore colors - if($this->DrawColor!=$dc) { - $this->DrawColor=$dc; - $this->_out($dc); - } - if($this->FillColor!=$fc) { - $this->FillColor=$fc; - $this->_out($fc); - } - $this->TextColor=$tc; - $this->ColorFlag=$cf; - } - - /** - * Set header data. - * @param string $ln header image logo - * @param string $lw header image logo width in mm - * @param string $ht string to print as title on document header - * @param string $hs string to print on document header - */ - public function setHeaderData($ln="", $lw=0, $ht="", $hs="") { - $this->header_logo = $ln; - $this->header_logo_width = $lw; - $this->header_title = $ht; - $this->header_string = $hs; - } - - /** - * Set header margin. - * (minimum distance between header and top page margin) - * @param int $hm distance in millimeters - */ - public function setHeaderMargin($hm=10) { - $this->header_margin = $hm; - } - - /** - * Set footer margin. - * (minimum distance between footer and bottom page margin) - * @param int $fm distance in millimeters - */ - public function setFooterMargin($fm=10) { - $this->footer_margin = $fm; - } - - /** - * Set a flag to print page header. - * @param boolean $val set to true to print the page header (default), false otherwise. - */ - public function setPrintHeader($val=true) { - $this->print_header = $val; - } - - /** - * Set a flag to print page footer. - * @param boolean $value set to true to print the page footer (default), false otherwise. - */ - public function setPrintFooter($val=true) { - $this->print_footer = $val; - } - - /** - * This method is used to render the page header. - * It is automatically called by AddPage() and could be overwritten in your own inherited class. - */ - public function Header() { - if ($this->print_header) { - - if (!isset($this->original_lMargin)) { - $this->original_lMargin = $this->lMargin; - } - if (!isset($this->original_rMargin)) { - $this->original_rMargin = $this->rMargin; - } - - //set current position - if ($this->rtl) { - $this->SetXY($this->original_rMargin, $this->header_margin); - } else { - $this->SetXY($this->original_lMargin, $this->header_margin); - } - - if (($this->header_logo) AND ($this->header_logo != K_BLANK_IMAGE)) { - $this->Image(K_PATH_IMAGES.$this->header_logo, $this->GetX(), $this->header_margin, $this->header_logo_width); - } else { - $this->img_rb_x = $this->GetX(); - $this->img_rb_y = $this->GetY(); - } - - $cell_height = round((K_CELL_HEIGHT_RATIO * $this->header_font[2]) / $this->k, 2); - // set starting margin for text data cell - if ($this->rtl) { - $header_x = $this->original_rMargin + ($this->header_logo_width * 1.1); - } else { - $header_x = $this->original_lMargin + ($this->header_logo_width * 1.1); - } - - // header title - $this->SetFont($this->header_font[0], 'B', $this->header_font[2] + 1); - $this->SetX($header_x); - $this->Cell($this->header_width, $cell_height, $this->header_title, 0, 1, ''); - - // header string - $this->SetFont($this->header_font[0], $this->header_font[1], $this->header_font[2]); - $this->SetX($header_x); - $this->MultiCell($this->header_width, $cell_height, $this->header_string, 0, '', 0); - - // print an ending header line - if (empty($this->header_width)) { - //set style for cell border - $prevlinewidth = $this->GetLineWidth(); - $line_width = 0.3; - $this->SetLineWidth($line_width); - $this->SetDrawColor(0, 0, 0); - $this->SetY(1 + max($this->img_rb_y, $this->GetY())); - if ($this->rtl) { - $this->SetX($this->original_rMargin); - } else { - $this->SetX($this->original_lMargin); - } - $this->Cell(0, 0, '', 'T', 0, 'C'); - $this->SetLineWidth($prevlinewidth); - } - - //restore position - if ($this->rtl) { - $this->SetXY($this->original_rMargin, $this->tMargin); - } else { - $this->SetXY($this->original_lMargin, $this->tMargin); - } - } - } - - /** - * This method is used to render the page footer. - * It is automatically called by AddPage() and could be overwritten in your own inherited class. - */ - public function Footer() { - if ($this->print_footer) { - - if (!isset($this->original_lMargin)) { - $this->original_lMargin = $this->lMargin; - } - if (!isset($this->original_rMargin)) { - $this->original_rMargin = $this->rMargin; - } - - //set font - $this->SetFont($this->footer_font[0], $this->footer_font[1] , $this->footer_font[2]); - //set style for cell border - $prevlinewidth = $this->GetLineWidth(); - $line_width = 0.3; - $this->SetLineWidth($line_width); - $this->SetDrawColor(0, 0, 0); - - $footer_height = round((K_CELL_HEIGHT_RATIO * $this->footer_font[2]) / $this->k, 2); //footer height - //get footer y position - $footer_y = $this->h - $this->footer_margin - $footer_height; - //set current position - if ($this->rtl) { - $this->SetXY($this->original_rMargin, $footer_y); - } else { - $this->SetXY($this->original_lMargin, $footer_y); - } - - //print document barcode - if ($this->barcode) { - $this->Ln(); - $barcode_width = round(($this->w - $this->original_lMargin - $this->original_rMargin)/3); //max width - $this->writeBarcode($this->GetX(), $footer_y + $line_width, $barcode_width, $footer_height - $line_width, "C128B", false, false, 2, $this->barcode); - } - - $pagenumtxt = $this->l['w_page']." ".$this->PageNo().' / {nb}'; - - $this->SetY($footer_y); - - //Print page number - if ($this->rtl) { - $this->SetX($this->original_rMargin); - $this->Cell(0, $footer_height, $pagenumtxt, 'T', 0, 'L'); - } else { - $this->SetX($this->original_lMargin); - $this->Cell(0, $footer_height, $pagenumtxt, 'T', 0, 'R'); - } - // restore line width - $this->SetLineWidth($prevlinewidth); - } - } - - /** - * Returns the current page number. - * @return int page number - * @since 1.0 - * @see AliasNbPages() - */ - public function PageNo() { - //Get current page number - return $this->page; - } - - /** - * Defines the color used for all drawing operations (lines, rectangles and cell borders). It can be expressed in RGB components or gray scale. The method can be called before the first page is created and the value is retained from page to page. - * @param int $r If g et b are given, red component; if not, indicates the gray level. Value between 0 and 255 - * @param int $g Green component (between 0 and 255) - * @param int $b Blue component (between 0 and 255) - * @since 1.3 - * @see SetFillColor(), SetTextColor(), Line(), Rect(), Cell(), MultiCell() - */ - public function SetDrawColor($r, $g=-1, $b=-1) { - //Set color for all stroking operations - if(($r==0 and $g==0 and $b==0) or $g==-1) { - $this->DrawColor=sprintf('%.3f G',$r/255); - } - else { - $this->DrawColor=sprintf('%.3f %.3f %.3f RG',$r/255,$g/255,$b/255); - } - if($this->page>0) { - $this->_out($this->DrawColor); - } - } - - /** - * Defines the color used for all filling operations (filled rectangles and cell backgrounds). It can be expressed in RGB components or gray scale. The method can be called before the first page is created and the value is retained from page to page. - * @param int $r If g et b are given, red component; if not, indicates the gray level. Value between 0 and 255 - * @param int $g Green component (between 0 and 255) - * @param int $b Blue component (between 0 and 255) - * @param boolean $storeprev if true stores the RGB array on $prevFillColor variable. - * @since 1.3 - * @see SetDrawColor(), SetTextColor(), Rect(), Cell(), MultiCell() - */ - public function SetFillColor($r, $g=-1, $b=-1, $storeprev=false) { - //Set color for all filling operations - if(($r==0 and $g==0 and $b==0) or $g==-1) { - $this->FillColor=sprintf('%.3f g',$r/255); - } - else { - $this->FillColor=sprintf('%.3f %.3f %.3f rg',$r/255,$g/255,$b/255); - } - $this->ColorFlag=($this->FillColor!=$this->TextColor); - if($this->page>0) { - $this->_out($this->FillColor); - } - if ($storeprev) { - // store color as previous value - $this->prevFillColor = array($r, $g, $b); - } - } - - /** - * Defines the color used for text. It can be expressed in RGB components or gray scale. The method can be called before the first page is created and the value is retained from page to page. - * @param int $r If g et b are given, red component; if not, indicates the gray level. Value between 0 and 255 - * @param int $g Green component (between 0 and 255) - * @param int $b Blue component (between 0 and 255) - * @param boolean $storeprev if true stores the RGB array on $prevTextColor variable. - * @since 1.3 - * @see SetDrawColor(), SetFillColor(), Text(), Cell(), MultiCell() - */ - public function SetTextColor($r, $g=-1, $b=-1, $storeprev=false) { - //Set color for text - if(($r==0 and $g==0 and $b==0) or $g==-1) { - $this->TextColor=sprintf('%.3f g',$r/255); - } - else { - $this->TextColor=sprintf('%.3f %.3f %.3f rg',$r/255,$g/255,$b/255); - } - $this->ColorFlag=($this->FillColor!=$this->TextColor); - if ($storeprev) { - // store color as previous value - $this->prevTextColor = array($r, $g, $b); - } - } - - /** - * Returns the length of a string in user unit. A font must be selected.
    - * Support UTF-8 Unicode [Nicola Asuni, 2005-01-02] - * @param string $s The string whose length is to be computed - * @return int - * @since 1.2 - */ - public function GetStringWidth($s) { - //Get width of a string in the current font - $s = (string)$s; - $cw = &$this->CurrentFont['cw']; - $w = 0; - if($this->isunicode) { - $unicode = $this->UTF8StringToArray($s); - foreach($unicode as $char) { - if (isset($cw[$char])) { - $w+=$cw[$char]; - } elseif(isset($cw[ord($char)])) { - $w+=$cw[ord($char)]; - } elseif(isset($cw[chr($char)])) { - $w+=$cw[chr($char)]; - } elseif(isset($this->CurrentFont['desc']['MissingWidth'])) { - $w += $this->CurrentFont['desc']['MissingWidth']; // set default size - } else { - $w += 500; - } - } - } else { - $l = strlen($s); - for($i=0; $i < $l; $i++) { - if (isset($cw[$s{$i}])) { - $w += $cw[$s{$i}]; - } else if (isset($cw[ord($s{$i})])) { - $w += $cw[ord($s{$i})]; - } - } - } - return ($w * $this->FontSize / 1000); - } - - /** - * Returns the numbero of characters in a string. - * @param string $s The input string. - * @return int number of characters - * @since 2.0.0001 (2008-01-07) - */ - public function GetNumChars($s) { - if($this->isunicode) { - return count($this->UTF8StringToArray($s)); - } - return strlen($s); - } - - /** - * Imports a TrueType or Type1 font and makes it available. It is necessary to generate a font definition file first with the makefont.php utility. The definition file (and the font file itself when embedding) must be present either in the current directory or in the one indicated by K_PATH_FONTS if the constant is defined. If it could not be found, the error "Could not include font definition file" is generated. - * Support UTF-8 Unicode [Nicola Asuni, 2005-01-02]. - * Example:
    - *
    -		* $pdf->AddFont('Comic','I');
    -		* // is equivalent to:
    -		* $pdf->AddFont('Comic','I','comici.php');
    -		* 
    - * @param string $family Font family. The name can be chosen arbitrarily. If it is a standard family name, it will override the corresponding font. - * @param string $style Font style. Possible values are (case insensitive):
    • empty string: regular (default)
    • B: bold
    • I: italic
    • BI or IB: bold italic
    - * @param string $file The font definition file. By default, the name is built from the family and style, in lower case with no space. - * @since 1.5 - * @see SetFont() - */ - public function AddFont($family, $style='', $file='') { - if(empty($family)) { - return; - } - - //Add a TrueType or Type1 font - $family = strtolower($family); - if((!$this->isunicode) AND ($family == 'arial')) { - $family = 'helvetica'; - } - - $style=strtoupper($style); - $style=str_replace('U','',$style); - if($style == 'IB') { - $style = 'BI'; - } - - $fontkey = $family.$style; - // check if the font has been already added - if(isset($this->fonts[$fontkey])) { - return; - } - - if($file=='') { - $file = str_replace(' ', '', $family).strtolower($style).'.php'; - } - if(!file_exists($this->_getfontpath().$file)) { - // try to load the basic file without styles - $file = str_replace(' ', '', $family).'.php'; - } - - include($this->_getfontpath().$file); - - if(!isset($name) AND !isset($fpdf_charwidths)) { - $this->Error('Could not include font definition file'); - } - - $i = count($this->fonts)+1; - - if($this->isunicode) { - $this->fonts[$fontkey] = array('i'=>$i, 'type'=>$type, 'name'=>$name, 'desc'=>$desc, 'up'=>$up, 'ut'=>$ut, 'cw'=>$cw, 'enc'=>$enc, 'file'=>$file, 'ctg'=>$ctg); - $fpdf_charwidths[$fontkey] = $cw; - } else { - $this->fonts[$fontkey]=array('i'=>$i, 'type'=>'core', 'name'=>$this->CoreFonts[$fontkey], 'up'=>-100, 'ut'=>50, 'cw'=>$fpdf_charwidths[$fontkey]); - } - - if(isset($diff) AND (!empty($diff))) { - //Search existing encodings - $d=0; - $nb=count($this->diffs); - for($i=1;$i<=$nb;$i++) { - if($this->diffs[$i]==$diff) { - $d=$i; - break; - } - } - if($d==0) { - $d=$nb+1; - $this->diffs[$d]=$diff; - } - $this->fonts[$fontkey]['diff']=$d; - } - if(!empty($file)) { - if((strcasecmp($type,"TrueType") == 0) OR (strcasecmp($type,"TrueTypeUnicode") == 0)) { - $this->FontFiles[$file]=array('length1'=>$originalsize); - } - else { - $this->FontFiles[$file]=array('length1'=>$size1,'length2'=>$size2); - } - } - } - - /** - * Sets the font used to print character strings. It is mandatory to call this method at least once before printing text or the resulting document would not be valid. - * The font can be either a standard one or a font added via the AddFont() method. Standard fonts use Windows encoding cp1252 (Western Europe). - * The method can be called before the first page is created and the font is retained from page to page. - If you just wish to change the current font size, it is simpler to call SetFontSize(). - * Note: for the standard fonts, the font metric files must be accessible. There are three possibilities for this:
    • They are in the current directory (the one where the running script lies)
    • They are in one of the directories defined by the include_path parameter
    • They are in the directory defined by the K_PATH_FONTS constant

    - * Example for the last case (note the trailing slash):
    - *
    -		* define('K_PATH_FONTS','/home/www/font/');
    -		* require('tcpdf.php');
    -		*
    -		* //Times regular 12
    -		* $pdf->SetFont('Times');
    -		* //Arial bold 14
    -		* $pdf->SetFont('Arial','B',14);
    -		* //Removes bold
    -		* $pdf->SetFont('');
    -		* //Times bold, italic and underlined 14
    -		* $pdf->SetFont('Times','BIU');
    -		* 

    - * If the file corresponding to the requested font is not found, the error "Could not include font metric file" is generated. - * @param string $family Family font. It can be either a name defined by AddFont() or one of the standard families (case insensitive):
    • Courier (fixed-width)
    • Helvetica or Arial (synonymous; sans serif)
    • Times (serif)
    • Symbol (symbolic)
    • ZapfDingbats (symbolic)
    It is also possible to pass an empty string. In that case, the current family is retained. - * @param string $style Font style. Possible values are (case insensitive):
    • empty string: regular
    • B: bold
    • I: italic
    • U: underline
    or any combination. The default value is regular. Bold and italic styles do not apply to Symbol and ZapfDingbats - * @param float $size Font size in points. The default value is the current size. If no size has been specified since the beginning of the document, the value taken is 12 - * @since 1.0 - * @see AddFont(), SetFontSize(), Cell(), MultiCell(), Write() - */ - public function SetFont($family, $style='', $size=0) { - // save previous values - $this->prevFontFamily = $this->FontFamily; - $this->prevFontStyle = $this->FontStyle; - - //Select a font; size given in points - global $fpdf_charwidths; - - $family=strtolower($family); - if($family=='') { - $family=$this->FontFamily; - } - if((!$this->isunicode) AND ($family == 'arial')) { - $family = 'helvetica'; - } - elseif(($family=="symbol") OR ($family=="zapfdingbats")) { - $style=''; - } - $style=strtoupper($style); - - if(strpos($style,'U')!==false) { - $this->underline=true; - $style=str_replace('U','',$style); - } - else { - $this->underline=false; - } - if($style=='IB') { - $style='BI'; - } - if($size==0) { - $size=$this->FontSizePt; - } - - // try to add font (if not already added) - if($this->isunicode) { - $this->AddFont($family, $style); - } - - //Test if font is already selected - if(($this->FontFamily == $family) AND ($this->FontStyle == $style) AND ($this->FontSizePt == $size)) { - return; - } - - $fontkey = $family.$style; - //if(!isset($this->fonts[$fontkey]) AND isset($this->fonts[$family])) { - // $style=''; - //} - - //Test if used for the first time - if(!isset($this->fonts[$fontkey])) { - //Check if one of the standard fonts - if(isset($this->CoreFonts[$fontkey])) { - if(!isset($fpdf_charwidths[$fontkey])) { - //Load metric file - $file = $family; - if(($family!='symbol') AND ($family!='zapfdingbats')) { - $file .= strtolower($style); - } - if(!file_exists($this->_getfontpath().$file.'.php')) { - // try to load the basic file without styles - $file = $family; - $fontkey = $family; - } - include($this->_getfontpath().$file.'.php'); - if (($this->isunicode AND !isset($ctg)) OR ((!$this->isunicode) AND (!isset($fpdf_charwidths[$fontkey]))) ) { - $this->Error("Could not include font metric file [".$fontkey."]: ".$this->_getfontpath().$file.".php"); - } - } - $i = count($this->fonts) + 1; - - if($this->isunicode) { - $this->fonts[$fontkey] = array('i'=>$i, 'type'=>$type, 'name'=>$name, 'desc'=>$desc, 'up'=>$up, 'ut'=>$ut, 'cw'=>$cw, 'enc'=>$enc, 'file'=>$file, 'ctg'=>$ctg); - $fpdf_charwidths[$fontkey] = $cw; - } else { - $this->fonts[$fontkey]=array('i'=>$i, 'type'=>'core', 'name'=>$this->CoreFonts[$fontkey], 'up'=>-100, 'ut'=>50, 'cw'=>$fpdf_charwidths[$fontkey]); - } - } - else { - $this->Error('Undefined font: '.$family.' '.$style); - } - } - //Select it - $this->FontFamily = $family; - $this->FontStyle = $style; - $this->FontSizePt = $size; - $this->FontSize = $size / $this->k; - $this->CurrentFont = &$this->fonts[$fontkey]; - if($this->page>0) { - $this->_out(sprintf('BT /F%d %.2f Tf ET', $this->CurrentFont['i'], $this->FontSizePt)); - } - } - - /** - * Defines the size of the current font. - * @param float $size The size (in points) - * @since 1.0 - * @see SetFont() - */ - public function SetFontSize($size) { - //Set font size in points - if($this->FontSizePt==$size) { - return; - } - $this->FontSizePt = $size; - $this->FontSize = $size / $this->k; - if($this->page > 0) { - $this->_out(sprintf('BT /F%d %.2f Tf ET', $this->CurrentFont['i'], $this->FontSizePt)); - } - } - - /** - * Creates a new internal link and returns its identifier. An internal link is a clickable area which directs to another place within the document.
    - * The identifier can then be passed to Cell(), Write(), Image() or Link(). The destination is defined with SetLink(). - * @since 1.5 - * @see Cell(), Write(), Image(), Link(), SetLink() - */ - public function AddLink() { - //Create a new internal link - $n=count($this->links)+1; - $this->links[$n]=array(0,0); - return $n; - } - - /** - * Defines the page and position a link points to - * @param int $link The link identifier returned by AddLink() - * @param float $y Ordinate of target position; -1 indicates the current position. The default value is 0 (top of page) - * @param int $page Number of target page; -1 indicates the current page. This is the default value - * @since 1.5 - * @see AddLink() - */ - public function SetLink($link, $y=0, $page=-1) { - //Set destination of internal link - if($y==-1) { - $y=$this->y; - } - if($page==-1) { - $page=$this->page; - } - $this->links[$link]=array($page,$y); - } - - /** - * Puts a link on a rectangular area of the page. Text or image links are generally put via Cell(), Write() or Image(), but this method can be useful for instance to define a clickable area inside an image. - * @param float $x Abscissa of the upper-left corner of the rectangle (or upper-right for RTL languages) - * @param float $y Ordinate of the upper-left corner of the rectangle (or upper-right for RTL languages) - * @param float $w Width of the rectangle - * @param float $h Height of the rectangle - * @param mixed $link URL or identifier returned by AddLink() - * @since 1.5 - * @see AddLink(), Cell(), Write(), Image() - */ - public function Link($x, $y, $w, $h, $link) { - $this->PageLinks[$this->page][] = array($x * $this->k, $this->hPt - $y * $this->k, $w * $this->k, $h*$this->k, $link); - } - - /** - * Prints a character string. The origin is on the left of the first charcter, on the baseline. This method allows to place a string precisely on the page, but it is usually easier to use Cell(), MultiCell() or Write() which are the standard methods to print text. - * @param float $x Abscissa of the origin - * @param float $y Ordinate of the origin - * @param string $txt String to print - * @since 1.0 - * @see SetFont(), SetTextColor(), Cell(), MultiCell(), Write() - */ - public function Text($x, $y, $txt) { - //Output a string - if($this->rtl) { - $xr = $this->w - $x - $this->GetStringWidth($txt); - } else { - $xr = $x; - } - $s = sprintf('BT %.2f %.2f Td (%s) Tj ET', $xr * $this->k, ($this->h-$y) * $this->k, $this->_escapetext($txt)); - if($this->underline AND ($txt!='')) { - $s .= ' '.$this->_dounderline($xr, $y, $txt); - } - if($this->ColorFlag) { - $s='q '.$this->TextColor.' '.$s.' Q'; - } - $this->_out($s); - } - - /** - * Whenever a page break condition is met, the method is called, and the break is issued or not depending on the returned value. The default implementation returns a value according to the mode selected by SetAutoPageBreak().
    - * This method is called automatically and should not be called directly by the application.
    - * Example:
    - * The method is overriden in an inherited class in order to obtain a 3 column layout:
    - *
    -		* class PDF extends TCPDF {
    -		* 	var $col=0;
    -		*
    -		* 	public function SetCol($col) {
    -		* 		//Move position to a column
    -		* 		$this->col=$col;
    -		* 		$x=10+$col*65;
    -		* 		$this->SetLeftMargin($x);
    -		* 		$this->SetX($x);
    -		* 	}
    -		*
    -		* 	public function AcceptPageBreak() {
    -		* 		if($this->col<2) {
    -		* 			//Go to next column
    -		* 			$this->SetCol($this->col+1);
    -		* 			$this->SetY(10);
    -		* 			return false;
    -		* 		}
    -		* 		else {
    -		* 			//Go back to first column and issue page break
    -		* 			$this->SetCol(0);
    -		* 			return true;
    -		* 		}
    -		* 	}
    -		* }
    -		*
    -		* $pdf=new PDF();
    -		* $pdf->Open();
    -		* $pdf->AddPage();
    -		* $pdf->SetFont('Arial','',12);
    -		* for($i=1;$i<=300;$i++) {
    -		*     $pdf->Cell(0,5,"Line $i",0,1);
    -		* }
    -		* $pdf->Output();
    -		* 
    - * @return boolean - * @since 1.4 - * @see SetAutoPageBreak() - */ - public function AcceptPageBreak() { - //Accept automatic page break or not - return $this->AutoPageBreak; - } - - /** - * Prints a cell (rectangular area) with optional borders, background color and character string. The upper-left corner of the cell corresponds to the current position. The text can be aligned or centered. After the call, the current position moves to the right or to the next line. It is possible to put a link on the text.
    - * If automatic page breaking is enabled and the cell goes beyond the limit, a page break is done before outputting. - * @param float $w Cell width. If 0, the cell extends up to the right margin. - * @param float $h Cell height. Default value: 0. - * @param string $txt String to print. Default value: empty string. - * @param mixed $border Indicates if borders must be drawn around the cell. The value can be either a number:
    • 0: no border (default)
    • 1: frame
    or a string containing some or all of the following characters (in any order):
    • L: left
    • T: top
    • R: right
    • B: bottom
    - * @param int $ln Indicates where the current position should go after the call. Possible values are:
    • 0: to the right (or left for RTL languages)
    • 1: to the beginning of the next line
    • 2: below
    - Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: 0. - * @param string $align Allows to center or align the text. Possible values are:
    • L or empty string: left align (default value)
    • C: center
    • R: right align
    • J: justify
    - * @param int $fill Indicates if the cell background must be painted (1) or transparent (0). Default value: 0. - * @param mixed $link URL or identifier returned by AddLink(). - * @param int $stretch stretch carachter mode:
    • 0 = disabled
    • 1 = horizontal scaling only if necessary
    • 2 = forced horizontal scaling
    • 3 = character spacing only if necessary
    • 4 = forced character spacing
    - * @since 1.0 - * @see SetFont(), SetDrawColor(), SetFillColor(), SetTextColor(), SetLineWidth(), AddLink(), Ln(), MultiCell(), Write(), SetAutoPageBreak() - */ - public function Cell($w, $h=0, $txt='', $border=0, $ln=0, $align='', $fill=0, $link='', $stretch=0) { - //Output a cell - $k=$this->k; - if(($this->y + $h) > $this->PageBreakTrigger AND empty($this->InFooter) AND $this->AcceptPageBreak()) { - //Automatic page break - $x = $this->x; - $ws = $this->ws; - if($ws > 0) { - $this->ws = 0; - $this->_out('0 Tw'); - } - $this->AddPage($this->CurOrientation); - $this->x = $x; - if($ws > 0) { - $this->ws = $ws; - $this->_out(sprintf('%.3f Tw',$ws * $k)); - } - } - if($w == 0) { - if ($this->rtl) { - $w = $this->x - $this->lMargin; - } else { - $w = $this->w - $this->rMargin - $this->x; - } - } - $s = ''; - if(($fill == 1) OR ($border == 1)) { - if($fill == 1) { - $op = ($border == 1) ? 'B' : 'f'; - } else { - $op = 'S'; - } - if ($this->rtl) { - $xk = ($this->x - $w) * $k; - } else { - $xk = $this->x * $k; - } - $s .= sprintf('%.2f %.2f %.2f %.2f re %s ', $xk, ($this->h - $this->y) * $k, $w * $k, -$h * $k, $op); - } - if(is_string($border)) { - $x=$this->x; - $y=$this->y; - if(strpos($border,'L')!==false) { - if ($this->rtl) { - $xk = ($x - $w) * $k; - } else { - $xk = $x * $k; - } - $s.=sprintf('%.2f %.2f m %.2f %.2f l S ',$xk,($this->h-$y)*$k,$xk,($this->h-($y+$h))*$k); - } - if(strpos($border,'T')!==false) { - if ($this->rtl) { - $xk = ($x - $w) * $k; - $xwk = $x * $k; - } else { - $xk = $x * $k; - $xwk = ($x + $w) * $k; - } - $s.=sprintf('%.2f %.2f m %.2f %.2f l S ',$xk,($this->h-$y)*$k,$xwk,($this->h-$y)*$k); - } - if(strpos($border,'R')!==false) { - if ($this->rtl) { - $xk = $x * $k; - } else { - $xk = ($x + $w) * $k; - } - $s.=sprintf('%.2f %.2f m %.2f %.2f l S ',$xk,($this->h-$y)*$k,$xk,($this->h-($y+$h))*$k); - } - if(strpos($border,'B')!==false) { - if ($this->rtl) { - $xk = ($x - $w) * $k; - $xwk = $x * $k; - } else { - $xk = $x * $k; - $xwk = ($x + $w) * $k; - } - $s.=sprintf('%.2f %.2f m %.2f %.2f l S ',$xk,($this->h-($y+$h))*$k,$xwk,($this->h-($y+$h))*$k); - } - } - if($txt != '') { - // text lenght - $width = $this->GetStringWidth($txt); - // ratio between cell lenght and text lenght - $ratio = ($w - (2 * $this->cMargin)) / $width; - - // stretch text if requested - if (($stretch > 0) AND (($ratio < 1) OR (($ratio > 1) AND (($stretch % 2) == 0)))) { - if ($stretch > 2) { - // spacing - //Calculate character spacing in points - $char_space = ($w - (2 * $this->cMargin) - $width) / max($this->GetNumChars($s)-1,1) * $this->k; - //Set character spacing - $this->_out(sprintf('BT %.2f Tc ET', $char_space)); - } else { - // scaling - //Calculate horizontal scaling - $horiz_scale = $ratio*100.0; - //Set horizontal scaling - $this->_out(sprintf('BT %.2f Tz ET', $horiz_scale)); - } - $align = ''; - $width = $w - (2 * $this->cMargin); - } else { - $stretch == 0; - } - - if($align == 'L') { - if ($this->rtl) { - $dx = $w - $this->cMargin - $width; - } else { - $dx = $this->cMargin; - } - } elseif($align == 'R') { - if ($this->rtl) { - $dx = $this->cMargin; - } else { - $dx = $w - $this->cMargin - $width; - } - } elseif($align=='C') { - $dx = ($w - $width)/2; - } elseif($align=='J') { - if ($this->rtl) { - $dx = $w - $this->cMargin - $width; - } else { - $dx = $this->cMargin; - } - } else { - $dx = $this->cMargin; - } - if($this->ColorFlag) { - $s .= 'q '.$this->TextColor.' '; - } - $txt2 = $this->_escapetext($txt); - if ($this->rtl) { - $xdk = ($this->x - $dx - $width) * $k; - } else { - $xdk = ($this->x + $dx) * $k; - } - // 2008-02-16 Jacek Czekaj - multibyte justification - if ($align == 'J') { - // count number of spaces - $ns = substr_count($txt, ' '); - // get string width without spaces - $width = $this->GetStringWidth(str_replace(' ', '', $txt)); - // set word position to be used with TJ operator - $txt2 = str_replace(chr(0).' ', ') '. -2830*($w-$width-2)/($ns?$ns:1)/$this->FontSize/$this->k . ' (', $txt2); - } - $s.=sprintf('BT %.2f %.2f Td [(%s)] TJ ET', $xdk, ($this->h - ($this->y + 0.5 * $h + 0.3 * $this->FontSize)) * $k, $txt2); - //$s.=sprintf('BT %.2f %.2f Td (%s) Tj ET', $xdk, ($this->h - ($this->y + 0.5 * $h + 0.3 * $this->FontSize)) * $k, $txt2); - if($this->underline) { - if ($this->rtl) { - $xdx = $this->x - $dx - $width; - } else { - $xdx = $this->x + $dx; - } - $s.=' '.$this->_dounderline($xdx, $this->y + 0.5 * $h + 0.3 * $this->FontSize, $txt); - } - if($this->ColorFlag) { - $s.=' Q'; - } - if($link) { - if ($this->rtl) { - $xdx = $this->x - $dx - $width; - } else { - $xdx = $this->x + $dx; - } - $this->Link($xdx, $this->y + 0.5 * $h - 0.5 * $this->FontSize, $width, $this->FontSize, $link); - } - } - - // output cell - if($s) { - // output cell - $this->_out($s); - // reset text stretching - if($stretch > 2) { - //Reset character horizontal spacing - $this->_out('BT 0 Tc ET'); - } elseif($stretch > 0) { - //Reset character horizontal scaling - $this->_out('BT 100 Tz ET'); - } - } - - $this->lasth = $h; - if($ln>0) { - //Go to the beginning of the next line - $this->y += $h; - if($ln == 1) { - if ($this->rtl) { - $this->x = $this->w - $this->rMargin; - } else { - $this->x = $this->lMargin; - } - } - } else { - // go left or right by case - if ($this->rtl) { - $this->x -= $w; - } else { - $this->x += $w; - } - } - } - - /** - * This method allows printing text with line breaks. They can be automatic (as soon as the text reaches the right border of the cell) or explicit (via the \n character). As many cells as necessary are output, one below the other.
    - * Text can be aligned, centered or justified. The cell block can be framed and the background painted. - * @param float $w Width of cells. If 0, they extend up to the right margin of the page. - * @param float $h Height of cells. - * @param string $txt String to print - * @param mixed $border Indicates if borders must be drawn around the cell block. The value can be either a number:
    • 0: no border (default)
    • 1: frame
    or a string containing some or all of the following characters (in any order):
    • L: left
    • T: top
    • R: right
    • B: bottom
    - * @param string $align Allows to center or align the text. Possible values are:
    • L or empty string: left align
    • C: center
    • R: right align
    • J: justification (default value)
    - * @param int $fill Indicates if the cell background must be painted (1) or transparent (0). Default value: 0. - * @param int $ln Indicates where the current position should go after the call. Possible values are:
    • 0: to the right
    • 1: to the beginning of the next line [DEFAULT]
    • 2: below
    - * @return int number of cells (number of lines) - * @since 1.3 - * @see SetFont(), SetDrawColor(), SetFillColor(), SetTextColor(), SetLineWidth(), Cell(), Write(), SetAutoPageBreak() - */ - public function MultiCell($w, $h, $txt, $border=0, $align='J', $fill=0, $ln=1) { - - // save current position - $prevx = $this->x; - $prevy = $this->y; - - // get current page number - $startpage = $this->page; - - // calculate remaining vertical space on first page ($startpage) - $restspace = $this->getPageHeight() - $this->GetY() - $this->getBreakMargin(); - - //Output text with automatic or explicit line breaks - $cw = &$this->CurrentFont['cw']; - - if($w == 0) { - if ($this->rtl) { - $w = $this->x - $this->lMargin; - } else { - $w = $this->w - $this->rMargin - $this->x; - } - } - - $wmax = ($w - 2 * $this->cMargin); - - $s = str_replace("\r", '', $txt); // remove carriage returns - $nb = strlen($s); - - $sep=-1; - $i=0; - $j=0; - $l=0; - $ns=0; - $nl=1; - while($i < $nb) { - //Get next character - $c = $s{$i}; - if(preg_match("/[\n]/u", $c)) { - //Explicit line break - if($this->ws > 0) { - $this->ws = 0; - $this->_out('0 Tw'); - } - $this->Cell($w, $h, substr($s, $j, $i-$j), 0, 2, $align, $fill, ''); - $i++; - $sep=-1; - $j=$i; - $l=0; - $ns=0; - $nl++; - continue; - } - if(preg_match("/[ ]/u", $c)) { - $sep = $i; - $ls = $l; - $ns++; - } - - $l = $this->GetStringWidth(substr($s, $j, $i-$j)); - - if($l > $wmax) { - //Automatic line break - if($sep == -1) { - if($i == $j) { - $i++; - } - if($this->ws > 0) { - $this->ws = 0; - $this->_out('0 Tw'); - } - $this->Cell($w, $h, substr($s, $j, $i-$j), 0, 2, $align, $fill, ''); - } - else { - if($align=='J') { - $this->ws = ($ns>1) ? ($wmax-$ls)/1000*$this->FontSize/($ns-1) : 0; - $this->_out(sprintf('%.3f Tw', $this->ws * $this->k)); - } - $this->Cell($w, $h, substr($s, $j, $sep-$j), 0, 2, $align, $fill, ''); - $i = $sep + 1; - } - $sep=-1; - $j=$i; - $l=0; - $ns=0; - $nl++; - } - else { - $i++; - } - } - //Last chunk - if($this->ws>0) { - $this->ws=0; - $this->_out('0 Tw'); - } - if($align == "J") { - $align = "L"; - } - $this->Cell($w, $h, substr($s, $j, $i-$j), 0, 2, $align, $fill, ''); - - // Get end-of-text Y position - $currentY = $this->GetY(); - // get latest page number - $endpage = $this->page; - - if (!empty($border)) { - // check if a new page has been created - if ($endpage > $startpage) { - // design borders around HTML cells. - for ($page=$startpage; $page<=$endpage; $page++) { - $this->page = $page; - if ($page==$startpage) { - $this->y = $this->getPageHeight() - $restspace - $this->getBreakMargin(); - $h = $restspace - 1; - } elseif ($page==$endpage) { - $this->y = $this->tMargin; // put cursor at the beginning of text - $h = $currentY - $this->tMargin; - } else { - $this->y = $this->tMargin; // put cursor at the beginning of text - $h = $this->getPageHeight() - $this->tMargin - $this->getBreakMargin(); - } - $this->Cell($w, $h, "", $border, 1, '', 0); - } - } else { - $h = max($h, ($currentY - $prevy)); - $this->y = $prevy; // put cursor at the beginning of text - // design a cell around the text - $this->Cell($w, $h, "", $border, 1, '', 0); - } - } - - // move cursor to specified position - if($ln>0) { - //Go to the beginning of the next line - $this->SetY($currentY); - if($ln == 2) { - $this->SetX($prevx + $w); - } - } else { - // go left or right by case - $this->page = $startpage; - $this->y = $prevy; - $this->SetX($prevx + $w); - } - - return $nl; - } - - /** - * This method prints text from the current position. When the right margin is reached (or the \n character is met) a line break occurs and text continues from the left margin. Upon method exit, the current position is left just at the end of the text. It is possible to put a link on the text.
    - * Example:
    - *
    -		* //Begin with regular font
    -		* $pdf->SetFont('Arial','',14);
    -		* $pdf->Write(5,'Visit ');
    -		* //Then put a blue underlined link
    -		* $pdf->SetTextColor(0,0,255);
    -		* $pdf->SetFont('','U');
    -		* $pdf->Write(5,'www.tecnick.com','http://www.tecnick.com');
    -		* 
    - * @param float $h Line height - * @param string $txt String to print - * @param mixed $link URL or identifier returned by AddLink() - * @param int $fill Indicates if the background must be painted (1) or transparent (0). Default value: 0. - * @since 1.5 - * @see SetFont(), SetTextColor(), AddLink(), MultiCell(), SetAutoPageBreak() - */ - public function Write($h, $txt, $link='', $fill=0) { - //Output text in flowing mode - $cw = &$this->CurrentFont['cw']; - // calculating remaining line width ($w) - if ($this->rtl) { - $w = $this->x - $this->lMargin; - } else { - $w = $this->w - $this->rMargin - $this->x; - } - $wmax = $w - 2 * $this->cMargin; - $s = str_replace("\r", '', $txt); - $nb = strlen($s); - // handle single space character - if(($nb==1) AND preg_match("/[ ]/u", $s)) { - if ($this->rtl) { - $this->x -= $this->GetStringWidth($s); - } else { - $this->x += $this->GetStringWidth($s); - } - return; - } - $sep=-1; - $i=0; - $j=0; - $l=0; - $nl=1; - while($i<$nb) { - //Get next character - $c=$s{$i}; - if(preg_match("/[\n]/u", $c)) { - //Explicit line break - $this->Cell($w, $h, substr($s, $j, $i-$j), 0, 2, '', $fill, $link); - $i++; - $sep = -1; - $j = $i; - $l = 0; - if($nl == 1) { - if ($this->rtl) { - $this->x = $this->w - $this->rMargin; - $w = $this->x - $this->lMargin; - } - else { - $this->x = $this->lMargin; - $w = $this->w - $this->rMargin - $this->x; - } - $wmax = ($w - 2 * $this->cMargin); - } - $nl++; - continue; - } - if(preg_match("/[ ]/u", $c)) { - $sep= $i; - } - $l = $this->GetStringWidth(substr($s, $j, $i-$j)); - if($l > $wmax) { - //Automatic line break (word wrapping) - if($sep == -1) { - if((!$this->rtl) AND ($this->x > $this->lMargin)) { - //Move to next line - $this->x = $this->lMargin; - $this->y += $h; - $w=$this->w - $this->rMargin - $this->x; - $wmax=($w - 2 * $this->cMargin); - $i++; - $nl++; - continue; - } - if($this->rtl AND ($this->x < $this->rMargin)) { - //Move to next line - $this->x = $this->w - $this->rMargin; - $this->y += $h; - $w=$this->x - $this->lMargin; - $wmax=($w - 2 * $this->cMargin); - $i++; - $nl++; - continue; - } - if($i==$j) { - $i++; - } - $this->Cell($w, $h, substr($s, $j, $i-$j), 0, 2, '', $fill, $link); - } - else { - $this->Cell($w, $h, substr($s, $j, $sep-$j), 0, 2, '', $fill, $link); - $i=$sep+1; - } - $sep = -1; - $j = $i; - $l = 0; - if($nl==1) { - if ($this->rtl) { - $this->x = $this->w - $this->rMargin; - $w = $this->x - $this->lMargin; - } else { - $this->x = $this->lMargin; - $w = $this->w - $this->rMargin - $this->x; - } - $wmax = ($w - 2 * $this->cMargin); - } - $nl++; - } - else { - $i++; - } - } - - //Last chunk - if($i!=$j) { - $this->Cell($this->GetStringWidth(substr($s, $j)) + 2 * $this->cMargin, $h, substr($s, $j), 0, 0, '', $fill, $link); - } - } - - /** - * Puts an image in the page. The upper-left corner must be given. The dimensions can be specified in different ways:
    • explicit width and height (expressed in user unit)
    • one explicit dimension, the other being calculated automatically in order to keep the original proportions
    • no explicit dimension, in which case the image is put at 72 dpi
    - * Supported formats are JPEG and PNG. - * For JPEG, all flavors are allowed:
    • gray scales
    • true colors (24 bits)
    • CMYK (32 bits)
    - * For PNG, are allowed:
    • gray scales on at most 8 bits (256 levels)
    • indexed colors
    • true colors (24 bits)
    - * If a transparent color is defined, it will be taken into account (but will be only interpreted by Acrobat 4 and above).
    - * The format can be specified explicitly or inferred from the file extension.
    - * It is possible to put a link on the image.
    - * Remark: if an image is used several times, only one copy will be embedded in the file.
    - * @param string $file Name of the file containing the image. - * @param float $x Abscissa of the upper-left corner. - * @param float $y Ordinate of the upper-left corner. - * @param float $w Width of the image in the page. If not specified or equal to zero, it is automatically calculated. - * @param float $h Height of the image in the page. If not specified or equal to zero, it is automatically calculated. - * @param string $type Image format. Possible values are (case insensitive): JPG, JPEG, PNG. If not specified, the type is inferred from the file extension. - * @param mixed $link URL or identifier returned by AddLink(). - * @param string $align Indicates the alignment of the pointer next to image insertion relative to image height. The value can be:
    • T: top-right for LTR or top-left for RTL
    • M: middle-right for LTR or middle-left for RTL
    • B: bottom-right for LTR or bottom-left for RTL
    • N: next line
    - * @since 1.1 - * @see AddLink() - */ - public function Image($file, $x, $y, $w=0, $h=0, $type='', $link='', $align='') { - //Put an image on the page - if(!isset($this->images[$file])) { - //First use of image, get info - if($type == '') { - $pos = strrpos($file,'.'); - if(empty($pos)) { - $this->Error('Image file has no extension and no type was specified: '.$file); - } - $type = substr($file, $pos+1); - } - $type = strtolower($type); - $mqr = get_magic_quotes_runtime(); - set_magic_quotes_runtime(0); - if($type == 'jpg' or $type == 'jpeg') { - $info=$this->_parsejpg($file); - } elseif($type == 'gif') { - $info=$this->_parsegif($file); - } elseif($type == 'png') { - $info=$this->_parsepng($file); - }else { - //Allow for additional formats - $mtd='_parse'.$type; - if(!method_exists($this,$mtd)) { - $this->Error('Unsupported image type: '.$type); - } - $info=$this->$mtd($file); - } - if($info === false) { - //If false, we cannot process image - return; - } - set_magic_quotes_runtime($mqr); - $info['i']=count($this->images)+1; - $this->images[$file]=$info; - } - else { - $info=$this->images[$file]; - } - //Automatic width and height calculation if needed - if(($w == 0) and ($h == 0)) { - //Put image at 72 dpi - // 2004-06-14 :: Nicola Asuni, scale factor where added - $w = $info['w'] / ($this->imgscale * $this->k); - $h = $info['h'] / ($this->imgscale * $this->k); - } - if($w == 0) { - $w = $h * $info['w'] / $info['h']; - } - if($h == 0) { - $h = $w * $info['h'] / $info['w']; - } - - // 2007-10-19 Warren Sherliker - // Check whether we need a new page first as this does not fit - // Copied from Cell() - if((($this->y + $h) > $this->PageBreakTrigger) AND empty($this->InFooter) AND $this->AcceptPageBreak()) { - // Automatic page break - $this->AddPage($this->CurOrientation); - // Reset coordinates to top fo next page - $x = $this->GetX(); - $y = $this->GetY(); - } - // 2007-10-19 Warren Sherliker: End Edit - - // set bottomcoordinates - $this->img_rb_y = $y + $h; - if ($this->rtl) { - $ximg = ($this->w - $x -$w); - // set left side coordinate - $this->img_rb_x = $ximg; - } else { - $ximg = $x; - // set right side coordinate - $this->img_rb_x = $ximg + $w; - } - $xkimg = $ximg * $this->k; - $this->_out(sprintf('q %.2f 0 0 %.2f %.2f %.2f cm /I%d Do Q', $w*$this->k, $h*$this->k, $xkimg, ($this->h-($y+$h))*$this->k, $info['i'])); - - if($link) { - $this->Link($ximg, $y, $w, $h, $link); - } - - // set pointer to align the successive text/objects - switch($align) { - case 'T':{ - $this->y = $y; - $this->x = $this->img_rb_x; - break; - } - case 'M':{ - $this->y = $y + round($h/2); - $this->x = $this->img_rb_x; - break; - } - case 'B':{ - $this->y = $this->img_rb_y; - $this->x = $this->img_rb_x; - break; - } - case 'N':{ - $this->SetY($this->img_rb_y); - break; - } - default:{ - break; - } - } - } - - - /** - * Performs a line break. The current abscissa goes back to the left margin and the ordinate increases by the amount passed in parameter. - * @param float $h The height of the break. By default, the value equals the height of the last printed cell. - * @since 1.0 - * @see Cell() - */ - public function Ln($h='') { - //Line feed; default value is last cell height - if ($this->rtl) { - $this->x = $this->w - $this->rMargin; - } else { - $this->x = $this->lMargin; - } - if(is_string($h)) { - $this->y += $this->lasth; - } else { - $this->y += $h; - } - } - - /** - * Returns the relative X value of current position. - * The value is relative to the left border for LTR languages and to the right border for RTL languages. - * @return float - * @since 1.2 - * @see SetX(), GetY(), SetY() - */ - public function GetX() { - //Get x position - if ($this->rtl) { - return ($this->w - $this->x); - } else { - return $this->x; - } - } - - /** - * Returns the absolute X value of current position. - * @return float - * @since 1.2 - * @see SetX(), GetY(), SetY() - */ - public function GetAbsX() { - return $this->x; - } - - /** - * Returns the ordinate of the current position. - * @return float - * @since 1.0 - * @see SetY(), GetX(), SetX() - */ - public function GetY() { - //Get y position - return $this->y; - } - - /** - * Defines the abscissa of the current position. - * If the passed value is negative, it is relative to the right of the page (or left if language is RTL). - * @param float $x The value of the abscissa. - * @since 1.2 - * @see GetX(), GetY(), SetY(), SetXY() - */ - public function SetX($x) { - //Set x position - if ($this->rtl) { - if($x >= 0) { - $this->x = $this->w - $x; - } else { - $this->x = abs($x); - } - } else { - if($x >= 0) { - $this->x = $x; - } else { - $this->x = $this->w + $x; - } - } - } - - /** - * Moves the current abscissa back to the left margin and sets the ordinate. - * If the passed value is negative, it is relative to the bottom of the page. - * @param float $y The value of the ordinate. - * @since 1.0 - * @see GetX(), GetY(), SetY(), SetXY() - */ - public function SetY($y) { - //Set y position and reset x - if ($this->rtl) { - $this->x = $this->w - $this->rMargin; - } else { - $this->x = $this->lMargin; - } - if($y >= 0) { - $this->y = $y; - } else { - $this->y = $this->h + $y; - } - } - - - /** - * Defines the abscissa and ordinate of the current position. If the passed values are negative, they are relative respectively to the right and bottom of the page. - * @param float $x The value of the abscissa - * @param float $y The value of the ordinate - * @since 1.2 - * @see SetX(), SetY() - */ - public function SetXY($x, $y) { - //Set x and y positions - $this->SetY($y); - $this->SetX($x); - } - - /** - * Send the document to a given destination: string, local file or browser. In the last case, the plug-in may be used (if present) or a download ("Save as" dialog box) may be forced.
    - * The method first calls Close() if necessary to terminate the document. - * @param string $name The name of the file. If not given, the document will be sent to the browser (destination I) with the name doc.pdf. - * @param string $dest Destination where to send the document. It can take one of the following values:
    • I: send the file inline to the browser. The plug-in is used if available. The name given by name is used when one selects the "Save as" option on the link generating the PDF.
    • D: send to the browser and force a file download with the name given by name.
    • F: save to a local file with the name given by name.
    • S: return the document as a string. name is ignored.
    If the parameter is not specified but a name is given, destination is F. If no parameter is specified at all, destination is I.
    Note: for compatibility with previous versions, a boolean value is also accepted (false for F and true for D). - * @since 1.0 - * @see Close() - */ - public function Output($name='',$dest='') { - //Output PDF to some destination - //Finish document if necessary - if($this->state < 3) { - $this->Close(); - } - //Normalize parameters - if(is_bool($dest)) { - $dest=$dest ? 'D' : 'F'; - } - $dest=strtoupper($dest); - if($dest=='') { - if($name=='') { - $name='doc.pdf'; - $dest='I'; - } else { - $dest='F'; - } - } - switch($dest) { - case 'I': { - //Send to standard output - if(ob_get_contents()) { - $this->Error('Some data has already been output, can\'t send PDF file'); - } - - if(php_sapi_name()!='cli') { - //We send to a browser - header('Content-Type: application/pdf'); - if(headers_sent()) { - $this->Error('Some data has already been output to browser, can\'t send PDF file'); - } - header('Content-Length: '.strlen($this->buffer)); - header('Content-disposition: inline; filename="'.$name.'"'); - } - echo $this->buffer; - break; - } - case 'D': { - //Download file - if(ob_get_contents()) { - $this->Error('Some data has already been output, can\'t send PDF file'); - } - - if(isset($_SERVER['HTTP_USER_AGENT']) && strpos($_SERVER['HTTP_USER_AGENT'],'MSIE')) { - header('Content-Type: application/force-download'); - } else { - header('Content-Type: application/octet-stream'); - } - if(headers_sent()) { - $this->Error('Some data has already been output to browser, can\'t send PDF file'); - } - header('Content-Type: application/pdf'); - header('Content-Length: '.strlen($this->buffer)); - header('Content-disposition: attachment; filename="'.$name.'"'); - echo $this->buffer; - break; - } - case 'F': { - //Save to local file - $f=fopen($name,'wb'); - if(!$f) { - $this->Error('Unable to create output file: '.$name); - } - fwrite($f,$this->buffer,strlen($this->buffer)); - fclose($f); - break; - } - case 'S': { - //Return as a string - return $this->buffer; - } - default: { - $this->Error('Incorrect output destination: '.$dest); - } - } - return ''; - } - - // Protected methods - - /** - * Check for locale-related bug - * @access protected - */ - protected function _dochecks() { - //Check for locale-related bug - if(1.1==1) { - $this->Error('Don\'t alter the locale before including class file'); - } - //Check for decimal separator - if(sprintf('%.1f',1.0)!='1.0') { - setlocale(LC_NUMERIC,'C'); - } - } - - /** - * Return fonts path - * @access protected - */ - protected function _getfontpath() { - if(!defined('K_PATH_FONTS') AND is_dir(dirname(__FILE__).'/font')) { - define('K_PATH_FONTS', dirname(__FILE__).'/font/'); - } - return defined('K_PATH_FONTS') ? K_PATH_FONTS : ''; - } - - /** - * Start document - * @access protected - */ - protected function _begindoc() { - //Start document - $this->state=1; - $this->_out('%PDF-'.$this->PDFVersion); - } - - /** - * _putpages - * @access protected - */ - protected function _putpages() { - $nb = $this->page; - if(!empty($this->AliasNbPages)) { - $nbstr = $this->UTF8ToUTF16BE($nb, false); - //Replace number of pages - for($n=1;$n<=$nb;$n++) { - $this->pages[$n]=str_replace($this->AliasNbPages, $nbstr, $this->pages[$n]); - } - } - if($this->DefOrientation=='P') { - $wPt=$this->fwPt; - $hPt=$this->fhPt; - } - else { - $wPt=$this->fhPt; - $hPt=$this->fwPt; - } - $filter=($this->compress) ? '/Filter /FlateDecode ' : ''; - for($n=1;$n<=$nb;$n++) { - //Page - $this->_newobj(); - $this->_out('<_out('/Parent 1 0 R'); - if(isset($this->OrientationChanges[$n])) { - $this->_out(sprintf('/MediaBox [0 0 %.2f %.2f]',$hPt,$wPt)); - } - $this->_out('/Resources 2 0 R'); - if(isset($this->PageLinks[$n])) { - //Links - $annots='/Annots ['; - foreach($this->PageLinks[$n] as $pl) { - $rect=sprintf('%.2f %.2f %.2f %.2f',$pl[0],$pl[1],$pl[0]+$pl[2],$pl[1]-$pl[3]); - $annots.='<_uristring($pl[4]).'>>>>'; - } - else { - $l=$this->links[$pl[4]]; - $h=isset($this->OrientationChanges[$l[0]]) ? $wPt : $hPt; - $annots.=sprintf('/Dest [%d 0 R /XYZ 0 %.2f null]>>',1+2*$l[0],$h-$l[1]*$this->k); - } - } - $this->_out($annots.']'); - } - $this->_out('/Contents '.($this->n+1).' 0 R>>'); - $this->_out('endobj'); - //Page content - $p=($this->compress) ? gzcompress($this->pages[$n]) : $this->pages[$n]; - $this->_newobj(); - $this->_out('<<'.$filter.'/Length '.strlen($p).'>>'); - $this->_putstream($p); - $this->_out('endobj'); - } - //Pages root - $this->offsets[1]=strlen($this->buffer); - $this->_out('1 0 obj'); - $this->_out('<_out($kids.']'); - $this->_out('/Count '.$nb); - $this->_out(sprintf('/MediaBox [0 0 %.2f %.2f]',$wPt,$hPt)); - $this->_out('>>'); - $this->_out('endobj'); - } - - /** - * Adds fonts - * _putfonts - * @access protected - */ - protected function _putfonts() { - $nf=$this->n; - foreach($this->diffs as $diff) { - //Encodings - $this->_newobj(); - $this->_out('<>'); - $this->_out('endobj'); - } - $mqr=get_magic_quotes_runtime(); - set_magic_quotes_runtime(0); - foreach($this->FontFiles as $file=>$info) { - //Font file embedding - $this->_newobj(); - $this->FontFiles[$file]['n']=$this->n; - $font=''; - $f=fopen($this->_getfontpath().strtolower($file),'rb',1); - if(!$f) { - $this->Error('Font file not found: '.$file); - } - while(!feof($f)) { - $font .= fread($f, 8192); - } - fclose($f); - $compressed=(substr($file,-2)=='.z'); - if(!$compressed && isset($info['length2'])) { - $header=(ord($font{0})==128); - if($header) { - //Strip first binary header - $font=substr($font,6); - } - if($header && ord($font{$info['length1']})==128) { - //Strip second binary header - $font=substr($font,0,$info['length1']).substr($font,$info['length1']+6); - } - } - $this->_out('<_out('/Filter /FlateDecode'); - } - $this->_out('/Length1 '.$info['length1']); - if(isset($info['length2'])) { - $this->_out('/Length2 '.$info['length2'].' /Length3 0'); - } - $this->_out('>>'); - $this->_putstream($font); - $this->_out('endobj'); - } - set_magic_quotes_runtime($mqr); - foreach($this->fonts as $k=>$font) { - //Font objects - $this->fonts[$k]['n']=$this->n+1; - $type=$font['type']; - $name=$font['name']; - if($type=='core') { - //Standard font - $this->_newobj(); - $this->_out('<_out('/BaseFont /'.$name); - $this->_out('/Subtype /Type1'); - if($name!='Symbol' && $name!='ZapfDingbats') { - $this->_out('/Encoding /WinAnsiEncoding'); - } - $this->_out('>>'); - $this->_out('endobj'); - } elseif($type=='Type1' OR $type=='TrueType') { - //Additional Type1 or TrueType font - $this->_newobj(); - $this->_out('<_out('/BaseFont /'.$name); - $this->_out('/Subtype /'.$type); - $this->_out('/FirstChar 32 /LastChar 255'); - $this->_out('/Widths '.($this->n+1).' 0 R'); - $this->_out('/FontDescriptor '.($this->n+2).' 0 R'); - if($font['enc']) { - if(isset($font['diff'])) { - $this->_out('/Encoding '.($nf+$font['diff']).' 0 R'); - } else { - $this->_out('/Encoding /WinAnsiEncoding'); - } - } - $this->_out('>>'); - $this->_out('endobj'); - //Widths - $this->_newobj(); - $cw=&$font['cw']; - $s='['; - for($i=32;$i<=255;$i++) { - $s.=$cw[chr($i)].' '; - } - $this->_out($s.']'); - $this->_out('endobj'); - //Descriptor - $this->_newobj(); - $s='<$v) { - $s.=' /'.$k.' '.$v; - } - $file = $font['file']; - if($file) { - $s.=' /FontFile'.($type=='Type1' ? '' : '2').' '.$this->FontFiles[$file]['n'].' 0 R'; - } - $this->_out($s.'>>'); - $this->_out('endobj'); - } else { - //Allow for additional types - $mtd='_put'.strtolower($type); - if(!method_exists($this, $mtd)) { - $this->Error('Unsupported font type: '.$type); - } - $this->$mtd($font); - } - } - } - - /** - * _putimages - * @access protected - */ - protected function _putimages() { - $filter=($this->compress) ? '/Filter /FlateDecode ' : ''; - reset($this->images); - while(list($file,$info)=each($this->images)) { - $this->_newobj(); - $this->images[$file]['n']=$this->n; - $this->_out('<_out('/Subtype /Image'); - $this->_out('/Width '.$info['w']); - $this->_out('/Height '.$info['h']); - - if (isset($info["masked"])) { - $this->_out('/SMask '.($this->n-1).' 0 R'); - } - - if($info['cs']=='Indexed') { - $this->_out('/ColorSpace [/Indexed /DeviceRGB '.(strlen($info['pal'])/3-1).' '.($this->n+1).' 0 R]'); - } - else { - $this->_out('/ColorSpace /'.$info['cs']); - if($info['cs']=='DeviceCMYK') { - $this->_out('/Decode [1 0 1 0 1 0 1 0]'); - } - } - $this->_out('/BitsPerComponent '.$info['bpc']); - if(isset($info['f'])) { - $this->_out('/Filter /'.$info['f']); - } - if(isset($info['parms'])) { - $this->_out($info['parms']); - } - if(isset($info['trns']) and is_array($info['trns'])) { - $trns=''; - for($i=0;$i_out('/Mask ['.$trns.']'); - } - $this->_out('/Length '.strlen($info['data']).'>>'); - $this->_putstream($info['data']); - unset($this->images[$file]['data']); - $this->_out('endobj'); - //Palette - if($info['cs']=='Indexed') { - $this->_newobj(); - $pal=($this->compress) ? gzcompress($info['pal']) : $info['pal']; - $this->_out('<<'.$filter.'/Length '.strlen($pal).'>>'); - $this->_putstream($pal); - $this->_out('endobj'); - } - } - } - - /** - * _putxobjectdict - * @access protected - */ - function _putxobjectdict() { - foreach($this->images as $image) { - $this->_out('/I'.$image['i'].' '.$image['n'].' 0 R'); - } - } - - /** - * _putresourcedict - * @access protected - */ - function _putresourcedict(){ - $this->_out('/ProcSet [/PDF /Text /ImageB /ImageC /ImageI]'); - $this->_out('/Font <<'); - foreach($this->fonts as $font) { - $this->_out('/F'.$font['i'].' '.$font['n'].' 0 R'); - } - $this->_out('>>'); - $this->_out('/XObject <<'); - $this->_putxobjectdict(); - $this->_out('>>'); - } - - /** - * _putresources - * @access protected - */ - function _putresources() { - $this->_putfonts(); - $this->_putimages(); - //Resource dictionary - $this->offsets[2]=strlen($this->buffer); - $this->_out('2 0 obj'); - $this->_out('<<'); - $this->_putresourcedict(); - $this->_out('>>'); - $this->_out('endobj'); - $this->_putjavascript(); - $this->_putbookmarks(); - // encryption - if ($this->encrypted) { - $this->_newobj(); - $this->enc_obj_id = $this->n; - $this->_out('<<'); - $this->_putencryption(); - $this->_out('>>'); - $this->_out('endobj'); - } - } - - /** - * _putinfo - * Adds some meta information - * @access protected - */ - protected function _putinfo() { - $this->_out('/CreationDate ('.$this->_escape('D:'.date('YmdHis')).')'); - $this->_out('/ModDate ('.$this->_escape('D:'.date('YmdHis')).')'); - $this->_out('/Producer '.$this->_textstring(PDF_PRODUCER)); - if(!empty($this->title)) { - $this->_out('/Title '.$this->_textstring($this->title)); - } - if(!empty($this->subject)) { - $this->_out('/Subject '.$this->_textstring($this->subject)); - } - if(!empty($this->author)) { - $this->_out('/Author '.$this->_textstring($this->author)); - } - if(!empty($this->keywords)) { - $this->_out('/Keywords '.$this->_textstring($this->keywords)); - } - if(!empty($this->creator)) { - $this->_out('/Creator '.$this->_textstring($this->creator)); - } - } - - /** - * _putcatalog - * @access protected - */ - protected function _putcatalog() { - $this->_out('/Type /Catalog'); - $this->_out('/Pages 1 0 R'); - if($this->ZoomMode=='fullpage') { - $this->_out('/OpenAction [3 0 R /Fit]'); - } - elseif($this->ZoomMode=='fullwidth') { - $this->_out('/OpenAction [3 0 R /FitH null]'); - } - elseif($this->ZoomMode=='real') { - $this->_out('/OpenAction [3 0 R /XYZ null null 1]'); - } - elseif(!is_string($this->ZoomMode)) { - $this->_out('/OpenAction [3 0 R /XYZ null null '.($this->ZoomMode/100).']'); - } - if($this->LayoutMode=='single') { - $this->_out('/PageLayout /SinglePage'); - } - elseif($this->LayoutMode=='continuous') { - $this->_out('/PageLayout /OneColumn'); - } - elseif($this->LayoutMode=='two') { - $this->_out('/PageLayout /TwoColumnLeft'); - } - if (!empty($this->javascript)) { - $this->_out('/Names <n_js).' 0 R>>'); - } - if(count($this->outlines)>0) { - $this->_out('/Outlines '.$this->OutlineRoot.' 0 R'); - $this->_out('/PageMode /UseOutlines'); - } - if($this->rtl) { - $this->_out('/ViewerPreferences << /Direction /R2L >>'); - } - } - - /** - * _puttrailer - * @access protected - */ - protected function _puttrailer() { - $this->_out('/Size '.($this->n+1)); - $this->_out('/Root '.$this->n.' 0 R'); - $this->_out('/Info '.($this->n-1).' 0 R'); - if ($this->encrypted) { - $this->_out('/Encrypt '.$this->enc_obj_id.' 0 R'); - $this->_out('/ID [()()]'); - } - } - - /** - * _putheader - * @access protected - */ - function _putheader() { - $this->_out('%PDF-'.$this->PDFVersion); - } - - /** - * _enddoc - * @access protected - */ - protected function _enddoc() { - $this->_putheader(); - $this->_putpages(); - $this->_putresources(); - //Info - $this->_newobj(); - $this->_out('<<'); - $this->_putinfo(); - $this->_out('>>'); - $this->_out('endobj'); - //Catalog - $this->_newobj(); - $this->_out('<<'); - $this->_putcatalog(); - $this->_out('>>'); - $this->_out('endobj'); - //Cross-ref - $o=strlen($this->buffer); - $this->_out('xref'); - $this->_out('0 '.($this->n+1)); - $this->_out('0000000000 65535 f '); - for($i=1;$i<=$this->n;$i++) { - $this->_out(sprintf('%010d 00000 n ',$this->offsets[$i])); - } - //Trailer - $this->_out('trailer'); - $this->_out('<<'); - $this->_puttrailer(); - $this->_out('>>'); - $this->_out('startxref'); - $this->_out($o); - $this->_out('%%EOF'); - $this->state=3; - } - - /** - * _beginpage - * @access protected - */ - protected function _beginpage($orientation) { - $this->page++; - $this->pages[$this->page]=''; - $this->state=2; - if ($this->rtl) { - $this->x = $this->w - $this->rMargin; - } else { - $this->x = $this->lMargin; - } - $this->y = $this->tMargin; - $this->FontFamily=''; - //Page orientation - if(empty($orientation)) { - $orientation=$this->DefOrientation; - } - else { - $orientation=strtoupper($orientation{0}); - if($orientation!=$this->DefOrientation) { - $this->OrientationChanges[$this->page]=true; - } - } - if($orientation!=$this->CurOrientation) { - //Change orientation - if($orientation=='P') { - $this->wPt=$this->fwPt; - $this->hPt=$this->fhPt; - $this->w=$this->fw; - $this->h=$this->fh; - } - else { - $this->wPt=$this->fhPt; - $this->hPt=$this->fwPt; - $this->w=$this->fh; - $this->h=$this->fw; - } - $this->PageBreakTrigger=$this->h-$this->bMargin; - $this->CurOrientation=$orientation; - } - } - - /** - * End of page contents - * @access protected - */ - protected function _endpage() { - $this->state=1; - } - - /** - * Begin a new object - * @access protected - */ - protected function _newobj() { - $this->n++; - $this->offsets[$this->n]=strlen($this->buffer); - $this->_out($this->n.' 0 obj'); - } - - /** - * Underline text - * @param int $x X coordinate - * @param int $y Y coordinate - * @param string $txt text to underline - * @access protected - */ - protected function _dounderline($x, $y, $txt) { - $up = $this->CurrentFont['up']; - $ut = $this->CurrentFont['ut']; - $w = $this->GetStringWidth($txt) + $this->ws * substr_count($txt,' '); - return sprintf('%.2f %.2f %.2f %.2f re f', $x * $this->k, ($this->h - ($y - $up / 1000 * $this->FontSize)) * $this->k, $w * $this->k, -$ut / 1000 * $this->FontSizePt); - } - - - // REWRITTEN by Warren Sherliker wsherliker@gmail.com - // altered to allow compatibility with all sorts of image formats including gif. - // Can easily extend to work with others - // such as gd xbm etc. which are all supported by php 5+ - // (Requires GD library) - - /** - * Extract info from a JPEG file - * @param string $file image file to parse - * @return string - * @access protected - */ - protected function _parsejpg($file) { - if(!function_exists('imagecreatefromjpeg')) { - // GD is not installed, try legacy method - return $this->_legacyparsejpg($file); - } - $a=getimagesize($file); - if(empty($a)) { - $this->Error('Missing or incorrect image file: '.$file); - } - if($a[2]!=2) { - $this->Error('Not a JPEG file: '.$file); - } - $jpeg = imagecreatefromjpeg($file); - return $this->outputjpg($file, $jpeg); - } - - /** - * Extract info from a GIF file - * @param string $file image file to parse - * @return string - * @access protected - */ - protected function _parsegif($file) { - if(!function_exists('imagecreatefromgif')) { - // PDF doesn't support native GIF and GD is not installed - return false; - } - $a=getimagesize($file); - if(empty($a)) { - $this->Error('Missing or incorrect image file: '.$file); - } - if($a[2]!=1) { - $this->Error('Not a GIF file: '.$file); - } - // Temporary convert file to jpg and then delete this temp data file - $gif = imagecreatefromgif($file); - return $this->toJPEG($file, $gif); - } - - /** - * Extract info from a PNG file - * @param string $file image file to parse - * @return string - * @access protected - */ - protected function _parsepng($file) { - if(!function_exists('imagecreatefrompng')) { - // GD is not installed, try legacy method - return $this->_legacyparsepng($file); - } - $f=fopen($file,'rb'); - if(empty($f)) { - $this->Error('Can\'t open image file: '.$file); - } - //Check signature - if(fread($f,8)!=chr(137).'PNG'.chr(13).chr(10).chr(26).chr(10)) { - $this->Error('Not a PNG file: '.$file); - } - //Read header chunk - fread($f,4); - if(fread($f,4)!='IHDR') { - $this->Error('Incorrect PNG file: '.$file); - } - // Temporary convert file to jpg and then delete this temp data file - $a=getimagesize($file); - $png = imagecreatefrompng($file); - return $this->toJPEG($file, $png); - } - - /** - * Extract info from a JPEG file without using GD - * @param string $file image file to parse - * @return string - * @access protected - */ - protected function _legacyparsejpg($file) { - $a=GetImageSize($file); - if(empty($a)) { - $this->Error('Missing or incorrect image file: '.$file); - } - if($a[2]!=2) { - $this->Error('Not a JPEG file: '.$file); - } - if(!isset($a['channels']) or $a['channels']==3) { - $colspace='DeviceRGB'; - } - elseif($a['channels']==4) { - $colspace='DeviceCMYK'; - } - else { - $colspace='DeviceGray'; - } - $bpc=isset($a['bits']) ? $a['bits'] : 8; - //Read whole file - $f=fopen($file,'rb'); - $data=''; - while(!feof($f)) { - $data.=fread($f,4096); - } - fclose($f); - return array('w'=>$a[0],'h'=>$a[1],'cs'=>$colspace,'bpc'=>$bpc,'f'=>'DCTDecode','data'=>$data); - } - - /** - * Extract info from a PNG file without using GD - * @param string $file image file to parse - * @return string - * @access protected - */ - protected function _legacyparsepng($file) { - $f=fopen($file,'rb'); - if(empty($f)) { - $this->Error('Can\'t open image file: '.$file); - } - //Check signature - if(fread($f,8)!=chr(137).'PNG'.chr(13).chr(10).chr(26).chr(10)) { - $this->Error('Not a PNG file: '.$file); - } - //Read header chunk - fread($f,4); - if(fread($f,4)!='IHDR') { - $this->Error('Incorrect PNG file: '.$file); - } - $w=$this->_freadint($f); - $h=$this->_freadint($f); - $bpc=ord(fread($f,1)); - if($bpc>8) { - $this->Error('16-bit depth not supported: '.$file); - } - $ct=ord(fread($f,1)); - if($ct==0) { - $colspace='DeviceGray'; - } - elseif($ct==2) { - $colspace='DeviceRGB'; - } - elseif($ct==3) { - $colspace='Indexed'; - } - else { - $this->Error('Alpha channel not supported: '.$file); - } - if(ord(fread($f,1))!=0) { - $this->Error('Unknown compression method: '.$file); - } - if(ord(fread($f,1))!=0) { - $this->Error('Unknown filter method: '.$file); - } - if(ord(fread($f,1))!=0) { - $this->Error('Interlacing not supported: '.$file); - } - fread($f,4); - $parms='/DecodeParms <>'; - //Scan chunks looking for palette, transparency and image data - $pal=''; - $trns=''; - $data=''; - do { - $n=$this->_freadint($f); - $type=fread($f,4); - if($type=='PLTE') { - //Read palette - $pal=fread($f,$n); - fread($f,4); - } - elseif($type=='tRNS') { - //Read transparency info - $t=fread($f,$n); - if($ct==0) { - $trns=array(ord(substr($t,1,1))); - } - elseif($ct==2) { - $trns=array(ord(substr($t,1,1)),ord(substr($t,3,1)),ord(substr($t,5,1))); - } - else { - $pos=strpos($t,chr(0)); - if($pos!==false) { - $trns=array($pos); - } - } - fread($f,4); - } - elseif($type=='IDAT') { - //Read image data block - $data.=fread($f,$n); - fread($f,4); - } - elseif($type=='IEND') { - break; - } - else { - fread($f,$n+4); - } - } - while($n); - if($colspace=='Indexed' and empty($pal)) { - $this->Error('Missing palette in '.$file); - } - fclose($f); - return array('w'=>$w, 'h'=>$h, 'cs'=>$colspace, 'bpc'=>$bpc, 'f'=>'FlateDecode', 'parms'=>$parms, 'pal'=>$pal, 'trns'=>$trns, 'data'=>$data); - } - - /** - * Convert the loaded php image to a JPEG and then return a structure for the PDF creator. - * @param string $file Image file name. - * @param image $image Image object. - * return image JPEG image object. - * @access protected - */ - protected function toJPEG($file, $image) { - if ($image) { - // output - $tempname = tempnam(K_PATH_CACHE,'jpg'); - imagejpeg($image, $tempname, 100); - imagedestroy($image); - $retvars = $this->outputjpg($tempname); - // tidy up by removing temporary image - unlink($tempname); - return $retvars; - } else { - $this->Error('Can\'t open image file: '.$file); - } - } - - /** - * Get a JPEG filename and return a structure for the PDF creator. - * @param string $filename JPEG file name. - * @return array structure containing the image data - * @access protected - */ - protected function outputjpg($filename) { - $a=getimagesize($filename); - - if(!isset($a['channels']) or $a['channels']==3) { - $colspace='DeviceRGB'; - } - elseif($a['channels']==4) { - $colspace='DeviceCMYK'; - } - else { - $colspace='DeviceGray'; - } - $bpc=isset($a['bits']) ? $a['bits'] : 8; - //Read whole file - - $f=fopen($filename,'rb'); - $data=''; - while(!feof($f)) { - $data.=fread($f,4096); - } - fclose($f); - - return array('w'=>$a[0],'h'=>$a[1],'cs'=>$colspace,'bpc'=>$bpc,'f'=>'DCTDecode','data'=>$data); - } - - /// END OF REWRITE BY Warren Sherliker wsherliker@gmail.com - - /** - * Read a 4-byte integer from file - * @param string $f file name. - * @return 4-byte integer - * @access protected - */ - protected function _freadint($f) { - $a=unpack('Ni',fread($f,4)); - return $a['i']; - } - - /** - * Format a text string for meta information - * @param string $s string to escape. - * @return string escaped string. - * @access protected - */ - protected function _textstring($s) { - if($this->isunicode) { - //Convert string to UTF-16BE - $s = $this->UTF8ToUTF16BE($s, true); - } - if ($this->encrypted) { - $s = $this->_RC4($this->_objectkey($this->n), $s); - } - return '('. $this->_escape($s).')'; - } - - /** - * Format an URI string - * @param string $s string to escape. - * @return string escaped string. - * @access protected - */ - protected function _uristring($s) { - if ($this->encrypted) { - $s = $this->_RC4($this->_objectkey($this->n), $s); - } - return '('.$this->_escape($s).')'; - } - - /** - * Format a text string - * @param string $s string to escape. - * @return string escaped string. - * @access protected - */ - protected function _escapetext($s) { - if($this->isunicode) { - //Convert string to UTF-16BE and reverse RTL language - $s = $this->utf8StrRev($s, false, $this->tmprtl); - } - return $this->_escape($s); - } - - /** - * Add \ before \, ( and ) - * @param string $s string to escape. - * @return string escaped string. - * @access protected - */ - protected function _escape($s) { - // the chr(13) substitution fixes the Bugs item #1421290. - return strtr($s, array(')' => '\\)', '(' => '\\(', '\\' => '\\\\', chr(13) => '\r')); - } - - /** - * Output a stream. - * @param string $s string to output. - * @access protected - */ - protected function _putstream($s) { - if ($this->encrypted) { - $s = $this->_RC4($this->_objectkey($this->n), $s); - } - $this->_out('stream'); - $this->_out($s); - $this->_out('endstream'); - } - - /** - * Output a string to the document. - * @param string $s string to output. - * @access protected - */ - protected function _out($s) { - if($this->state==2) { - $this->pages[$this->page] .= $s."\n"; - } - else { - $this->buffer .= $s."\n"; - } - } - - /** - * Adds unicode fonts.
    - * Based on PDF Reference 1.3 (section 5) - * @access protected - * @author Nicola Asuni - * @since 1.52.0.TC005 (2005-01-05) - */ - protected function _puttruetypeunicode($font) { - // Type0 Font - // A composite font composed of other fonts, organized hierarchically - $this->_newobj(); - $this->_out('<_out('/Subtype /Type0'); - $this->_out('/BaseFont /'.$font['name'].''); - $this->_out('/Encoding /Identity-H'); //The horizontal identity mapping for 2-byte CIDs; may be used with CIDFonts using any Registry, Ordering, and Supplement values. - $this->_out('/DescendantFonts ['.($this->n + 1).' 0 R]'); - $this->_out('/ToUnicode '.($this->n + 2).' 0 R'); - $this->_out('>>'); - $this->_out('endobj'); - - // CIDFontType2 - // A CIDFont whose glyph descriptions are based on TrueType font technology - $this->_newobj(); - $this->_out('<_out('/Subtype /CIDFontType2'); - $this->_out('/BaseFont /'.$font['name'].''); - $this->_out('/CIDSystemInfo '.($this->n + 2).' 0 R'); - $this->_out('/FontDescriptor '.($this->n + 3).' 0 R'); - if (isset($font['desc']['MissingWidth'])){ - $this->_out('/DW '.$font['desc']['MissingWidth'].''); // The default width for glyphs in the CIDFont MissingWidth - } - $w = ""; - foreach ($font['cw'] as $cid => $width) { - $w .= ''.$cid.' ['.$width.'] '; // define a specific width for each individual CID - } - $this->_out('/W ['.$w.']'); // A description of the widths for the glyphs in the CIDFont - $this->_out('/CIDToGIDMap '.($this->n + 4).' 0 R'); - $this->_out('>>'); - $this->_out('endobj'); - - // ToUnicode - // is a stream object that contains the definition of the CMap - // (PDF Reference 1.3 chap. 5.9) - $this->_newobj(); - $this->_out('<>'); - $this->_out('stream'); - $this->_out('/CIDInit /ProcSet findresource begin'); - $this->_out('12 dict begin'); - $this->_out('begincmap'); - $this->_out('/CIDSystemInfo'); - $this->_out('<_out('/Ordering (UCS)'); - $this->_out('/Supplement 0'); - $this->_out('>> def'); - $this->_out('/CMapName /Adobe-Identity-UCS def'); - $this->_out('/CMapType 2 def'); - $this->_out('1 begincodespacerange'); - $this->_out('<0000> '); - $this->_out('endcodespacerange'); - $this->_out('1 beginbfrange'); - $this->_out('<0000> <0000>'); - $this->_out('endbfrange'); - $this->_out('endcmap'); - $this->_out('CMapName currentdict /CMap defineresource pop'); - $this->_out('end'); - $this->_out('end'); - $this->_out('endstream'); - $this->_out('endobj'); - - // CIDSystemInfo dictionary - // A dictionary containing entries that define the character collection of the CIDFont. - $this->_newobj(); - $this->_out('<_out('/Ordering (UCS)'); // A string that uniquely names a character collection issued by a specific registry - $this->_out('/Supplement 0'); // The supplement number of the character collection. - $this->_out('>>'); - $this->_out('endobj'); - - // Font descriptor - // A font descriptor describing the CIDFont default metrics other than its glyph widths - $this->_newobj(); - $this->_out('<_out('/FontName /'.$font['name']); - foreach ($font['desc'] as $key => $value) { - $this->_out('/'.$key.' '.$value); - } - if ($font['file']) { - // A stream containing a TrueType font program - $this->_out('/FontFile2 '.$this->FontFiles[$font['file']]['n'].' 0 R'); - } - $this->_out('>>'); - $this->_out('endobj'); - - // Embed CIDToGIDMap - // A specification of the mapping from CIDs to glyph indices - $this->_newobj(); - $ctgfile = $this->_getfontpath().strtolower($font['ctg']); - if(!file_exists($ctgfile)) { - $this->Error('Font file not found: '.$ctgfile); - } - $size = filesize($ctgfile); - $this->_out('<_out('/Filter /FlateDecode'); - } - $this->_out('>>'); - $this->_putstream(file_get_contents($ctgfile)); - $this->_out('endobj'); - } - - /** - * Converts UTF-8 strings to codepoints array.
    - * Invalid byte sequences will be replaced with 0xFFFD (replacement character)
    - * Based on: http://www.faqs.org/rfcs/rfc3629.html - *
    -		 * 	  Char. number range  |        UTF-8 octet sequence
    -		 *       (hexadecimal)    |              (binary)
    -		 *    --------------------+-----------------------------------------------
    -		 *    0000 0000-0000 007F | 0xxxxxxx
    -		 *    0000 0080-0000 07FF | 110xxxxx 10xxxxxx
    -		 *    0000 0800-0000 FFFF | 1110xxxx 10xxxxxx 10xxxxxx
    -		 *    0001 0000-0010 FFFF | 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx
    -		 *    ---------------------------------------------------------------------
    -		 *
    -		 *   ABFN notation:
    -		 *   ---------------------------------------------------------------------
    -		 *   UTF8-octets = *( UTF8-char )
    -		 *   UTF8-char   = UTF8-1 / UTF8-2 / UTF8-3 / UTF8-4
    -		 *   UTF8-1      = %x00-7F
    -		 *   UTF8-2      = %xC2-DF UTF8-tail
    -		 *
    -		 *   UTF8-3      = %xE0 %xA0-BF UTF8-tail / %xE1-EC 2( UTF8-tail ) /
    -		 *                 %xED %x80-9F UTF8-tail / %xEE-EF 2( UTF8-tail )
    -		 *   UTF8-4      = %xF0 %x90-BF 2( UTF8-tail ) / %xF1-F3 3( UTF8-tail ) /
    -		 *                 %xF4 %x80-8F 2( UTF8-tail )
    -		 *   UTF8-tail   = %x80-BF
    -		 *   ---------------------------------------------------------------------
    -		 * 
    - * @param string $str string to process. - * @return array containing codepoints (UTF-8 characters values) - * @access protected - * @author Nicola Asuni - * @since 1.53.0.TC005 (2005-01-05) - */ - protected function UTF8StringToArray($str) { - if(!$this->isunicode) { - return $str; // string is not in unicode - } - $unicode = array(); // array containing unicode values - $bytes = array(); // array containing single character byte sequences - $numbytes = 1; // number of octetc needed to represent the UTF-8 character - - $str .= ""; // force $str to be a string - $length = strlen($str); - - for($i = 0; $i < $length; $i++) { - $char = ord($str{$i}); // get one string character at time - if(count($bytes) == 0) { // get starting octect - if ($char <= 0x7F) { - $unicode[] = $char; // use the character "as is" because is ASCII - $numbytes = 1; - } elseif (($char >> 0x05) == 0x06) { // 2 bytes character (0x06 = 110 BIN) - $bytes[] = ($char - 0xC0) << 0x06; - $numbytes = 2; - } elseif (($char >> 0x04) == 0x0E) { // 3 bytes character (0x0E = 1110 BIN) - $bytes[] = ($char - 0xE0) << 0x0C; - $numbytes = 3; - } elseif (($char >> 0x03) == 0x1E) { // 4 bytes character (0x1E = 11110 BIN) - $bytes[] = ($char - 0xF0) << 0x12; - $numbytes = 4; - } else { - // use replacement character for other invalid sequences - $unicode[] = 0xFFFD; - $bytes = array(); - $numbytes = 1; - } - } elseif (($char >> 0x06) == 0x02) { // bytes 2, 3 and 4 must start with 0x02 = 10 BIN - $bytes[] = $char - 0x80; - if (count($bytes) == $numbytes) { - // compose UTF-8 bytes to a single unicode value - $char = $bytes[0]; - for($j = 1; $j < $numbytes; $j++) { - $char += ($bytes[$j] << (($numbytes - $j - 1) * 0x06)); - } - if ((($char >= 0xD800) AND ($char <= 0xDFFF)) OR ($char >= 0x10FFFF)) { - /* The definition of UTF-8 prohibits encoding character numbers between - U+D800 and U+DFFF, which are reserved for use with the UTF-16 - encoding form (as surrogate pairs) and do not directly represent - characters. */ - $unicode[] = 0xFFFD; // use replacement character - } - else { - $unicode[] = $char; // add char to array - } - // reset data for next char - $bytes = array(); - $numbytes = 1; - } - } else { - // use replacement character for other invalid sequences - $unicode[] = 0xFFFD; - $bytes = array(); - $numbytes = 1; - } - } - return $unicode; - } - - /** - * Converts UTF-8 strings to UTF16-BE.
    - * @param string $str string to process. - * @param boolean $setbom if true set the Byte Order Mark (BOM = 0xFEFF) - * @return string - * @access protected - * @author Nicola Asuni - * @since 1.53.0.TC005 (2005-01-05) - * @uses UTF8StringToArray(), arrUTF8ToUTF16BE() - */ - protected function UTF8ToUTF16BE($str, $setbom=true) { - if(!$this->isunicode) { - return $str; // string is not in unicode - } - $unicode = $this->UTF8StringToArray($str); // array containing UTF-8 unicode values - return $this->arrUTF8ToUTF16BE($unicode, $setbom); - } - - /** - * Converts array of UTF-8 characters to UTF16-BE string.
    - * Based on: http://www.faqs.org/rfcs/rfc2781.html - *
    -		 *   Encoding UTF-16:
    -		 * 
    - 		 *   Encoding of a single character from an ISO 10646 character value to
    -		 *    UTF-16 proceeds as follows. Let U be the character number, no greater
    -		 *    than 0x10FFFF.
    -		 * 
    -		 *    1) If U < 0x10000, encode U as a 16-bit unsigned integer and
    -		 *       terminate.
    -		 * 
    -		 *    2) Let U' = U - 0x10000. Because U is less than or equal to 0x10FFFF,
    -		 *       U' must be less than or equal to 0xFFFFF. That is, U' can be
    -		 *       represented in 20 bits.
    -		 * 
    -		 *    3) Initialize two 16-bit unsigned integers, W1 and W2, to 0xD800 and
    -		 *       0xDC00, respectively. These integers each have 10 bits free to
    -		 *       encode the character value, for a total of 20 bits.
    -		 * 
    -		 *    4) Assign the 10 high-order bits of the 20-bit U' to the 10 low-order
    -		 *       bits of W1 and the 10 low-order bits of U' to the 10 low-order
    -		 *       bits of W2. Terminate.
    -		 * 
    -		 *    Graphically, steps 2 through 4 look like:
    -		 *    U' = yyyyyyyyyyxxxxxxxxxx
    -		 *    W1 = 110110yyyyyyyyyy
    -		 *    W2 = 110111xxxxxxxxxx
    -		 * 
    - * @param array $unicode array containing UTF-8 unicode values - * @param boolean $setbom if true set the Byte Order Mark (BOM = 0xFEFF) - * @return string - * @access protected - * @author Nicola Asuni - * @since 2.1.000 (2008-01-08) - * @see UTF8ToUTF16BE() - */ - protected function arrUTF8ToUTF16BE($unicode, $setbom=true) { - $outstr = ""; // string to be returned - if ($setbom) { - $outstr .= "\xFE\xFF"; // Byte Order Mark (BOM) - } - foreach($unicode as $char) { - if($char == 0xFFFD) { - $outstr .= "\xFF\xFD"; // replacement character - } elseif ($char < 0x10000) { - $outstr .= chr($char >> 0x08); - $outstr .= chr($char & 0xFF); - } else { - $char -= 0x10000; - $w1 = 0xD800 | ($char >> 0x10); - $w2 = 0xDC00 | ($char & 0x3FF); - $outstr .= chr($w1 >> 0x08); - $outstr .= chr($w1 & 0xFF); - $outstr .= chr($w2 >> 0x08); - $outstr .= chr($w2 & 0xFF); - } - } - return $outstr; - } - // ==================================================== - - /** - * Set header font. - * @param array $font font - * @since 1.1 - */ - public function setHeaderFont($font) { - $this->header_font = $font; - } - - /** - * Set footer font. - * @param array $font font - * @since 1.1 - */ - public function setFooterFont($font) { - $this->footer_font = $font; - } - - /** - * Set language array. - * @param array $language - * @since 1.1 - */ - public function setLanguageArray($language) { - $this->l = $language; - $this->rtl = $this->l['a_meta_dir']=='rtl' ? true : false; - } - - /** - * Set document barcode. - * @param string $bc barcode - */ - public function setBarcode($bc="") { - $this->barcode = $bc; - } - - /** - * Print Barcode. - * @param int $x x position in user units - * @param int $y y position in user units - * @param int $w width in user units - * @param int $h height position in user units - * @param string $type type of barcode (I25, C128A, C128B, C128C, C39) - * @param string $style barcode style - * @param string $font font for text - * @param int $xres x resolution - * @param string $code code to print - */ - public function writeBarcode($x, $y, $w, $h, $type, $style, $font, $xres, $code) { - require_once(dirname(__FILE__)."/barcode/barcode.php"); - require_once(dirname(__FILE__)."/barcode/i25object.php"); - require_once(dirname(__FILE__)."/barcode/c39object.php"); - require_once(dirname(__FILE__)."/barcode/c128aobject.php"); - require_once(dirname(__FILE__)."/barcode/c128bobject.php"); - require_once(dirname(__FILE__)."/barcode/c128cobject.php"); - - if (empty($code)) { - return; - } - - if (empty($style)) { - $style = BCS_ALIGN_LEFT; - $style |= BCS_IMAGE_PNG; - $style |= BCS_TRANSPARENT; - //$style |= BCS_BORDER; - //$style |= BCS_DRAW_TEXT; - //$style |= BCS_STRETCH_TEXT; - //$style |= BCS_REVERSE_COLOR; - } - if (empty($font)) {$font = BCD_DEFAULT_FONT;} - if (empty($xres)) {$xres = BCD_DEFAULT_XRES;} - - $scale_factor = 1.5 * $xres * $this->k; - $bc_w = round($w * $scale_factor); //width in points - $bc_h = round($h * $scale_factor); //height in points - - switch (strtoupper($type)) { - case "I25": { - $obj = new I25Object($bc_w, $bc_h, $style, $code); - break; - } - case "C128A": { - $obj = new C128AObject($bc_w, $bc_h, $style, $code); - break; - } - default: - case "C128B": { - $obj = new C128BObject($bc_w, $bc_h, $style, $code); - break; - } - case "C128C": { - $obj = new C128CObject($bc_w, $bc_h, $style, $code); - break; - } - case "C39": { - $obj = new C39Object($bc_w, $bc_h, $style, $code); - break; - } - } - - $obj->SetFont($font); - $obj->DrawObject($xres); - - //use a temporary file.... - $tmpName = tempnam(K_PATH_CACHE,'img'); - imagepng($obj->getImage(), $tmpName); - $this->Image($tmpName, $x, $y, $w, $h, 'png'); - $obj->DestroyObject(); - unset($obj); - unlink($tmpName); - } - - /** - * Returns the PDF data. - */ - public function getPDFData() { - if($this->state < 3) { - $this->Close(); - } - return $this->buffer; - } - - // --- HTML PARSER FUNCTIONS --- - - /** - * Allows to preserve some HTML formatting.
    - * Supports: h1, h2, h3, h4, h5, h6, b, u, i, a, img, p, br, strong, em, font, blockquote, li, ul, ol, hr, td, th, tr, table, sup, sub, small - * @param string $html text to display - * @param boolean $ln if true add a new line after text (default = true) - * @param int $fill Indicates if the background must be painted (1) or transparent (0). Default value: 0. - * @param boolean $reseth if true reset the last cell height (default false). - * @param boolean $cell if true add the default cMargin space to each Write. - */ - public function writeHTML($html, $ln=true, $fill=0, $reseth=false, $cell=false) { - - // store some variables - $html=strip_tags($html,"




      1. "); //remove all unsupported tags - //replace carriage returns, newlines and tabs - $repTable = array("\t" => " ", "\n" => " ", "\r" => " ", "\0" => " ", "\x0B" => " "); - $html = strtr($html, $repTable); - $pattern = '/(<[^>]+>)/Uu'; - $a = preg_split($pattern, $html, -1, PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY); //explodes the string - - if ((empty($this->lasth))OR ($reseth)) { - //set row height - $this->lasth = $this->FontSize * K_CELL_HEIGHT_RATIO; - } - - foreach($a as $key=>$element) { - if (!preg_match($pattern, $element)) { - //Text - if($this->HREF) { - $this->addHtmlLink($this->HREF, $element, $fill); - } elseif($this->tdbegin) { - if((strlen(trim($element)) > 0) AND ($element != " ")) { - $this->Cell($this->tdwidth, $this->tdheight, $this->unhtmlentities($element), $this->tableborder, '', $this->tdalign, $this->tdbgcolor); - } elseif($element == " ") { - $this->Cell($this->tdwidth, $this->tdheight, '', $this->tableborder, '', $this->tdalign, $this->tdbgcolor); - } - } else { - - $ctmpmargin = $this->cMargin; - if(!$cell) { - $this->cMargin = 0; - } - $this->Write($this->lasth, stripslashes($this->unhtmlentities($element)), '', $fill, 0); - $this->cMargin = $ctmpmargin; - } - } else { - $element = substr($element, 1, -1); - //Tag - if($element{0}=='/') { - $this->closedHTMLTagHandler(strtolower(substr($element, 1))); - } - else { - //Extract attributes - // get tag name - preg_match('/([a-zA-Z0-9]*)/', $element, $tag); - $tag = strtolower($tag[0]); - // get attributes - preg_match_all('/([^=\s]*)=["\']?([^"\']*)["\']?/', $element, $attr_array, PREG_PATTERN_ORDER); - $attr = array(); // reset attribute array - while(list($id,$name)=each($attr_array[1])) { - $attr[strtolower($name)] = $attr_array[2][$id]; - } - $this->openHTMLTagHandler($tag, $attr, $fill); - } - } - } - if ($ln) { - $this->Ln($this->lasth); - } - } - - /** - * Prints a cell (rectangular area) with optional borders, background color and html text string. The upper-left corner of the cell corresponds to the current position. After the call, the current position moves to the right or to the next line.
        - * If automatic page breaking is enabled and the cell goes beyond the limit, a page break is done before outputting. - * @param float $w Cell width. If 0, the cell extends up to the right margin. - * @param float $h Cell minimum height. The cell extends automatically if needed. - * @param float $x upper-left corner X coordinate - * @param float $y upper-left corner Y coordinate - * @param string $html html text to print. Default value: empty string. - * @param mixed $border Indicates if borders must be drawn around the cell. The value can be either a number:
        • 0: no border (default)
        • 1: frame
        or a string containing some or all of the following characters (in any order):
        • L: left
        • T: top
        • R: right
        • B: bottom
        - * @param int $ln Indicates where the current position should go after the call. Possible values are:
        • 0: to the right (or left for RTL language)
        • 1: to the beginning of the next line
        • 2: below
        - Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: 0. - * @param int $fill Indicates if the cell background must be painted (1) or transparent (0). Default value: 0. - * @param boolean $reseth if true reset the last cell height (default false). - * @see Cell() - */ - public function writeHTMLCell($w, $h, $x, $y, $html='', $border=0, $ln=0, $fill=0, $reseth=false) { - - if ((empty($this->lasth))OR ($reseth)) { - //set row height - $this->lasth = $this->FontSize * K_CELL_HEIGHT_RATIO; - } - - // get current page number - $startpage = $this->page; - - if (!empty($y)) { - $this->SetY($y); - } else { - $y = $this->GetY(); - } - if (!empty($x)) { - $this->SetX($x); - } else { - $x = $this->GetX(); - } - - if(empty($w)) { - if ($this->rtl) { - $w = $this->x - $this->lMargin; - } else { - $w = $this->w - $this->rMargin - $this->x; - } - } - - // store original margin values - $lMargin = $this->lMargin; - $rMargin = $this->rMargin; - - // set new margin values - if ($this->rtl) { - $this->SetLeftMargin($this->x - $w); - $this->SetRightMargin($this->w - $this->x); - } else { - $this->SetLeftMargin($this->x); - $this->SetRightMargin($this->w - $this->x - $w); - } - - // calculate remaining vertical space on first page ($startpage) - $restspace = $this->getPageHeight() - $this->GetY() - $this->getBreakMargin(); - - // Write HTML text - $this->writeHTML($html, true, $fill, $reseth, true); - - // Get end-of-text Y position - $currentY = $this->GetY(); - // get latest page number - $endpage = $this->page; - - if (!empty($border)) { - // check if a new page has been created - if ($endpage > $startpage) { - // design borders around HTML cells. - for ($page=$startpage; $page<=$endpage; $page++) { - $this->page = $page; - if ($page==$startpage) { - $this->SetY($this->getPageHeight() - $restspace - $this->getBreakMargin()); - $h = $restspace - 1; - } elseif ($page==$endpage) { - $this->SetY($this->tMargin); // put cursor at the beginning of text - $h = $currentY - $this->tMargin; - } else { - $this->SetY($this->tMargin); // put cursor at the beginning of text - $h = $this->getPageHeight() - $this->tMargin - $this->getBreakMargin(); - } - $this->Cell($w, $h, "", $border, 1, '', 0); - } - } else { - $h = max($h, ($currentY - $y)); - $this->SetY($y); // put cursor at the beginning of text - // design a cell around the text - $this->Cell($w, $h, "", $border, 1, '', 0); - } - } - - // restore original margin values - $this->SetLeftMargin($lMargin); - $this->SetRightMargin($rMargin); - - - if($ln>0) { - //Go to the beginning of the next line - $this->SetY($currentY); - if($ln == 2) { - $this->SetX($x + $w); - } - } else { - // go left or right by case - $this->page = $startpage; - $this->y = $y; - $this->SetX($x + $w); - } - - } - - /** - * Process opening tags. - * @param string $tag tag name (in uppercase) - * @param string $attr tag attribute (in uppercase) - * @param int $fill Indicates if the cell background must be painted (1) or transparent (0). Default value: 0. - * @access private - */ - private function openHTMLTagHandler($tag, $attr, $fill=0) { - // check for text direction attribute - if (isset($attr['dir'])) { - $this->tmprtl = $attr['dir']=='rtl' ? 'R' : 'L'; - } else { - $this->tmprtl = false; - } - //Opening tag - switch($tag) { - case 'table': { - if ((isset($attr['border'])) AND ($attr['border'] != '')) { - $this->tableborder = $attr['border']; - } - else { - $this->tableborder = 0; - } - break; - } - case 'tr': { - break; - } - case 'td': - case 'th': { - if ((isset($attr['width'])) AND ($attr['width'] != '')) { - $this->tdwidth = ($attr['width']/4); - } - else { - $this->tdwidth = (($this->w - $this->lMargin - $this->rMargin) / $this->default_table_columns); - } - if ((isset($attr['height'])) AND ($attr['height'] != '')) { - $this->tdheight=($attr['height'] / $this->k); - } - else { - $this->tdheight = $this->lasth; - } - if ((isset($attr['align'])) AND ($attr['align'] != '')) { - switch ($attr['align']) { - case 'center': { - $this->tdalign = "C"; - break; - } - case 'right': { - $this->tdalign = "R"; - break; - } - default: - case 'left': { - $this->tdalign = "L"; - break; - } - } - } else { - if($this->rtl) { - $this->tdalign = "R"; - } else { - $this->tdalign = "L"; - } - } - if ((isset($attr['bgcolor'])) AND ($attr['bgcolor'] != '')) { - $coul = $this->convertColorHexToDec($attr['bgcolor']); - $this->SetFillColor($coul['R'], $coul['G'], $coul['B']); - $this->tdbgcolor=true; - } - $this->tdbegin=true; - break; - } - case 'hr': { - $this->Ln(); - if ((isset($attr['width'])) AND ($attr['width'] != '')) { - $hrWidth = $attr['width']; - } - else { - $hrWidth = $this->w - $this->lMargin - $this->rMargin; - } - $x = $this->GetX(); - $y = $this->GetY(); - $this->GetLineWidth(); - $prevlinewidth = $this->SetLineWidth(0.2); - $this->Line($x, $y, $x + $hrWidth, $y); - $this->SetLineWidth($prevlinewidth); - $this->Ln(); - break; - } - case 'strong': { - $this->setStyle('b', true); - break; - } - case 'em': { - $this->setStyle('i', true); - break; - } - case 'b': - case 'i': - case 'u': { - $this->setStyle($tag, true); - break; - } - case 'a': { - $this->HREF = $attr['href']; - break; - } - case 'img': { - if(isset($attr['src'])) { - // replace relative path with real server path - if ($attr['src'][0] == '/') { - $attr['src'] = $_SERVER['DOCUMENT_ROOT'].$attr['src']; - } - $attr['src'] = str_replace(K_PATH_URL, K_PATH_MAIN, $attr['src']); - if(!isset($attr['width'])) { - $attr['width'] = 0; - } - if(!isset($attr['height'])) { - $attr['height'] = 0; - } - if(!isset($attr['align'])) { - $align = 'N'; - } else { - switch($attr['align']) { - case 'top':{ - $align = 'T'; - break; - } - case 'middle':{ - $align = 'M'; - break; - } - case 'bottom':{ - $align = 'B'; - break; - } - default:{ - $align = 'N'; - break; - } - } - } - $this->Image($attr['src'], $this->GetX(),$this->GetY(), $this->pixelsToMillimeters($attr['width']), $this->pixelsToMillimeters($attr['height']), '', '', $align); - - } - break; - } - case 'ul': { - $this->listordered = false; - $this->listcount = 0; - break; - } - case 'ol': { - $this->listordered = true; - $this->listcount = 0; - break; - } - case 'li': { - $this->Ln(); - if ($this->listordered) { - if (isset($attr['value'])) { - $this->listcount = intval($attr['value']); - } - $this->lispacer = " ".(++$this->listcount).". "; - } else { - //unordered list simbol - $this->lispacer = " - "; - } - $rtldir = $this->tmprtl; - $this->tmprtl = false; - $this->Write($this->lasth, $this->lispacer, '', $fill); - $this->tmprtl = $rtldir; - break; - } - case 'blockquote': - case 'br': { - $this->Ln(); - if(strlen($this->lispacer) > 0) { - if ($this->rtl) { - $this->x -= $this->GetStringWidth($this->lispacer); - } else { - $this->x += $this->GetStringWidth($this->lispacer); - } - } - break; - } - case 'p': { - $this->Ln(); - $this->Ln(); - break; - } - case 'sup': { - $currentFontSize = $this->FontSize; - $this->tempfontsize = $this->FontSizePt; - $this->SetFontSize($this->FontSizePt * K_SMALL_RATIO); - $this->SetXY($this->GetX(), $this->GetY() - (($currentFontSize - $this->FontSize)*(K_SMALL_RATIO))); - break; - } - case 'sub': { - $currentFontSize = $this->FontSize; - $this->tempfontsize = $this->FontSizePt; - $this->SetFontSize($this->FontSizePt * K_SMALL_RATIO); - $this->SetXY($this->GetX(), $this->GetY() + (($currentFontSize - $this->FontSize)*(K_SMALL_RATIO))); - break; - } - case 'small': { - $currentFontSize = $this->FontSize; - $this->tempfontsize = $this->FontSizePt; - $this->SetFontSize($this->FontSizePt * K_SMALL_RATIO); - $this->SetXY($this->GetX(), $this->GetY() + (($currentFontSize - $this->FontSize)/3)); - break; - } - case 'font': { - if (isset($attr['color']) AND $attr['color']!='') { - $coul = $this->convertColorHexToDec($attr['color']); - $this->SetTextColor($coul['R'],$coul['G'],$coul['B']); - $this->issetcolor=true; - } - if (isset($attr['face']) and in_array(strtolower($attr['face']), $this->fontlist)) { - $this->SetFont(strtolower($attr['face'])); - $this->issetfont=true; - } - if (isset($attr['size'])) { - $headsize = intval($attr['size']); - } else { - $headsize = 0; - } - $currentFontSize = $this->FontSize; - $this->tempfontsize = $this->FontSizePt; - $this->SetFontSize($this->FontSizePt + $headsize); - $this->lasth = $this->FontSize * K_CELL_HEIGHT_RATIO; - break; - } - case 'h1': - case 'h2': - case 'h3': - case 'h4': - case 'h5': - case 'h6': { - $headsize = (4 - substr($tag, 1)) * 2; - $currentFontSize = $this->FontSize; - $this->tempfontsize = $this->FontSizePt; - $this->SetFontSize($this->FontSizePt + $headsize); - $this->setStyle('b', true); - $this->lasth = $this->FontSize * K_CELL_HEIGHT_RATIO; - break; - } - } - } - - /** - * Process closing tags. - * @param string $tag tag name (in uppercase) - * @access private - */ - private function closedHTMLTagHandler($tag) { - //Closing tag - switch($tag) { - case 'td': - case 'th': { - $this->tdbegin = false; - $this->tdwidth = 0; - $this->tdheight = 0; - if($this->rtl) { - $this->tdalign = "R"; - } else { - $this->tdalign = "L"; - } - $this->tdbgcolor = false; - $this->SetFillColor($this->prevFillColor[0], $this->prevFillColor[1], $this->prevFillColor[2]); - break; - } - case 'tr': { - $this->Ln(); - break; - } - case 'table': { - $this->tableborder=0; - break; - } - case 'strong': { - $this->setStyle('b', false); - break; - } - case 'em': { - $this->setStyle('i', false); - break; - } - case 'b': - case 'i': - case 'u': { - $this->setStyle($tag, false); - break; - } - case 'a': { - $this->HREF = ''; - break; - } - case 'sup': { - $currentFontSize = $this->FontSize; - $this->SetFontSize($this->tempfontsize); - $this->tempfontsize = $this->FontSizePt; - $this->SetXY($this->GetX(), $this->GetY() - (($currentFontSize - $this->FontSize)*(K_SMALL_RATIO))); - break; - } - case 'sub': { - $currentFontSize = $this->FontSize; - $this->SetFontSize($this->tempfontsize); - $this->tempfontsize = $this->FontSizePt; - $this->SetXY($this->GetX(), $this->GetY() + (($currentFontSize - $this->FontSize)*(K_SMALL_RATIO))); - break; - } - case 'small': { - $currentFontSize = $this->FontSize; - $this->SetFontSize($this->tempfontsize); - $this->tempfontsize = $this->FontSizePt; - $this->SetXY($this->GetX(), $this->GetY() - (($this->FontSize - $currentFontSize)/3)); - break; - } - case 'font': { - if ($this->issetcolor == true) { - $this->SetTextColor($this->prevTextColor[0], $this->prevTextColor[1], $this->prevTextColor[2]); - } - if ($this->issetfont) { - $this->FontFamily = $this->prevFontFamily; - $this->FontStyle = $this->prevFontStyle; - $this->SetFont($this->FontFamily); - $this->issetfont = false; - } - $currentFontSize = $this->FontSize; - $this->SetFontSize($this->tempfontsize); - $this->tempfontsize = $this->FontSizePt; - //$this->TextColor = $this->prevTextColor; - $this->lasth = $this->FontSize * K_CELL_HEIGHT_RATIO; - break; - } - case 'p': { - $this->Ln(); - $this->Ln(); - break; - } - case 'ul': - case 'ol': { - $this->Ln(); - $this->Ln(); - break; - } - case 'li': { - $this->lispacer = ""; - break; - } - case 'h1': - case 'h2': - case 'h3': - case 'h4': - case 'h5': - case 'h6': { - $currentFontSize = $this->FontSize; - $this->SetFontSize($this->tempfontsize); - $this->tempfontsize = $this->FontSizePt; - $this->setStyle('b', false); - $this->Ln(); - $this->lasth = $this->FontSize * K_CELL_HEIGHT_RATIO; - break; - } - default : { - break; - } - } - $this->tmprtl = false; - } - - /** - * Sets font style. - * @param string $tag tag name (in lowercase) - * @param boolean $enable - * @access private - */ - private function setStyle($tag, $enable) { - //Modify style and select corresponding font - $this->$tag += ($enable ? 1 : -1); - $style=''; - foreach(array('b', 'i', 'u') as $s) { - if($this->$s > 0) { - $style .= $s; - } - } - $this->SetFont('', $style); - } - - /** - * Output anchor link. - * @param string $url link URL - * @param string $name link name - * @param int $fill Indicates if the cell background must be painted (1) or transparent (0). Default value: 0. - * @access public - */ - public function addHtmlLink($url, $name, $fill=0) { - //Put a hyperlink - $this->SetTextColor(0, 0, 255); - $this->setStyle('u', true); - $this->Write($this->lasth, $name, $url, $fill); - $this->setStyle('u', false); - $this->SetTextColor(0); - } - - /** - * Returns an associative array (keys: R,G,B) from - * a hex html code (e.g. #3FE5AA). - * @param string $color hexadecimal html color [#rrggbb] - * @return array - * @access private - */ - private function convertColorHexToDec($color = "#000000"){ - $tbl_color = array(); - $tbl_color['R'] = hexdec(substr($color, 1, 2)); - $tbl_color['G'] = hexdec(substr($color, 3, 2)); - $tbl_color['B'] = hexdec(substr($color, 5, 2)); - return $tbl_color; - } - - /** - * Converts pixels to millimeters in 72 dpi. - * @param int $px pixels - * @return float millimeters - * @access private - */ - private function pixelsToMillimeters($px){ - return $px * 25.4 / 72; - } - - /** - * Reverse function for htmlentities. - * Convert entities in UTF-8. - * - * @param $text_to_convert Text to convert. - * @return string converted - */ - public function unhtmlentities($text_to_convert) { - return html_entity_decode($text_to_convert, ENT_QUOTES, $this->encoding); - } - - // ENCRYPTION METHODS ---------------------------------- - // SINCE 2.0.000 (2008-01-02) - /** - * Compute encryption key depending on object number where the encrypted data is stored - * @param int $n object number - * @since 2.0.000 (2008-01-02) - */ - protected function _objectkey($n) { - return substr($this->_md5_16($this->encryption_key.pack('VXxx',$n)),0,10); - } - - /** - * Put encryption on PDF document - * @since 2.0.000 (2008-01-02) - */ - protected function _putencryption() { - $this->_out('/Filter /Standard'); - $this->_out('/V 1'); - $this->_out('/R 2'); - $this->_out('/O ('.$this->_escape($this->Ovalue).')'); - $this->_out('/U ('.$this->_escape($this->Uvalue).')'); - $this->_out('/P '.$this->Pvalue); - } - - /** - * Returns the input text exrypted using RC4 algorithm and the specified key. - * RC4 is the standard encryption algorithm used in PDF format - * @param string $key encryption key - * @param String $text input text to be encrypted - * @return String encrypted text - * @since 2.0.000 (2008-01-02) - * @author Klemen Vodopivec - */ - protected function _RC4($key, $text) { - if ($this->last_rc4_key != $key) { - $k = str_repeat($key, 256/strlen($key)+1); - $rc4 = range(0,255); - $j = 0; - for ($i=0; $i<256; $i++) { - $t = $rc4[$i]; - $j = ($j + $t + ord($k{$i})) % 256; - $rc4[$i] = $rc4[$j]; - $rc4[$j] = $t; - } - $this->last_rc4_key = $key; - $this->last_rc4_key_c = $rc4; - } else { - $rc4 = $this->last_rc4_key_c; - } - $len = strlen($text); - $a = 0; - $b = 0; - $out = ''; - for ($i=0; $i<$len; $i++) { - $a = ($a+1)%256; - $t= $rc4[$a]; - $b = ($b+$t)%256; - $rc4[$a] = $rc4[$b]; - $rc4[$b] = $t; - $k = $rc4[($rc4[$a]+$rc4[$b])%256]; - $out.=chr(ord($text{$i}) ^ $k); - } - return $out; - } - - /** - * Encrypts a string using MD5 and returns it's value as a binary string. - * @param string $str input string - * @return String MD5 encrypted binary string - * @since 2.0.000 (2008-01-02) - * @author Klemen Vodopivec - */ - protected function _md5_16($str) { - return pack('H*',md5($str)); - } - - /** - * Compute O value (used for RC4 encryption) - * @param String $user_pass user password - * @param String $owner_pass user password - * @return String O value - * @since 2.0.000 (2008-01-02) - * @author Klemen Vodopivec - */ - protected function _Ovalue($user_pass, $owner_pass) { - $tmp = $this->_md5_16($owner_pass); - $owner_RC4_key = substr($tmp,0,5); - return $this->_RC4($owner_RC4_key, $user_pass); - } - - /** - * Compute U value (used for RC4 encryption) - * @return String U value - * @since 2.0.000 (2008-01-02) - * @author Klemen Vodopivec - */ - protected function _Uvalue() { - return $this->_RC4($this->encryption_key, $this->padding); - } - - /** - * Compute encryption key - * @param String $user_pass user password - * @param String $owner_pass user password - * @param String $protection protection type - * @since 2.0.000 (2008-01-02) - * @author Klemen Vodopivec - */ - protected function _generateencryptionkey($user_pass, $owner_pass, $protection) { - // Pad passwords - $user_pass = substr($user_pass.$this->padding,0,32); - $owner_pass = substr($owner_pass.$this->padding,0,32); - // Compute O value - $this->Ovalue = $this->_Ovalue($user_pass,$owner_pass); - // Compute encyption key - $tmp = $this->_md5_16($user_pass.$this->Ovalue.chr($protection)."\xFF\xFF\xFF"); - $this->encryption_key = substr($tmp,0,5); - // Compute U value - $this->Uvalue = $this->_Uvalue(); - // Compute P value - $this->Pvalue = -(($protection^255)+1); - } - - /** - * Set document protection - * The permission array is composed of values taken from the following ones: - * - copy: copy text and images to the clipboard - * - print: print the document - * - modify: modify it (except for annotations and forms) - * - annot-forms: add annotations and forms - * Remark: the protection against modification is for people who have the full Acrobat product. - * If you don't set any password, the document will open as usual. If you set a user password, the PDF viewer will ask for it before displaying the document. The master password, if different from the user one, can be used to get full access. - * Note: protecting a document requires to encrypt it, which increases the processing time a lot. This can cause a PHP time-out in some cases, especially if the document contains images or fonts. - * @param Array $permissions the set of permissions. Empty by default (only viewing is allowed). (print, modify, copy, annot-forms) - * @param String $user_pass user password. Empty by default. - * @param String $owner_pass owner password. If not specified, a random value is used. - * @since 2.0.000 (2008-01-02) - * @author Klemen Vodopivec - */ - public function SetProtection($permissions=array(),$user_pass='',$owner_pass=null) { - $options = array('print' => 4, 'modify' => 8, 'copy' => 16, 'annot-forms' => 32); - $protection = 192; - foreach($permissions as $permission) { - if (!isset($options[$permission])) { - $this->Error('Incorrect permission: '.$permission); - } - $protection += $options[$permission]; - } - if ($owner_pass === null) { - $owner_pass = uniqid(rand()); - } - $this->encrypted = true; - $this->_generateencryptionkey($user_pass, $owner_pass, $protection); - } - - // END OF ENCRYPTION FUNCTIONS ------------------------- - - // START TRANSFORMATIONS SECTION ----------------------- - // authors: Moritz Wagner, Andreas Wurmser, Nicola Asuni - - /** - * Starts a 2D tranformation saving current graphic state. - * This function must be called before scaling, mirroring, translation, rotation and skewing. - * Use StartTransform() before, and StopTransform() after the transformations to restore the normal behavior. - * @since 2.1.000 (2008-01-07) - * @see StartTransform(), StopTransform() - */ - public function StartTransform() { - $this->_out('q'); - } - - /** - * Stops a 2D tranformation restoring previous graphic state. - * This function must be called after scaling, mirroring, translation, rotation and skewing. - * Use StartTransform() before, and StopTransform() after the transformations to restore the normal behavior. - * @since 2.1.000 (2008-01-07) - * @see StartTransform(), StopTransform() - */ - public function StopTransform() { - $this->_out('Q'); - } - /** - * Horizontal Scaling. - * @param float $s_x scaling factor for width as percent. 0 is not allowed. - * @param int $x abscissa of the scaling center. Default is current x position - * @param int $y ordinate of the scaling center. Default is current y position - * @since 2.1.000 (2008-01-07) - * @see StartTransform(), StopTransform() - */ - public function ScaleX($s_x, $x='', $y=''){ - $this->Scale($s_x, 100, $x, $y); - } - - /** - * Vertical Scaling. - * @param float $s_y scaling factor for height as percent. 0 is not allowed. - * @param int $x abscissa of the scaling center. Default is current x position - * @param int $y ordinate of the scaling center. Default is current y position - * @since 2.1.000 (2008-01-07) - * @see StartTransform(), StopTransform() - */ - public function ScaleY($s_y, $x='', $y=''){ - $this->Scale(100, $s_y, $x, $y); - } - - /** - * Vertical and horizontal proportional Scaling. - * @param float $s scaling factor for width and height as percent. 0 is not allowed. - * @param int $x abscissa of the scaling center. Default is current x position - * @param int $y ordinate of the scaling center. Default is current y position - * @since 2.1.000 (2008-01-07) - * @see StartTransform(), StopTransform() - */ - public function ScaleXY($s, $x='', $y=''){ - $this->Scale($s, $s, $x, $y); - } - - /** - * Vertical and horizontal non-proportional Scaling. - * @param float $s_x scaling factor for width as percent. 0 is not allowed. - * @param float $s_y scaling factor for height as percent. 0 is not allowed. - * @param int $x abscissa of the scaling center. Default is current x position - * @param int $y ordinate of the scaling center. Default is current y position - * @since 2.1.000 (2008-01-07) - * @see StartTransform(), StopTransform() - */ - public function Scale($s_x, $s_y, $x='', $y=''){ - if($x === '') { - $x=$this->x; - } - if($y === '') { - $y=$this->y; - } - if($this->rtl) { - $x = $this->w - $x; - } - if($s_x == 0 OR $s_y == 0) - $this->Error('Please use values unequal to zero for Scaling'); - $y=($this->h-$y)*$this->k; - $x*=$this->k; - //calculate elements of transformation matrix - $s_x/=100; - $s_y/=100; - $tm[0]=$s_x; - $tm[1]=0; - $tm[2]=0; - $tm[3]=$s_y; - $tm[4]=$x*(1-$s_x); - $tm[5]=$y*(1-$s_y); - //scale the coordinate system - $this->Transform($tm); - } - - /** - * Horizontal Mirroring. - * @param int $x abscissa of the point. Default is current x position - * @since 2.1.000 (2008-01-07) - * @see StartTransform(), StopTransform() - */ - public function MirrorH($x=''){ - $this->Scale(-100, 100, $x); - } - - /** - * Verical Mirroring. - * @param int $y ordinate of the point. Default is current y position - * @since 2.1.000 (2008-01-07) - * @see StartTransform(), StopTransform() - */ - public function MirrorV($y=''){ - $this->Scale(100, -100, '', $y); - } - - /** - * Point reflection mirroring. - * @param int $x abscissa of the point. Default is current x position - * @param int $y ordinate of the point. Default is current y position - * @since 2.1.000 (2008-01-07) - * @see StartTransform(), StopTransform() - */ - public function MirrorP($x='',$y=''){ - $this->Scale(-100, -100, $x, $y); - } - - /** - * Reflection against a straight line through point (x, y) with the gradient angle (angle). - * @param float $angle gradient angle of the straight line. Default is 0 (horizontal line). - * @param int $x abscissa of the point. Default is current x position - * @param int $y ordinate of the point. Default is current y position - * @since 2.1.000 (2008-01-07) - * @see StartTransform(), StopTransform() - */ - public function MirrorL($angle=0, $x='',$y=''){ - $this->Scale(-100, 100, $x, $y); - $this->Rotate(-2*($angle-90),$x,$y); - } - - /** - * Translate graphic object horizontally. - * @param int $t_x movement to the right - * @since 2.1.000 (2008-01-07) - * @see StartTransform(), StopTransform() - */ - public function TranslateX($t_x){ - $this->Translate($t_x, 0); - } - - /** - * Translate graphic object vertically. - * @param int $t_y movement to the bottom - * @since 2.1.000 (2008-01-07) - * @see StartTransform(), StopTransform() - */ - public function TranslateY($t_y){ - $this->Translate(0, $t_y, $x, $y); - } - - /** - * Translate graphic object horizontally and vertically. - * @param int $t_x movement to the right - * @param int $t_y movement to the bottom - * @since 2.1.000 (2008-01-07) - * @see StartTransform(), StopTransform() - */ - public function Translate($t_x, $t_y){ - if($this->rtl) { - $t_x = -$t_x; - } - //calculate elements of transformation matrix - $tm[0]=1; - $tm[1]=0; - $tm[2]=0; - $tm[3]=1; - $tm[4]=$t_x*$this->k; - $tm[5]=-$t_y*$this->k; - //translate the coordinate system - $this->Transform($tm); - } - - /** - * Rotate object. - * @param float $angle angle in degrees for counter-clockwise rotation - * @param int $x abscissa of the rotation center. Default is current x position - * @param int $y ordinate of the rotation center. Default is current y position - * @since 2.1.000 (2008-01-07) - * @see StartTransform(), StopTransform() - */ - public function Rotate($angle, $x='', $y=''){ - if($x === '') { - $x=$this->x; - } - if($y === '') { - $y=$this->y; - } - if($this->rtl) { - $x = $this->w - $x; - $angle = -$angle; - } - $y=($this->h-$y)*$this->k; - $x*=$this->k; - //calculate elements of transformation matrix - $tm[0]=cos(deg2rad($angle)); - $tm[1]=sin(deg2rad($angle)); - $tm[2]=-$tm[1]; - $tm[3]=$tm[0]; - $tm[4]=$x+$tm[1]*$y-$tm[0]*$x; - $tm[5]=$y-$tm[0]*$y-$tm[1]*$x; - //rotate the coordinate system around ($x,$y) - $this->Transform($tm); - } - - /** - * Skew horizontally. - * @param float $angle_x angle in degrees between -90 (skew to the left) and 90 (skew to the right) - * @param int $x abscissa of the skewing center. default is current x position - * @param int $y ordinate of the skewing center. default is current y position - * @since 2.1.000 (2008-01-07) - * @see StartTransform(), StopTransform() - */ - public function SkewX($angle_x, $x='', $y=''){ - $this->Skew($angle_x, 0, $x, $y); - } - - /** - * Skew vertically. - * @param float $angle_y angle in degrees between -90 (skew to the bottom) and 90 (skew to the top) - * @param int $x abscissa of the skewing center. default is current x position - * @param int $y ordinate of the skewing center. default is current y position - * @since 2.1.000 (2008-01-07) - * @see StartTransform(), StopTransform() - */ - public function SkewY($angle_y, $x='', $y=''){ - $this->Skew(0, $angle_y, $x, $y); - } - - /** - * Skew. - * @param float $angle_x angle in degrees between -90 (skew to the left) and 90 (skew to the right) - * @param float $angle_y angle in degrees between -90 (skew to the bottom) and 90 (skew to the top) - * @param int $x abscissa of the skewing center. default is current x position - * @param int $y ordinate of the skewing center. default is current y position - * @since 2.1.000 (2008-01-07) - * @see StartTransform(), StopTransform() - */ - public function Skew($angle_x, $angle_y, $x='', $y=''){ - if($x === '') { - $x=$this->x; - } - if($y === '') { - $y=$this->y; - } - if($this->rtl) { - $x = $this->w - $x; - $angle_x = -$angle_x; - } - if($angle_x <= -90 OR $angle_x >= 90 OR $angle_y <= -90 OR $angle_y >= 90) - $this->Error('Please use values between -90� and 90� for skewing'); - $x*=$this->k; - $y=($this->h-$y)*$this->k; - //calculate elements of transformation matrix - $tm[0]=1; - $tm[1]=tan(deg2rad($angle_y)); - $tm[2]=tan(deg2rad($angle_x)); - $tm[3]=1; - $tm[4]=-$tm[2]*$y; - $tm[5]=-$tm[1]*$x; - //skew the coordinate system - $this->Transform($tm); - } - - /** - * Apply graphic transformations. - * @since 2.1.000 (2008-01-07) - * @see StartTransform(), StopTransform() - */ - protected function Transform($tm){ - $this->_out(sprintf('%.3f %.3f %.3f %.3f %.3f %.3f cm', $tm[0],$tm[1],$tm[2],$tm[3],$tm[4],$tm[5])); - } - - // END TRANSFORMATIONS SECTION ------------------------- - - - // START GRAPHIC FUNCTIONS SECTION --------------------- - // The following section is based on the code provided by David Hernandez Sanz - - /** - * Defines the line width. By default, the value equals 0.2 mm. The method can be called before the first page is created and the value is retained from page to page. - * @param float $width The width. - * @since 1.0 - * @see Line(), Rect(), Cell(), MultiCell() - */ - public function SetLineWidth($width) { - //Set line width - $this->LineWidth=$width; - if($this->page>0) { - $this->_out(sprintf('%.2f w',$width*$this->k)); - } - } - - /** - * Returns the current the line width. - * @return int Line width - * @since 2.1.000 (2008-01-07) - * @see Line(), SetLineWidth() - */ - public function GetLineWidth() { - return $this->LineWidth; - } - - /** - * Set line style. - * - * @param array $style Line style. Array with keys among the following: - *
          - *
        • width (float): Width of the line in user units.
        • - *
        • cap (string): Type of cap to put on the line. Possible values are: - * butt, round, square. The difference between "square" and "butt" is that - * "square" projects a flat end past the end of the line.
        • - *
        • join (string): Type of join. Possible values are: miter, round, - * bevel.
        • - *
        • dash (mixed): Dash pattern. Is 0 (without dash) or string with - * series of length values, which are the lengths of the on and off dashes. - * For example: "2" represents 2 on, 2 off, 2 on, 2 off, ...; "2,1" is 2 on, - * 1 off, 2 on, 1 off, ...
        • - *
        • phase (integer): Modifier on the dash pattern which is used to shift - * the point at which the pattern starts.
        • - *
        • color (array): Draw color. Format: array(red, green, blue).
        • - *
        - * @access public - * @since 2.1.000 (2008-01-08) - */ - public function SetLineStyle($style) { - extract($style); - if (isset($width)) { - $width_prev = $this->LineWidth; - $this->SetLineWidth($width); - $this->LineWidth = $width_prev; - } - if (isset($cap)) { - $ca = array("butt" => 0, "round"=> 1, "square" => 2); - if (isset($ca[$cap])) { - $this->_out($ca[$cap] . " J"); - } - } - if (isset($join)) { - $ja = array("miter" => 0, "round" => 1, "bevel" => 2); - if (isset($ja[$join])) { - $this->_out($ja[$join] . " j"); - } - } - if (isset($dash)) { - $dash_string = ""; - if ($dash) { - // phpMyAdmin change - if (preg_match("/^.+,/", $dash)) { - $tab = explode(",", $dash); - } else { - $tab = array($dash); - } - $dash_string = ""; - foreach ($tab as $i => $v) { - if ($i) { - $dash_string .= " "; - } - $dash_string .= sprintf("%.2f", $v); - } - } - if (!isset($phase) OR !$dash) { - $phase = 0; - } - $this->_out(sprintf("[%s] %.2f d", $dash_string, $phase)); - } - if (isset($color)) { - list($r, $g, $b) = $color; - $this->SetDrawColor($r, $g, $b); - } - } - - /* - * Set a draw point. - * @param float $x Abscissa of point. - * @param float $y Ordinate of point. - * @access private - * @since 2.1.000 (2008-01-08) - */ - protected function _outPoint($x, $y) { - if($this->rtl) { - $x = $this->w - $x; - } - $this->_out(sprintf("%.2f %.2f m", $x * $this->k, ($this->h - $y) * $this->k)); - } - - /* - * Draws a line from last draw point. - * @param float $x Abscissa of end point. - * @param float $y Ordinate of end point. - * @access private - * @since 2.1.000 (2008-01-08) - */ - protected function _outLine($x, $y) { - if($this->rtl) { - $x = $this->w - $x; - } - $this->_out(sprintf("%.2f %.2f l", $x * $this->k, ($this->h - $y) * $this->k)); - } - - /** - * Draws a rectangle. - * @param float $x Abscissa of upper-left corner (or upper-right corner for RTL language). - * @param float $y Ordinate of upper-left corner (or upper-right corner for RTL language). - * @param float $w Width. - * @param float $h Height. - * @param string $op options - * @access protected - * @since 2.1.000 (2008-01-08) - */ - protected function _outRect($x, $y, $w, $h, $op) { - if($this->rtl) { - $x = $this->w - $x - $w; - } - $this->_out(sprintf('%.2f %.2f %.2f %.2f re %s',$x*$this->k,($this->h-$y)*$this->k,$w*$this->k,-$h*$this->k,$op)); - } - - /* - * Draws a Bezier curve from last draw point. - * The Bezier curve is a tangent to the line between the control points at either end of the curve. - * @param float $x1 Abscissa of control point 1. - * @param float $y1 Ordinate of control point 1. - * @param float $x2 Abscissa of control point 2. - * @param float $y2 Ordinate of control point 2. - * @param float $x3 Abscissa of end point. - * @param float $y3 Ordinate of end point. - * @access private - * @since 2.1.000 (2008-01-08) - */ - protected function _outCurve($x1, $y1, $x2, $y2, $x3, $y3) { - if($this->rtl) { - $x1 = $this->w - $x1; - $x2 = $this->w - $x2; - $x3 = $this->w - $x3; - } - $this->_out(sprintf("%.2f %.2f %.2f %.2f %.2f %.2f c", $x1 * $this->k, ($this->h - $y1) * $this->k, $x2 * $this->k, ($this->h - $y2) * $this->k, $x3 * $this->k, ($this->h - $y3) * $this->k)); - } - - /** - * Draws a line between two points. - * @param float $x1 Abscissa of first point. - * @param float $y1 Ordinate of first point. - * @param float $x2 Abscissa of second point. - * @param float $y2 Ordinate of second point. - * @param array $style Line style. Array like for {@link SetLineStyle SetLineStyle}. Default value: default line style (empty array). - * @access public - * @since 1.0 - * @see SetLineWidth(), SetDrawColor(), SetLineStyle() - */ - public function Line($x1, $y1, $x2, $y2, $style = array()) { - if ($style) { - $this->SetLineStyle($style); - } - $this->_outPoint($x1, $y1); - $this->_outLine($x2, $y2); - $this->_out(" S"); - } - - /** - * Draws a rectangle. - * @param float $x Abscissa of upper-left corner (or upper-right corner for RTL language). - * @param float $y Ordinate of upper-left corner (or upper-right corner for RTL language). - * @param float $w Width. - * @param float $h Height. - * @param string $style Style of rendering. Possible values are: - *
          - *
        • D or empty string: Draw (default).
        • - *
        • F: Fill.
        • - *
        • DF or FD: Draw and fill.
        • - *
        - * @param array $border_style Border style of rectangle. Array with keys among the following: - *
          - *
        • all: Line style of all borders. Array like for {@link SetLineStyle SetLineStyle}.
        • - *
        • L, T, R, B or combinations: Line style of left, top, right or bottom border. Array like for {@link SetLineStyle SetLineStyle}.
        • - *
        - * If a key is not present or is null, not draws the border. Default value: default line style (empty array). - * @param array $fill_color Fill color. Format: array(red, green, blue). Default value: default color (empty array). - * @access public - * @since 1.0 - * @see SetLineStyle() - */ - public function Rect($x, $y, $w, $h, $style='', $border_style = array(), $fill_color = array()) { - if (!(false === strpos($style, "F")) AND $fill_color) { - list($r, $g, $b) = $fill_color; - $this->SetFillColor($r, $g, $b); - } - switch ($style) { - case "F": { - $op='f'; - $border_style = array(); - $this->_outRect($x, $y, $w, $h, $op); - break; - } - case "DF": - case "FD": { - if (!$border_style OR isset($border_style["all"])) { - $op='B'; - if (isset($border_style["all"])) { - $this->SetLineStyle($border_style["all"]); - $border_style = array(); - } - } else { - $op='f'; - } - $this->_outRect($x, $y, $w, $h, $op); - break; - } - default: { - $op='S'; - if (!$border_style OR isset($border_style["all"])) { - if (isset($border_style["all"]) && $border_style["all"]) { - $this->SetLineStyle($border_style["all"]); - $border_style = array(); - } - $this->_outRect($x, $y, $w, $h, $op); - } - break; - } - } - if ($border_style) { - $border_style2 = array(); - foreach ($border_style as $line => $value) { - $lenght = strlen($line); - for ($i = 0; $i < $lenght; $i++) { - $border_style2[$line[$i]] = $value; - } - } - $border_style = $border_style2; - if (isset($border_style["L"]) && $border_style["L"]) { - $this->Line($x, $y, $x, $y + $h, $border_style["L"]); - } - if (isset($border_style["T"]) && $border_style["T"]) { - $this->Line($x, $y, $x + $w, $y, $border_style["T"]); - } - if (isset($border_style["R"]) && $border_style["R"]) { - $this->Line($x + $w, $y, $x + $w, $y + $h, $border_style["R"]); - } - if (isset($border_style["B"]) && $border_style["B"]) { - $this->Line($x, $y + $h, $x + $w, $y + $h, $border_style["B"]); - } - } - } - - - /** - * Draws a Bezier curve. - * The Bezier curve is a tangent to the line between the control points at - * either end of the curve. - * @param float $x0 Abscissa of start point. - * @param float $y0 Ordinate of start point. - * @param float $x1 Abscissa of control point 1. - * @param float $y1 Ordinate of control point 1. - * @param float $x2 Abscissa of control point 2. - * @param float $y2 Ordinate of control point 2. - * @param float $x3 Abscissa of end point. - * @param float $y3 Ordinate of end point. - * @param string $style Style of rendering. Possible values are: - *
          - *
        • D or empty string: Draw (default).
        • - *
        • F: Fill.
        • - *
        • DF or FD: Draw and fill.
        • - *
        - * @param array $line_style Line style of curve. Array like for {@link SetLineStyle SetLineStyle}. Default value: default line style (empty array). - * @param array $fill_color Fill color. Format: array(red, green, blue). Default value: default color (empty array). - * @access public - * @see SetLineStyle() - * @since 2.1.000 (2008-01-08) - */ - public function Curve($x0, $y0, $x1, $y1, $x2, $y2, $x3, $y3, $style = "", $line_style = array(), $fill_color = array()) { - if (!(false === strpos($style, "F")) AND $fill_color) { - list($r, $g, $b) = $fill_color; - $this->SetFillColor($r, $g, $b); - } - switch ($style) { - case "F": { - $op = "f"; - $line_style = array(); - break; - } - case "FD": - case "DF": { - $op = "B"; - break; - } - default: { - $op = "S"; - break; - } - } - if ($line_style) { - $this->SetLineStyle($line_style); - } - $this->_outPoint($x0, $y0); - $this->_outCurve($x1, $y1, $x2, $y2, $x3, $y3); - $this->_out($op); - } - - /** - * Draws an ellipse. - * An ellipse is formed from n Bezier curves. - * @param float $x0 Abscissa of center point. - * @param float $y0 Ordinate of center point. - * @param float $rx Horizontal radius. - * @param float $ry Vertical radius (if ry = 0 then is a circle, see {@link Circle Circle}). Default value: 0. - * @param float $angle: Angle oriented (anti-clockwise). Default value: 0. - * @param float $astart: Angle start of draw line. Default value: 0. - * @param float $afinish: Angle finish of draw line. Default value: 360. - * @param string $style Style of rendering. Possible values are: - *
          - *
        • D or empty string: Draw (default).
        • - *
        • F: Fill.
        • - *
        • DF or FD: Draw and fill.
        • - *
        • C: Draw close.
        • - *
        - * @param array $line_style Line style of ellipse. Array like for {@link SetLineStyle SetLineStyle}. Default value: default line style (empty array). - * @param array $fill_color Fill color. Format: array(red, green, blue). Default value: default color (empty array). - * @param integer $nc Number of curves used in ellipse. Default value: 8. - * @access public - * @since 2.1.000 (2008-01-08) - */ - public function Ellipse($x0, $y0, $rx, $ry = 0, $angle = 0, $astart = 0, $afinish = 360, $style = "", $line_style = array(), $fill_color = array(), $nc = 8) { - if ($angle) { - $this->StartTransform(); - $this->Rotate($angle, $x0, $y0); - $this->Ellipse($x0, $y0, $rx, $ry, 0, $astart, $afinish, $style, $line_style, $fill_color, $nc); - $this->StopTransform(); - return; - } - if ($rx) { - if (!(false === strpos($style, "F")) AND $fill_color) { - list($r, $g, $b) = $fill_color; - $this->SetFillColor($r, $g, $b); - } - switch ($style) { - case "F": { - $op = "f"; - $line_style = array(); - break; - } - case "FD": - case "DF": { - $op = "B"; - break; - } - case "C": { - $op = "s"; // Small "s" signifies closing the path as well - break; - } - default: { - $op = "S"; - break; - } - } - if ($line_style) { - $this->SetLineStyle($line_style); - } - if (!$ry) { - $ry = $rx; - } - $rx *= $this->k; - $ry *= $this->k; - if ($nc < 2){ - $nc = 2; - } - $astart = deg2rad((float) $astart); - $afinish = deg2rad((float) $afinish); - $total_angle = $afinish - $astart; - $dt = $total_angle / $nc; - $dtm = $dt/3; - $x0 *= $this->k; - $y0 = ($this->h - $y0) * $this->k; - $t1 = $astart; - $a0 = $x0 + ($rx * cos($t1)); - $b0 = $y0 + ($ry * sin($t1)); - $c0 = -$rx * sin($t1); - $d0 = $ry * cos($t1); - $this->_outPoint($a0 / $this->k, $this->h - ($b0 / $this->k)); - for ($i = 1; $i <= $nc; $i++) { - // Draw this bit of the total curve - $t1 = ($i * $dt) + $astart; - $a1 = $x0 + ($rx * cos($t1)); - $b1 = $y0 + ($ry * sin($t1)); - $c1 = -$rx * sin($t1); - $d1 = $ry * cos($t1); - $this->_outCurve(($a0 + ($c0 * $dtm)) / $this->k, $this->h - (($b0 + ($d0 * $dtm)) / $this->k), ($a1 - ($c1 * $dtm)) / $this->k, $this->h - (($b1 - ($d1 * $dtm)) / $this->k), $a1 / $this->k, $this->h - ($b1 / $this->k)); - $a0 = $a1; - $b0 = $b1; - $c0 = $c1; - $d0 = $d1; - } - $this->_out($op); - } - } - - /** - * Draws a circle. - * A circle is formed from n Bezier curves. - * @param float $x0 Abscissa of center point. - * @param float $y0 Ordinate of center point. - * @param float $r Radius. - * @param float $astart: Angle start of draw line. Default value: 0. - * @param float $afinish: Angle finish of draw line. Default value: 360. - * @param string $style Style of rendering. Possible values are: - *
          - *
        • D or empty string: Draw (default).
        • - *
        • F: Fill.
        • - *
        • DF or FD: Draw and fill.
        • - *
        • C: Draw close.
        • - *
        - * @param array $line_style Line style of circle. Array like for {@link SetLineStyle SetLineStyle}. Default value: default line style (empty array). - * @param array $fill_color Fill color. Format: array(red, green, blue). Default value: default color (empty array). - * @param integer $nc Number of curves used in circle. Default value: 8. - * @access public - * @since 2.1.000 (2008-01-08) - */ - public function Circle($x0, $y0, $r, $astart = 0, $afinish = 360, $style = "", $line_style = array(), $fill_color = array(), $nc = 8) { - $this->Ellipse($x0, $y0, $r, 0, 0, $astart, $afinish, $style, $line_style, $fill_color, $nc); - } - - /** - * Draws a polygon. - * @param array $p Points 0 to ($np - 1). Array with values (x0, y0, x1, y1,..., x(np-1), y(np - 1)) - * @param string $style Style of rendering. Possible values are: - *
          - *
        • D or empty string: Draw (default).
        • - *
        • F: Fill.
        • - *
        • DF or FD: Draw and fill.
        • - *
        - * @param array $line_style Line style of polygon. Array with keys among the following: - *
          - *
        • all: Line style of all lines. Array like for {@link SetLineStyle SetLineStyle}.
        • - *
        • 0 to ($np - 1): Line style of each line. Array like for {@link SetLineStyle SetLineStyle}.
        • - *
        - * If a key is not present or is null, not draws the line. Default value is default line style (empty array). - * @param array $fill_color Fill color. Format: array(red, green, blue). Default value: default color (empty array). - * @access public - * @since 2.1.000 (2008-01-08) - */ - public function Polygon($p, $style = "", $line_style = array(), $fill_color = array()) { - $np = count($p) / 2; - if (!(false === strpos($style, "F")) AND $fill_color) { - list($r, $g, $b) = $fill_color; - $this->SetFillColor($r, $g, $b); - } - switch ($style) { - case "F": { - $line_style = array(); - $op = "f"; - break; - } - case "FD": - case "DF": { - $op = "B"; - break; - } - default: { - $op = "S"; - break; - } - } - $draw = true; - if ($line_style) { - if (isset($line_style["all"])) { - $this->SetLineStyle($line_style["all"]); - } - else { // 0 .. (np - 1), op = {B, S} - $draw = false; - if ("B" == $op) { - $op = "f"; - $this->_outPoint($p[0], $p[1]); - for ($i = 2; $i < ($np * 2); $i = $i + 2) { - $this->_outLine($p[$i], $p[$i + 1]); - } - $this->_outLine($p[0], $p[1]); - $this->_out($op); - } - $p[$np * 2] = $p[0]; - $p[($np * 2) + 1] = $p[1]; - for ($i = 0; $i < $np; $i++) { - if (isset($line_style[$i])) { - $this->Line($p[$i * 2], $p[($i * 2) + 1], $p[($i * 2) + 2], $p[($i * 2) + 3], $line_style[$i]); - } - } - } - } - if ($draw) { - $this->_outPoint($p[0], $p[1]); - for ($i = 2; $i < ($np * 2); $i = $i + 2) { - $this->_outLine($p[$i], $p[$i + 1]); - } - $this->_outLine($p[0], $p[1]); - $this->_out($op); - } - } - - /** - * Draws a regular polygon. - * @param float $x0 Abscissa of center point. - * @param float $y0 Ordinate of center point. - * @param float $r: Radius of inscribed circle. - * @param integer $ns Number of sides. - * @param float $angle Angle oriented (anti-clockwise). Default value: 0. - * @param boolean $draw_circle Draw inscribed circle or not. Default value: false. - * @param string $style Style of rendering. Possible values are: - *
          - *
        • D or empty string: Draw (default).
        • - *
        • F: Fill.
        • - *
        • DF or FD: Draw and fill.
        • - *
        - * @param array $line_style Line style of polygon sides. Array with keys among the following: - *
          - *
        • all: Line style of all sides. Array like for {@link SetLineStyle SetLineStyle}.
        • - *
        • 0 to ($ns - 1): Line style of each side. Array like for {@link SetLineStyle SetLineStyle}.
        • - *
        - * If a key is not present or is null, not draws the side. Default value is default line style (empty array). - * @param array $fill_color Fill color. Format: array(red, green, blue). Default value: default color (empty array). - * @param string $circle_style Style of rendering of inscribed circle (if draws). Possible values are: - *
          - *
        • D or empty string: Draw (default).
        • - *
        • F: Fill.
        • - *
        • DF or FD: Draw and fill.
        • - *
        - * @param array $circle_outLine_style Line style of inscribed circle (if draws). Array like for {@link SetLineStyle SetLineStyle}. Default value: default line style (empty array). - * @param array $circle_fill_color Fill color of inscribed circle (if draws). Format: array(red, green, blue). Default value: default color (empty array). - * @access public - * @since 2.1.000 (2008-01-08) - */ - public function RegularPolygon($x0, $y0, $r, $ns, $angle = 0, $draw_circle = false, $style = "", $line_style = array(), $fill_color = array(), $circle_style = "", $circle_outLine_style = array(), $circle_fill_color = array()) { - if (3 > $ns) { - $ns = 3; - } - if ($draw_circle) { - $this->Circle($x0, $y0, $r, 0, 360, $circle_style, $circle_outLine_style, $circle_fill_color); - } - $p = array(); - for ($i = 0; $i < $ns; $i++) { - $a = $angle + ($i * 360 / $ns); - $a_rad = deg2rad((float) $a); - $p[] = $x0 + ($r * sin($a_rad)); - $p[] = $y0 + ($r * cos($a_rad)); - } - $this->Polygon($p, $style, $line_style, $fill_color); - } - - /** - * Draws a star polygon - * @param float $x0 Abscissa of center point. - * @param float $y0 Ordinate of center point. - * @param float $r Radius of inscribed circle. - * @param integer $nv Number of vertices. - * @param integer $ng Number of gap (if ($ng % $nv = 1) then is a regular polygon). - * @param float $angle: Angle oriented (anti-clockwise). Default value: 0. - * @param boolean $draw_circle: Draw inscribed circle or not. Default value is false. - * @param string $style Style of rendering. Possible values are: - *
          - *
        • D or empty string: Draw (default).
        • - *
        • F: Fill.
        • - *
        • DF or FD: Draw and fill.
        • - *
        - * @param array $line_style Line style of polygon sides. Array with keys among the following: - *
          - *
        • all: Line style of all sides. Array like for - * {@link SetLineStyle SetLineStyle}.
        • - *
        • 0 to (n - 1): Line style of each side. Array like for {@link SetLineStyle SetLineStyle}.
        • - *
        - * If a key is not present or is null, not draws the side. Default value is default line style (empty array). - * @param array $fill_color Fill color. Format: array(red, green, blue). Default value: default color (empty array). - * @param string $circle_style Style of rendering of inscribed circle (if draws). Possible values are: - *
          - *
        • D or empty string: Draw (default).
        • - *
        • F: Fill.
        • - *
        • DF or FD: Draw and fill.
        • - *
        - * @param array $circle_outLine_style Line style of inscribed circle (if draws). Array like for {@link SetLineStyle SetLineStyle}. Default value: default line style (empty array). - * @param array $circle_fill_color Fill color of inscribed circle (if draws). Format: array(red, green, blue). Default value: default color (empty array). - * @access public - * @since 2.1.000 (2008-01-08) - */ - public function StarPolygon($x0, $y0, $r, $nv, $ng, $angle = 0, $draw_circle = false, $style = "", $line_style = array(), $fill_color = array(), $circle_style = "", $circle_outLine_style = array(), $circle_fill_color = array()) { - if (2 > $nv) { - $nv = 2; - } - if ($draw_circle) { - $this->Circle($x0, $y0, $r, 0, 360, $circle_style, $circle_outLine_style, $circle_fill_color); - } - $p2 = array(); - $visited = array(); - for ($i = 0; $i < $nv; $i++) { - $a = $angle + ($i * 360 / $nv); - $a_rad = deg2rad((float) $a); - $p2[] = $x0 + ($r * sin($a_rad)); - $p2[] = $y0 + ($r * cos($a_rad)); - $visited[] = false; - } - $p = array(); - $i = 0; - do { - $p[] = $p2[$i * 2]; - $p[] = $p2[($i * 2) + 1]; - $visited[$i] = true; - $i += $ng; - $i %= $nv; - } while (!$visited[$i]); - $this->Polygon($p, $style, $line_style, $fill_color); - } - - /** - * Draws a rounded rectangle. - * @param float $x Abscissa of upper-left corner. - * @param float $y Ordinate of upper-left corner. - * @param float $w Width. - * @param float $h Height. - * @param float $r Radius of the rounded corners. - * @param string $round_corner Draws rounded corner or not. String with a 0 (not rounded i-corner) or 1 (rounded i-corner) in i-position. Positions are, in order and begin to 0: top left, top right, bottom right and bottom left. Default value: all rounded corner ("1111"). - * @param string $style Style of rendering. Possible values are: - *
          - *
        • D or empty string: Draw (default).
        • - *
        • F: Fill.
        • - *
        • DF or FD: Draw and fill.
        • - *
        - * @param array $border_style Border style of rectangle. Array like for {@link SetLineStyle SetLineStyle}. Default value: default line style (empty array). - * @param array $fill_color Fill color. Format: array(red, green, blue). Default value: default color (empty array). - * @access public - * @since 2.1.000 (2008-01-08) - */ - public function RoundedRect($x, $y, $w, $h, $r, $round_corner = "1111", $style = "", $border_style = array(), $fill_color = array()) { - if ("0000" == $round_corner) { // Not rounded - $this->Rect($x, $y, $w, $h, $style, $border_style, $fill_color); - } else { // Rounded - if (!(false === strpos($style, "F")) AND $fill_color) { - list($red, $g, $b) = $fill_color; - $this->SetFillColor($red, $g, $b); - } - switch ($style) { - case "F": { - $border_style = array(); - $op = "f"; - break; - } - case "FD": - case "DF": { - $op = "B"; - break; - } - default: { - $op = "S"; - break; - } - } - if ($border_style) { - $this->SetLineStyle($border_style); - } - $MyArc = 4 / 3 * (sqrt(2) - 1); - $this->_outPoint($x + $r, $y); - $xc = $x + $w - $r; - $yc = $y + $r; - $this->_outLine($xc, $y); - if ($round_corner[0]) { - $this->_outCurve($xc + ($r * $MyArc), $yc - $r, $xc + $r, $yc - ($r * $MyArc), $xc + $r, $yc); - } else { - $this->_outLine($x + $w, $y); - } - $xc = $x + $w - $r; - $yc = $y + $h - $r; - $this->_outLine($x + $w, $yc); - if ($round_corner[1]) { - $this->_outCurve($xc + $r, $yc + ($r * $MyArc), $xc + ($r * $MyArc), $yc + $r, $xc, $yc + $r); - } else { - $this->_outLine($x + $w, $y + $h); - } - $xc = $x + $r; - $yc = $y + $h - $r; - $this->_outLine($xc, $y + $h); - if ($round_corner[2]) { - $this->_outCurve($xc - ($r * $MyArc), $yc + $r, $xc - $r, $yc + ($r * $MyArc), $xc - $r, $yc); - } else { - $this->_outLine($x, $y + $h); - } - $xc = $x + $r; - $yc = $y + $r; - $this->_outLine($x, $yc); - if ($round_corner[3]) { - $this->_outCurve($xc - $r, $yc - ($r * $MyArc), $xc - ($r * $MyArc), $yc - $r, $xc, $yc - $r); - } else { - $this->_outLine($x, $y); - $this->_outLine($x + $r, $y); - } - $this->_out($op); - } - } - - // END GRAPHIC FUNCTIONS SECTION ----------------------- - - // BIDIRECTIONAL TEXT SECTION -------------------------- - - /** - * Reverse the RLT substrings using the Bidirectional Algorithm (http://unicode.org/reports/tr9/). - * @param string $str string to manipulate. - * @param bool $forcertl if 'R' forces RTL, if 'L' forces LTR - * @return string - * @author Nicola Asuni - * @since 2.1.000 (2008-01-08) - */ - protected function utf8StrRev($str, $setbom=false, $forcertl=false) { - global $unicode,$unicode_mirror, $unicode_arlet; - require_once(dirname(__FILE__).'/unicode_data.php'); - - // paragraph embedding level - $pel = 0; - // max level - $maxlevel = 0; - - // check if string contains arabic text - if (preg_match(K_RE_PATTERN_ARABIC, $str)) { - $arabic = true; - } else { - $arabic = false; - } - - // check if string contains RTL text - if (!($forcertl OR $arabic OR preg_match(K_RE_PATTERN_RTL, $str))) { - return $this->UTF8ToUTF16BE($str, false); - } - - // convert string to array of unicode chars - $ta = $this->UTF8StringToArray($str); - // get number of chars - $numchars = count($ta); - - if ($forcertl == 'R') { - $pel = 1; - } elseif ($forcertl == 'L') { - $pel = 0; - } else { - // P2. In each paragraph, find the first character of type L, AL, or R. - // P3. If a character is found in P2 and it is of type AL or R, then set the paragraph embedding level to one; otherwise, set it to zero. - for ($i=0; $i < $numchars; $i++) { - $type = $unicode[$ta[$i]]; - if ($type == 'L') { - $pel = 0; - break; - } elseif (($type == 'AL') OR ($type == 'R')) { - $pel = 1; - break; - } - } - } - - // Current Embedding Level - $cel = $pel; - // directional override status - $dos = 'N'; - $remember = array(); - // start-of-level-run - $sor = $pel % 2 ? 'R' : 'L'; - $eor = $sor; - - //$levels = array(array('level' => $cel, 'sor' => $sor, 'eor' => '', 'chars' => array())); - //$current_level = &$levels[count( $levels )-1]; - - // Array of characters data - $chardata = Array(); - - // X1. Begin by setting the current embedding level to the paragraph embedding level. Set the directional override status to neutral. Process each character iteratively, applying rules X2 through X9. Only embedding levels from 0 to 61 are valid in this phase. - // In the resolution of levels in rules I1 and I2, the maximum embedding level of 62 can be reached. - for ($i=0; $i < $numchars; $i++) { - if ($ta[$i] == K_RLE) { - // X2. With each RLE, compute the least greater odd embedding level. - // a. If this new level would be valid, then this embedding code is valid. Remember (push) the current embedding level and override status. Reset the current level to this new level, and reset the override status to neutral. - // b. If the new level would not be valid, then this code is invalid. Do not change the current level or override status. - $next_level = $cel + ($cel % 2) + 1; - if ($next_level < 62) { - $remember[] = array('num' => K_RLE, 'cel' => $cel, 'dos' => $dos); - $cel = $next_level; - $dos = 'N'; - $sor = $eor; - $eor = $cel % 2 ? 'R' : 'L'; - } - } elseif ($ta[$i] == K_LRE) { - // X3. With each LRE, compute the least greater even embedding level. - // a. If this new level would be valid, then this embedding code is valid. Remember (push) the current embedding level and override status. Reset the current level to this new level, and reset the override status to neutral. - // b. If the new level would not be valid, then this code is invalid. Do not change the current level or override status. - $next_level = $cel + 2 - ($cel % 2); - if ( $next_level < 62 ) { - $remember[] = array('num' => K_LRE, 'cel' => $cel, 'dos' => $dos); - $cel = $next_level; - $dos = 'N'; - $sor = $eor; - $eor = $cel % 2 ? 'R' : 'L'; - } - } elseif ($ta[$i] == K_RLO) { - // X4. With each RLO, compute the least greater odd embedding level. - // a. If this new level would be valid, then this embedding code is valid. Remember (push) the current embedding level and override status. Reset the current level to this new level, and reset the override status to right-to-left. - // b. If the new level would not be valid, then this code is invalid. Do not change the current level or override status. - $next_level = $cel + ($cel % 2) + 1; - if ($next_level < 62) { - $remember[] = array('num' => K_RLO, 'cel' => $cel, 'dos' => $dos); - $cel = $next_level; - $dos = 'R'; - $sor = $eor; - $eor = $cel % 2 ? 'R' : 'L'; - } - } elseif ($ta[$i] == K_LRO) { - // X5. With each LRO, compute the least greater even embedding level. - // a. If this new level would be valid, then this embedding code is valid. Remember (push) the current embedding level and override status. Reset the current level to this new level, and reset the override status to left-to-right. - // b. If the new level would not be valid, then this code is invalid. Do not change the current level or override status. - $next_level = $cel + 2 - ($cel % 2); - if ( $next_level < 62 ) { - $remember[] = array('num' => K_LRO, 'cel' => $cel, 'dos' => $dos); - $cel = $next_level; - $dos = 'L'; - $sor = $eor; - $eor = $cel % 2 ? 'R' : 'L'; - } - } elseif ($ta[$i] == K_PDF) { - // X7. With each PDF, determine the matching embedding or override code. If there was a valid matching code, restore (pop) the last remembered (pushed) embedding level and directional override. - if (count($remember)) { - $last = count($remember ) - 1; - if (($remember[$last]['num'] == K_RLE) OR - ($remember[$last]['num'] == K_LRE) OR - ($remember[$last]['num'] == K_RLO) OR - ($remember[$last]['num'] == K_LRO)) { - $match = array_pop($remember); - $cel = $match['cel']; - $dos = $match['dos']; - $sor = $eor; - $eor = ($cel > $match['cel'] ? $cel : $match['cel']) % 2 ? 'R' : 'L'; - } - } - } elseif (($ta[$i] != K_RLE) AND - ($ta[$i] != K_LRE) AND - ($ta[$i] != K_RLO) AND - ($ta[$i] != K_LRO) AND - ($ta[$i] != K_PDF)) { - // X6. For all types besides RLE, LRE, RLO, LRO, and PDF: - // a. Set the level of the current character to the current embedding level. - // b. Whenever the directional override status is not neutral, reset the current character type to the directional override status. - if ($dos != 'N') { - $chardir = $dos; - } else { - $chardir = $unicode[$ta[$i]]; - } - // stores string characters and other information - $chardata[] = array('char' => $ta[$i], 'level' => $cel, 'type' => $chardir, 'sor' => $sor, 'eor' => $eor); - } - } // end for each char - - // X8. All explicit directional embeddings and overrides are completely terminated at the end of each paragraph. Paragraph separators are not included in the embedding. - // X9. Remove all RLE, LRE, RLO, LRO, PDF, and BN codes. - // X10. The remaining rules are applied to each run of characters at the same level. For each run, determine the start-of-level-run (sor) and end-of-level-run (eor) type, either L or R. This depends on the higher of the two levels on either side of the boundary (at the start or end of the paragraph, the level of the “other” run is the base embedding level). If the higher level is odd, the type is R; otherwise, it is L. - - // 3.3.3 Resolving Weak Types - // Weak types are now resolved one level run at a time. At level run boundaries where the type of the character on the other side of the boundary is required, the type assigned to sor or eor is used. - // Nonspacing marks are now resolved based on the previous characters. - $numchars = count($chardata); - - // W1. Examine each nonspacing mark (NSM) in the level run, and change the type of the NSM to the type of the previous character. If the NSM is at the start of the level run, it will get the type of sor. - $prevlevel = -1; // track level changes - $levcount = 0; // counts consecutive chars at the same level - for ($i=0; $i < $numchars; $i++) { - if ($chardata[$i]['type'] == 'NSM') { - if ($levcount) { - $chardata[$i]['type'] = $chardata[$i]['sor']; - } elseif ($i > 0) { - $chardata[$i]['type'] = $chardata[($i-1)]['type']; - } - } - if ($chardata[$i]['level'] != $prevlevel) { - $levcount = 0; - } else { - $levcount++; - } - $prevlevel = $chardata[$i]['level']; - } - - // W2. Search backward from each instance of a European number until the first strong type (R, L, AL, or sor) is found. If an AL is found, change the type of the European number to Arabic number. - $prevlevel = -1; - $levcount = 0; - for ($i=0; $i < $numchars; $i++) { - if ($chardata[$i]['char'] == 'EN') { - for ($j=$levcount; $j >= 0; $j--) { - if ($chardata[$j]['type'] == 'AL') { - $chardata[$i]['type'] = 'AN'; - } elseif (($chardata[$j]['type'] == 'L') OR ($chardata[$j]['type'] == 'R')) { - break; - } - } - } - if ($chardata[$i]['level'] != $prevlevel) { - $levcount = 0; - } else { - $levcount++; - } - $prevlevel = $chardata[$i]['level']; - } - - // W3. Change all ALs to R. - for ($i=0; $i < $numchars; $i++) { - if ($chardata[$i]['type'] == 'AL') { - $chardata[$i]['type'] = 'R'; - } - } - - // W4. A single European separator between two European numbers changes to a European number. A single common separator between two numbers of the same type changes to that type. - $prevlevel = -1; - $levcount = 0; - for ($i=0; $i < $numchars; $i++) { - if (($levcount > 0) AND (($i+1) < $numchars) AND ($chardata[($i+1)]['level'] == $prevlevel)) { - if (($chardata[$i]['type'] == 'ES') AND ($chardata[($i-1)]['type'] == 'EN') AND ($chardata[($i+1)]['type'] == 'EN')) { - $chardata[$i]['type'] = 'EN'; - } elseif (($chardata[$i]['type'] == 'CS') AND ($chardata[($i-1)]['type'] == 'EN') AND ($chardata[($i+1)]['type'] == 'EN')) { - $chardata[$i]['type'] = 'EN'; - } elseif (($chardata[$i]['type'] == 'CS') AND ($chardata[($i-1)]['type'] == 'AN') AND ($chardata[($i+1)]['type'] == 'AN')) { - $chardata[$i]['type'] = 'AN'; - } - } - if ($chardata[$i]['level'] != $prevlevel) { - $levcount = 0; - } else { - $levcount++; - } - $prevlevel = $chardata[$i]['level']; - } - - // W5. A sequence of European terminators adjacent to European numbers changes to all European numbers. - $prevlevel = -1; - $levcount = 0; - for ($i=0; $i < $numchars; $i++) { - if($chardata[$i]['type'] == 'ET') { - if (($levcount > 0) AND ($chardata[($i-1)]['type'] == 'EN')) { - $chardata[$i]['type'] = 'EN'; - } else { - $j = $i+1; - while (($j < $numchars) AND ($chardata[$j]['level'] == $prevlevel)) { - if ($chardata[$j]['type'] == 'EN') { - $chardata[$i]['type'] = 'EN'; - break; - } elseif ($chardata[$j]['type'] != 'ET') { - break; - } - $j++; - } - } - } - if ($chardata[$i]['level'] != $prevlevel) { - $levcount = 0; - } else { - $levcount++; - } - $prevlevel = $chardata[$i]['level']; - } - - // W6. Otherwise, separators and terminators change to Other Neutral. - $prevlevel = -1; - $levcount = 0; - for ($i=0; $i < $numchars; $i++) { - if (($chardata[$i]['type'] == 'ET') OR ($chardata[$i]['type'] == 'ES') OR ($chardata[$i]['type'] == 'CS')) { - $chardata[$i]['type'] = 'ON'; - } - if ($chardata[$i]['level'] != $prevlevel) { - $levcount = 0; - } else { - $levcount++; - } - $prevlevel = $chardata[$i]['level']; - } - - //W7. Search backward from each instance of a European number until the first strong type (R, L, or sor) is found. If an L is found, then change the type of the European number to L. - $prevlevel = -1; - $levcount = 0; - for ($i=0; $i < $numchars; $i++) { - if ($chardata[$i]['char'] == 'EN') { - for ($j=$levcount; $j >= 0; $j--) { - if ($chardata[$j]['type'] == 'L') { - $chardata[$i]['type'] = 'L'; - } elseif ($chardata[$j]['type'] == 'R') { - break; - } - } - } - if ($chardata[$i]['level'] != $prevlevel) { - $levcount = 0; - } else { - $levcount++; - } - $prevlevel = $chardata[$i]['level']; - } - - // N1. A sequence of neutrals takes the direction of the surrounding strong text if the text on both sides has the same direction. European and Arabic numbers act as if they were R in terms of their influence on neutrals. Start-of-level-run (sor) and end-of-level-run (eor) are used at level run boundaries. - $prevlevel = -1; - $levcount = 0; - for ($i=0; $i < $numchars; $i++) { - if (($levcount > 0) AND (($i+1) < $numchars) AND ($chardata[($i+1)]['level'] == $prevlevel)) { - if (($chardata[$i]['type'] == 'N') AND ($chardata[($i-1)]['type'] == 'L') AND ($chardata[($i+1)]['type'] == 'L')) { - $chardata[$i]['type'] = 'L'; - } elseif (($chardata[$i]['type'] == 'N') AND - (($chardata[($i-1)]['type'] == 'R') OR ($chardata[($i-1)]['type'] == 'EN') OR ($chardata[($i-1)]['type'] == 'AN')) AND - (($chardata[($i+1)]['type'] == 'R') OR ($chardata[($i+1)]['type'] == 'EN') OR ($chardata[($i+1)]['type'] == 'AN'))) { - $chardata[$i]['type'] = 'R'; - } elseif ($chardata[$i]['type'] == 'N') { - // N2. Any remaining neutrals take the embedding direction - $chardata[$i]['type'] = $chardata[$i]['sor']; - } - } elseif (($levcount == 0) AND (($i+1) < $numchars) AND ($chardata[($i+1)]['level'] == $prevlevel)) { - // first char - if (($chardata[$i]['type'] == 'N') AND ($chardata[$i]['sor'] == 'L') AND ($chardata[($i+1)]['type'] == 'L')) { - $chardata[$i]['type'] = 'L'; - } elseif (($chardata[$i]['type'] == 'N') AND - (($chardata[$i]['sor'] == 'R') OR ($chardata[$i]['sor'] == 'EN') OR ($chardata[$i]['sor'] == 'AN')) AND - (($chardata[($i+1)]['type'] == 'R') OR ($chardata[($i+1)]['type'] == 'EN') OR ($chardata[($i+1)]['type'] == 'AN'))) { - $chardata[$i]['type'] = 'R'; - } elseif ($chardata[$i]['type'] == 'N') { - // N2. Any remaining neutrals take the embedding direction - $chardata[$i]['type'] = $chardata[$i]['sor']; - } - } elseif (($levcount > 0) AND ((($i+1) == $numchars) OR (($i+1) < $numchars) AND ($chardata[($i+1)]['level'] != $prevlevel))) { - //last char - if (($chardata[$i]['type'] == 'N') AND ($chardata[($i-1)]['type'] == 'L') AND ($chardata[$i]['eor'] == 'L')) { - $chardata[$i]['type'] = 'L'; - } elseif (($chardata[$i]['type'] == 'N') AND - (($chardata[($i-1)]['type'] == 'R') OR ($chardata[($i-1)]['type'] == 'EN') OR ($chardata[($i-1)]['type'] == 'AN')) AND - (($chardata[$i]['eor'] == 'R') OR ($chardata[$i]['eor'] == 'EN') OR ($chardata[$i]['eor'] == 'AN'))) { - $chardata[$i]['type'] = 'R'; - } elseif ($chardata[$i]['type'] == 'N') { - // N2. Any remaining neutrals take the embedding direction - $chardata[$i]['type'] = $chardata[$i]['sor']; - } - } elseif ($chardata[$i]['type'] == 'N') { - // N2. Any remaining neutrals take the embedding direction - $chardata[$i]['type'] = $chardata[$i]['sor']; - } - if ($chardata[$i]['level'] != $prevlevel) { - $levcount = 0; - } else { - $levcount++; - } - $prevlevel = $chardata[$i]['level']; - } - - // I1. For all characters with an even (left-to-right) embedding direction, those of type R go up one level and those of type AN or EN go up two levels. - // I2. For all characters with an odd (right-to-left) embedding direction, those of type L, EN or AN go up one level. - for ($i=0; $i < $numchars; $i++) { - $odd = $chardata[$i]['level'] % 2; - if ($odd) { - if (($chardata[$i]['type'] == 'L') OR ($chardata[$i]['type'] == 'AN') OR ($chardata[$i]['type'] == 'EN')){ - $chardata[$i]['level'] += 1; - } - } else { - if ($chardata[$i]['type'] == 'R') { - $chardata[$i]['level'] += 1; - } elseif (($chardata[$i]['type'] == 'AN') OR ($chardata[$i]['type'] == 'EN')){ - $chardata[$i]['level'] += 2; - } - } - $maxlevel = max($chardata[$i]['level'],$maxlevel); - } - - // L1. On each line, reset the embedding level of the following characters to the paragraph embedding level: - // 1. Segment separators, - // 2. Paragraph separators, - // 3. Any sequence of whitespace characters preceding a segment separator or paragraph separator, and - // 4. Any sequence of white space characters at the end of the line. - for ($i=0; $i < $numchars; $i++) { - if (($chardata[$i]['type'] == 'B') OR ($chardata[$i]['type'] == 'S')) { - $chardata[$i]['level'] = $pel; - } elseif ($chardata[$i]['type'] == 'WS') { - $j = $i+1; - while ($j < $numchars) { - if ((($chardata[$j]['type'] == 'B') OR ($chardata[$j]['type'] == 'S')) OR - (($j == ($numchars-1)) AND ($chardata[$j]['type'] == 'WS'))) { - $chardata[$i]['level'] = $pel;; - break; - } elseif ($chardata[$j]['type'] != 'WS') { - break; - } - $j++; - } - } - } - - // Arabic Shaping - // Cursively connected scripts, such as Arabic or Syriac, require the selection of positional character shapes that depend on adjacent characters. Shaping is logically applied after the Bidirectional Algorithm is used and is limited to characters within the same directional run. - if ($arabic) { - for ($i=0; $i < $numchars; $i++) { - if ($unicode[$chardata[$i]['char']] == 'AL') { - if (($i > 0) AND (($i+1) < $numchars) AND - ($unicode[$chardata[($i-1)]['char']] == 'AL') AND - ($unicode[$chardata[($i+1)]['char']] == 'AL') AND - ($chardata[($i-1)]['type'] == $chardata[$i]['type']) AND - ($chardata[($i+1)]['type'] == $chardata[$i]['type'])) { - // medial - if (isset($unicode_arlet[$chardata[$i]['char']][3])) { - $chardata[$i]['char'] = $unicode_arlet[$chardata[$i]['char']][3]; - } - } elseif ((($i+1) < $numchars) AND - ($unicode[$chardata[($i+1)]['char']] == 'AL') AND - ($chardata[($i+1)]['type'] == $chardata[$i]['type'])) { - // initial - if (isset($unicode_arlet[$chardata[$i]['char']][2])) { - $chardata[$i]['char'] = $unicode_arlet[$chardata[$i]['char']][2]; - } - } elseif (($i > 0) AND - ($unicode[$chardata[($i-1)]['char']] == 'AL') AND - ($chardata[($i-1)]['type'] == $chardata[$i]['type'])) { - // final - if (isset($unicode_arlet[$chardata[$i]['char']][1])) { - $chardata[$i]['char'] = $unicode_arlet[$chardata[$i]['char']][1]; - } - } elseif (isset($unicode_arlet[$chardata[$i]['char']][0])) { - // isolated - $chardata[$i]['char'] = $unicode_arlet[$chardata[$i]['char']][0]; - } - } - } - } - - // L2. From the highest level found in the text to the lowest odd level on each line, including intermediate levels not actually present in the text, reverse any contiguous sequence of characters that are at that level or higher. - for ($j=$maxlevel; $j > 0; $j--) { - $ordarray = Array(); - $revarr = Array(); - $onlevel = false; - for ($i=0; $i < $numchars; $i++) { - if ($chardata[$i]['level'] >= $j) { - $onlevel = true; - if (isset($unicode_mirror[$chardata[$i]['char']])) { - // L4. A character is depicted by a mirrored glyph if and only if (a) the resolved directionality of that character is R, and (b) the Bidi_Mirrored property value of that character is true. - $chardata[$i]['char'] = $unicode_mirror[$chardata[$i]['char']]; - } - $revarr[] = $chardata[$i]; - } else { - if($onlevel) { - $revarr = array_reverse($revarr); - $ordarray = array_merge($ordarray, $revarr); - $revarr = Array(); - $onlevel = false; - } - $ordarray[] = $chardata[$i]; - } - } - if($onlevel) { - $revarr = array_reverse($revarr); - $ordarray = array_merge($ordarray, $revarr); - } - $chardata = $ordarray; - } - - $ordarray = array(); - for ($i=0; $i < $numchars; $i++) { - $ordarray[] = $chardata[$i]['char']; - } - - return $this->arrUTF8ToUTF16BE($ordarray, $setbom); - } - - // END OF BIDIRECTIONAL TEXT SECTION ------------------- - - /* - * Adds a bookmark. - * @param string $txt bookmark description. - * @param int $level bookmark level. - * @param float $y Ordinate of the boorkmark position (default = -1 = current position). - * @access public - * @author Olivier Plathey, Nicola Asuni - * @since 2.1.002 (2008-02-12) - */ - public function Bookmark($txt, $level=0, $y=-1) { - if($y == -1) { - $y = $this->GetY(); - } - $this->outlines[]=array('t'=>$txt,'l'=>$level,'y'=>$y,'p'=>$this->PageNo()); - } - - /* - * Create a bookmark PDF string. - * @access private - * @author Olivier Plathey, Nicola Asuni - * @since 2.1.002 (2008-02-12) - */ - private function _putbookmarks() { - $nb = count($this->outlines); - if($nb == 0) { - return; - } - $lru = array(); - $level = 0; - foreach($this->outlines as $i=>$o) { - if($o['l'] > 0) { - $parent = $lru[$o['l'] - 1]; - //Set parent and last pointers - $this->outlines[$i]['parent'] = $parent; - $this->outlines[$parent]['last'] = $i; - if($o['l'] > $level) { - //Level increasing: set first pointer - $this->outlines[$parent]['first'] = $i; - } - } else { - $this->outlines[$i]['parent']=$nb; - } - if($o['l']<=$level and $i>0) { - //Set prev and next pointers - $prev = $lru[$o['l']]; - $this->outlines[$prev]['next'] = $i; - $this->outlines[$i]['prev'] = $prev; - } - $lru[$o['l']] = $i; - $level = $o['l']; - } - //Outline items - $n = $this->n+1; - foreach($this->outlines as $i=>$o) { - $this->_newobj(); - $this->_out('<_textstring($o['t'])); - $this->_out('/Parent '.($n+$o['parent']).' 0 R'); - if(isset($o['prev'])) - $this->_out('/Prev '.($n+$o['prev']).' 0 R'); - if(isset($o['next'])) - $this->_out('/Next '.($n+$o['next']).' 0 R'); - if(isset($o['first'])) - $this->_out('/First '.($n+$o['first']).' 0 R'); - if(isset($o['last'])) - $this->_out('/Last '.($n+$o['last']).' 0 R'); - $this->_out(sprintf('/Dest [%d 0 R /XYZ 0 %.2f null]',1+2*$o['p'],($this->h-$o['y'])*$this->k)); - $this->_out('/Count 0>>'); - $this->_out('endobj'); - } - //Outline root - $this->_newobj(); - $this->OutlineRoot=$this->n; - $this->_out('<_out('/Last '.($n+$lru[0]).' 0 R>>'); - $this->_out('endobj'); - } - - - // --- JAVASCRIPT - FORMS ------------------------------ - - /* - * Adds a javascript - * @access public - * @author Johannes Güntert, Nicola Asuni - * @since 2.1.002 (2008-02-12) - */ - public function IncludeJS($script) { - $this->javascript .= $script; - } - - /* - * Create a javascript PDF string. - * @access private - * @author Johannes Güntert, Nicola Asuni - * @since 2.1.002 (2008-02-12) - */ - private function _putjavascript() { - if (empty($this->javascript)) { - return; - } - $this->_newobj(); - $this->n_js = $this->n; - $this->_out('<<'); - $this->_out('/Names [(EmbeddedJS) '.($this->n+1).' 0 R ]'); - $this->_out('>>'); - $this->_out('endobj'); - $this->_newobj(); - $this->_out('<<'); - $this->_out('/S /JavaScript'); - $this->_out('/JS '.$this->_textstring($this->javascript)); - $this->_out('>>'); - $this->_out('endobj'); - } - - /* - * Convert color to javascript color. - * @param string $color color name or #RRGGBB - * @access private - * @author Denis Van Nuffelen, Nicola Asuni - * @since 2.1.002 (2008-02-12) - */ - private function _JScolor($color) { - static $aColors = array('transparent','black','white','red','green','blue','cyan','magenta','yellow','dkGray','gray','ltGray'); - if(substr($color,0,1) == '#') { - return sprintf("['RGB',%.3f,%.3f,%.3f]", hexdec(substr($color,1,2))/255, hexdec(substr($color,3,2))/255, hexdec(substr($color,5,2))/255); - } - if(!in_array($color,$aColors)) { - $this->Error('Invalid color: '.$color); - } - return 'color.'.$color; - } - - /* - * Adds a javascript form field. - * @param string $type field type - * @param string $name field name - * @param int $x horizontal position - * @param int $y vertical position - * @param int $w width - * @param int $h height - * @param string $prop properties - * @access private - * @author Denis Van Nuffelen, Nicola Asuni - * @since 2.1.002 (2008-02-12) - */ - private function _addfield($type, $name, $x, $y, $w, $h, $prop) { - $k = $this->k; - $this->javascript .= sprintf("f=addField('%s','%s',%d,[%.2f,%.2f,%.2f,%.2f]);",$name,$type,$this->PageNo()-1,$x*$k,($this->h-$y)*$k+1,($x+$w)*$k,($this->h-$y-$h)*$k+1); - $this->javascript .= 'f.textSize='.$this->FontSizePt.';'; - if(isset($prop['value'])) { - $this->javascript .= "f.value='".addslashes($prop['value'])."';"; - } - if(isset($prop['TextColor'])) { - $this->javascript .= 'f.textColor='.$this->_JScolor($prop['TextColor']).';'; - } - if(isset($prop['FillColor'])) { - $this->javascript .= 'f.fillColor='.$this->_JScolor($prop['FillColor']).';'; - } - if(isset($prop['BorderColor'])) { - $this->javascript .= 'f.strokeColor='.$this->_JScolor($prop['BorderColor']).';'; - } - if(isset($prop['BorderStyle'])) { - $this->javascript .= "f.borderStyle='".$prop['BorderStyle']."';"; - } - $this->x+=$w; - } - - /* - * Creates a text field - * @param string $name field name - * @param int $w width - * @param int $h height - * @param string $prop properties. The value property allows to set the initial value. The multiline property allows to define the field as multiline. - * @access public - * @author Denis Van Nuffelen, Nicola Asuni - * @since 2.1.002 (2008-02-12) - */ - public function TextField($name, $w, $h, $prop=array()) { - $this->_addfield('text',$name,$this->x,$this->y,$w,$h,$prop); - if(isset($prop['multiline']) AND $prop['multiline']) { - $this->javascript .= 'f.multiline=true;'; - } - } - - /* - * Creates a Combo-box field - * @param string $name field name - * @param int $w width - * @param int $h height - * @param array $values array containing the list of values. - * @param string $prop properties. - * @access public - * @author Denis Van Nuffelen, Nicola Asuni - * @since 2.1.002 (2008-02-12) - */ - public function ComboBox($name, $w, $h, $values, $prop=array()) { - $this->_addfield('combobox',$name,$this->x,$this->y,$w,$h,$prop); - $s = ''; - foreach($values as $value) { - $s .= "'".addslashes($value)."',"; - } - $this->javascript .= 'f.setItems(['.substr($s,0,-1).']);'; - } - - /* - * Creates a CheckBox field - * @param string $name field name - * @param int $w width - * @param boolean $checked define the initial state (default = false). - * @param string $prop properties. - * @access public - * @author Denis Van Nuffelen, Nicola Asuni - * @since 2.1.002 (2008-02-12) - */ - public function CheckBox($name, $w, $checked=false, $prop=array()) { - $prop['value'] = ($checked ? 'Yes' : 'Off'); - if(!isset($prop['BorderColor'])) { - $prop['BorderColor']='black'; - } - $this->_addfield('checkbox',$name,$this->x,$this->y,$w,$w,$prop); - } - - /* - * Creates a button field - * @param string $name field name - * @param int $w width - * @param int $h height - * @param string $caption caption. - * @param string $action action triggered by the button (JavaScript code). - * @param string $prop properties. - * @access public - * @author Denis Van Nuffelen, Nicola Asuni - * @since 2.1.002 (2008-02-12) - */ - public function Button($name, $w, $h, $caption, $action, $prop=array()) { - if(!isset($prop['BorderColor'])) { - $prop['BorderColor']='black'; - } - $prop['BorderStyle']='beveled'; - $this->_addfield('button',$name,$this->x,$this->y,$w,$h,$prop); - $this->javascript .= "f.buttonSetCaption('".addslashes($caption)."');"; - $this->javascript .= "f.setAction('MouseUp','".addslashes($action)."');"; - $this->javascript .= "f.highlight='push';"; - $this->javascript .= 'f.print=false;'; - } - - // END JAVASCRIPT - FORMS ------------------------------ - - } // END OF TCPDF CLASS - - //Handle special IE contype request - if(isset($_SERVER['HTTP_USER_AGENT']) AND ($_SERVER['HTTP_USER_AGENT']=='contype')) { - header('Content-Type: application/pdf'); - exit; - } - -} +class TCPDF { + + // private properties + + /** + * Current TCPDF version. + * @private + */ + private $tcpdf_version = '5.9.039'; + + // Protected properties + + /** + * Current page number. + * @protected + */ + protected $page; + + /** + * Current object number. + * @protected + */ + protected $n; + + /** + * Array of object offsets. + * @protected + */ + protected $offsets; + + /** + * Buffer holding in-memory PDF. + * @protected + */ + protected $buffer; + + /** + * Array containing pages. + * @protected + */ + protected $pages = array(); + + /** + * Current document state. + * @protected + */ + protected $state; + + /** + * Compression flag. + * @protected + */ + protected $compress; + + /** + * Current page orientation (P = Portrait, L = Landscape). + * @protected + */ + protected $CurOrientation; + + /** + * Page dimensions. + * @protected + */ + protected $pagedim = array(); + + /** + * Scale factor (number of points in user unit). + * @protected + */ + protected $k; + + /** + * Width of page format in points. + * @protected + */ + protected $fwPt; + + /** + * Height of page format in points. + * @protected + */ + protected $fhPt; + + /** + * Current width of page in points. + * @protected + */ + protected $wPt; + + /** + * Current height of page in points. + * @protected + */ + protected $hPt; + + /** + * Current width of page in user unit. + * @protected + */ + protected $w; + + /** + * Current height of page in user unit. + * @protected + */ + protected $h; + + /** + * Left margin. + * @protected + */ + protected $lMargin; + + /** + * Top margin. + * @protected + */ + protected $tMargin; + + /** + * Right margin. + * @protected + */ + protected $rMargin; + + /** + * Page break margin. + * @protected + */ + protected $bMargin; + + /** + * Array of cell internal paddings ('T' => top, 'R' => right, 'B' => bottom, 'L' => left). + * @since 5.9.000 (2010-10-03) + * @protected + */ + protected $cell_padding = array('T' => 0, 'R' => 0, 'B' => 0, 'L' => 0); + + /** + * Array of cell margins ('T' => top, 'R' => right, 'B' => bottom, 'L' => left). + * @since 5.9.000 (2010-10-04) + * @protected + */ + protected $cell_margin = array('T' => 0, 'R' => 0, 'B' => 0, 'L' => 0); + + /** + * Current horizontal position in user unit for cell positioning. + * @protected + */ + protected $x; + + /** + * Current vertical position in user unit for cell positioning. + * @protected + */ + protected $y; + + /** + * Height of last cell printed. + * @protected + */ + protected $lasth; + + /** + * Line width in user unit. + * @protected + */ + protected $LineWidth; + + /** + * Array of standard font names. + * @protected + */ + protected $CoreFonts; + + /** + * Array of used fonts. + * @protected + */ + protected $fonts = array(); + + /** + * Array of font files. + * @protected + */ + protected $FontFiles = array(); + + /** + * Array of encoding differences. + * @protected + */ + protected $diffs = array(); + + /** + * Array of used images. + * @protected + */ + protected $images = array(); + + /** + * Array of Annotations in pages. + * @protected + */ + protected $PageAnnots = array(); + + /** + * Array of internal links. + * @protected + */ + protected $links = array(); + + /** + * Current font family. + * @protected + */ + protected $FontFamily; + + /** + * Current font style. + * @protected + */ + protected $FontStyle; + + /** + * Current font ascent (distance between font top and baseline). + * @protected + * @since 2.8.000 (2007-03-29) + */ + protected $FontAscent; + + /** + * Current font descent (distance between font bottom and baseline). + * @protected + * @since 2.8.000 (2007-03-29) + */ + protected $FontDescent; + + /** + * Underlining flag. + * @protected + */ + protected $underline; + + /** + * Overlining flag. + * @protected + */ + protected $overline; + + /** + * Current font info. + * @protected + */ + protected $CurrentFont; + + /** + * Current font size in points. + * @protected + */ + protected $FontSizePt; + + /** + * Current font size in user unit. + * @protected + */ + protected $FontSize; + + /** + * Commands for drawing color. + * @protected + */ + protected $DrawColor; + + /** + * Commands for filling color. + * @protected + */ + protected $FillColor; + + /** + * Commands for text color. + * @protected + */ + protected $TextColor; + + /** + * Indicates whether fill and text colors are different. + * @protected + */ + protected $ColorFlag; + + /** + * Automatic page breaking. + * @protected + */ + protected $AutoPageBreak; + + /** + * Threshold used to trigger page breaks. + * @protected + */ + protected $PageBreakTrigger; + + /** + * Flag set when processing footer. + * @protected + */ + protected $InFooter = false; + + /** + * Zoom display mode. + * @protected + */ + protected $ZoomMode; + + /** + * Layout display mode. + * @protected + */ + protected $LayoutMode; + + /** + * If true set the document information dictionary in Unicode. + * @protected + */ + protected $docinfounicode = true; + + /** + * Document title. + * @protected + */ + protected $title = ''; + + /** + * Document subject. + * @protected + */ + protected $subject = ''; + + /** + * Document author. + * @protected + */ + protected $author = ''; + + /** + * Document keywords. + * @protected + */ + protected $keywords = ''; + + /** + * Document creator. + * @protected + */ + protected $creator = ''; + + /** + * String alias for total number of pages. + * @protected + */ + protected $AliasNbPages = '{nb}'; + + /** + * String alias for page number. + * @protected + */ + protected $AliasNumPage = '{pnb}'; + + /** + * The right-bottom (or left-bottom for RTL) corner X coordinate of last inserted image. + * @since 2002-07-31 + * @author Nicola Asuni + * @protected + */ + protected $img_rb_x; + + /** + * The right-bottom corner Y coordinate of last inserted image. + * @since 2002-07-31 + * @author Nicola Asuni + * @protected + */ + protected $img_rb_y; + + /** + * Adjusting factor to convert pixels to user units. + * @since 2004-06-14 + * @author Nicola Asuni + * @protected + */ + protected $imgscale = 1; + + /** + * Boolean flag set to true when the input text is unicode (require unicode fonts). + * @since 2005-01-02 + * @author Nicola Asuni + * @protected + */ + protected $isunicode = false; + + /** + * Object containing unicode data. + * @since 5.9.004 (2010-10-18) + * @author Nicola Asuni + * @protected + */ + protected $unicode; + + /** + * PDF version. + * @since 1.5.3 + * @protected + */ + protected $PDFVersion = '1.7'; + + /** + * Minimum distance between header and top page margin. + * @protected + */ + protected $header_margin; + + /** + * Minimum distance between footer and bottom page margin. + * @protected + */ + protected $footer_margin; + + /** + * Original left margin value. + * @protected + * @since 1.53.0.TC013 + */ + protected $original_lMargin; + + /** + * Original right margin value. + * @protected + * @since 1.53.0.TC013 + */ + protected $original_rMargin; + + /** + * Default font used on page header. + * @protected + */ + protected $header_font; + + /** + * Default font used on page footer. + * @protected + */ + protected $footer_font; + + /** + * Language templates. + * @protected + */ + protected $l; + + /** + * Barcode to print on page footer (only if set). + * @protected + */ + protected $barcode = false; + + /** + * Boolean flag to print/hide page header. + * @protected + */ + protected $print_header = true; + + /** + * Boolean flag to print/hide page footer. + * @protected + */ + protected $print_footer = true; + + /** + * Header image logo. + * @protected + */ + protected $header_logo = ''; + + /** + * Width of header image logo in user units. + * @protected + */ + protected $header_logo_width = 30; + + /** + * Title to be printed on default page header. + * @protected + */ + protected $header_title = ''; + + /** + * String to pring on page header after title. + * @protected + */ + protected $header_string = ''; + + /** + * Default number of columns for html table. + * @protected + */ + protected $default_table_columns = 4; + + // variables for html parser + + /** + * HTML PARSER: array to store current link and rendering styles. + * @protected + */ + protected $HREF = array(); + + /** + * List of available fonts on filesystem. + * @protected + */ + protected $fontlist = array(); + + /** + * Current foreground color. + * @protected + */ + protected $fgcolor; + + /** + * HTML PARSER: array of boolean values, true in case of ordered list (OL), false otherwise. + * @protected + */ + protected $listordered = array(); + + /** + * HTML PARSER: array count list items on nested lists. + * @protected + */ + protected $listcount = array(); + + /** + * HTML PARSER: current list nesting level. + * @protected + */ + protected $listnum = 0; + + /** + * HTML PARSER: indent amount for lists. + * @protected + */ + protected $listindent = 0; + + /** + * HTML PARSER: current list indententation level. + * @protected + */ + protected $listindentlevel = 0; + + /** + * Current background color. + * @protected + */ + protected $bgcolor; + + /** + * Temporary font size in points. + * @protected + */ + protected $tempfontsize = 10; + + /** + * Spacer string for LI tags. + * @protected + */ + protected $lispacer = ''; + + /** + * Default encoding. + * @protected + * @since 1.53.0.TC010 + */ + protected $encoding = 'UTF-8'; + + /** + * PHP internal encoding. + * @protected + * @since 1.53.0.TC016 + */ + protected $internal_encoding; + + /** + * Boolean flag to indicate if the document language is Right-To-Left. + * @protected + * @since 2.0.000 + */ + protected $rtl = false; + + /** + * Boolean flag used to force RTL or LTR string direction. + * @protected + * @since 2.0.000 + */ + protected $tmprtl = false; + + // --- Variables used for document encryption: + + /** + * IBoolean flag indicating whether document is protected. + * @protected + * @since 2.0.000 (2008-01-02) + */ + protected $encrypted; + + /** + * Array containing encryption settings. + * @protected + * @since 5.0.005 (2010-05-11) + */ + protected $encryptdata = array(); + + /** + * Last RC4 key encrypted (cached for optimisation). + * @protected + * @since 2.0.000 (2008-01-02) + */ + protected $last_enc_key; + + /** + * Last RC4 computed key. + * @protected + * @since 2.0.000 (2008-01-02) + */ + protected $last_enc_key_c; + + /** + * Encryption padding string. + * @protected + */ + protected $enc_padding = "\x28\xBF\x4E\x5E\x4E\x75\x8A\x41\x64\x00\x4E\x56\xFF\xFA\x01\x08\x2E\x2E\x00\xB6\xD0\x68\x3E\x80\x2F\x0C\xA9\xFE\x64\x53\x69\x7A"; + + /** + * File ID (used on document trailer). + * @protected + * @since 5.0.005 (2010-05-12) + */ + protected $file_id; + + // --- bookmark --- + + /** + * Outlines for bookmark. + * @protected + * @since 2.1.002 (2008-02-12) + */ + protected $outlines = array(); + + /** + * Outline root for bookmark. + * @protected + * @since 2.1.002 (2008-02-12) + */ + protected $OutlineRoot; + + // --- javascript and form --- + + /** + * Javascript code. + * @protected + * @since 2.1.002 (2008-02-12) + */ + protected $javascript = ''; + + /** + * Javascript counter. + * @protected + * @since 2.1.002 (2008-02-12) + */ + protected $n_js; + + /** + * line trough state + * @protected + * @since 2.8.000 (2008-03-19) + */ + protected $linethrough; + + /** + * Array with additional document-wide usage rights for the document. + * @protected + * @since 5.8.014 (2010-08-23) + */ + protected $ur = array(); + + /** + * DPI (Dot Per Inch) Document Resolution (do not change). + * @protected + * @since 3.0.000 (2008-03-27) + */ + protected $dpi = 72; + + /** + * Array of page numbers were a new page group was started. + * @protected + * @since 3.0.000 (2008-03-27) + */ + protected $newpagegroup = array(); + + /** + * Contains the number of pages of the groups. + * @protected + * @since 3.0.000 (2008-03-27) + */ + protected $pagegroups; + + /** + * Contains the alias of the current page group. + * @protected + * @since 3.0.000 (2008-03-27) + */ + protected $currpagegroup; + + /** + * Restrict the rendering of some elements to screen or printout. + * @protected + * @since 3.0.000 (2008-03-27) + */ + protected $visibility = 'all'; + + /** + * Print visibility. + * @protected + * @since 3.0.000 (2008-03-27) + */ + protected $n_ocg_print; + + /** + * View visibility. + * @protected + * @since 3.0.000 (2008-03-27) + */ + protected $n_ocg_view; + + /** + * Array of transparency objects and parameters. + * @protected + * @since 3.0.000 (2008-03-27) + */ + protected $extgstates; + + /** + * Set the default JPEG compression quality (1-100). + * @protected + * @since 3.0.000 (2008-03-27) + */ + protected $jpeg_quality; + + /** + * Default cell height ratio. + * @protected + * @since 3.0.014 (2008-05-23) + */ + protected $cell_height_ratio = K_CELL_HEIGHT_RATIO; + + /** + * PDF viewer preferences. + * @protected + * @since 3.1.000 (2008-06-09) + */ + protected $viewer_preferences; + + /** + * A name object specifying how the document should be displayed when opened. + * @protected + * @since 3.1.000 (2008-06-09) + */ + protected $PageMode; + + /** + * Array for storing gradient information. + * @protected + * @since 3.1.000 (2008-06-09) + */ + protected $gradients = array(); + + /** + * Array used to store positions inside the pages buffer (keys are the page numbers). + * @protected + * @since 3.2.000 (2008-06-26) + */ + protected $intmrk = array(); + + /** + * Array used to store positions inside the pages buffer (keys are the page numbers). + * @protected + * @since 5.7.000 (2010-08-03) + */ + protected $bordermrk = array(); + + /** + * Array used to store page positions to track empty pages (keys are the page numbers). + * @protected + * @since 5.8.007 (2010-08-18) + */ + protected $emptypagemrk = array(); + + /** + * Array used to store content positions inside the pages buffer (keys are the page numbers). + * @protected + * @since 4.6.021 (2009-07-20) + */ + protected $cntmrk = array(); + + /** + * Array used to store footer positions of each page. + * @protected + * @since 3.2.000 (2008-07-01) + */ + protected $footerpos = array(); + + /** + * Array used to store footer length of each page. + * @protected + * @since 4.0.014 (2008-07-29) + */ + protected $footerlen = array(); + + /** + * Boolean flag to indicate if a new line is created. + * @protected + * @since 3.2.000 (2008-07-01) + */ + protected $newline = true; + + /** + * End position of the latest inserted line. + * @protected + * @since 3.2.000 (2008-07-01) + */ + protected $endlinex = 0; + + /** + * PDF string for width value of the last line. + * @protected + * @since 4.0.006 (2008-07-16) + */ + protected $linestyleWidth = ''; + + /** + * PDF string for CAP value of the last line. + * @protected + * @since 4.0.006 (2008-07-16) + */ + protected $linestyleCap = '0 J'; + + /** + * PDF string for join value of the last line. + * @protected + * @since 4.0.006 (2008-07-16) + */ + protected $linestyleJoin = '0 j'; + + /** + * PDF string for dash value of the last line. + * @protected + * @since 4.0.006 (2008-07-16) + */ + protected $linestyleDash = '[] 0 d'; + + /** + * Boolean flag to indicate if marked-content sequence is open. + * @protected + * @since 4.0.013 (2008-07-28) + */ + protected $openMarkedContent = false; + + /** + * Count the latest inserted vertical spaces on HTML. + * @protected + * @since 4.0.021 (2008-08-24) + */ + protected $htmlvspace = 0; + + /** + * Array of Spot colors. + * @protected + * @since 4.0.024 (2008-09-12) + */ + protected $spot_colors = array(); + + /** + * Symbol used for HTML unordered list items. + * @protected + * @since 4.0.028 (2008-09-26) + */ + protected $lisymbol = ''; + + /** + * String used to mark the beginning and end of EPS image blocks. + * @protected + * @since 4.1.000 (2008-10-18) + */ + protected $epsmarker = 'x#!#EPS#!#x'; + + /** + * Array of transformation matrix. + * @protected + * @since 4.2.000 (2008-10-29) + */ + protected $transfmatrix = array(); + + /** + * Current key for transformation matrix. + * @protected + * @since 4.8.005 (2009-09-17) + */ + protected $transfmatrix_key = 0; + + /** + * Booklet mode for double-sided pages. + * @protected + * @since 4.2.000 (2008-10-29) + */ + protected $booklet = false; + + /** + * Epsilon value used for float calculations. + * @protected + * @since 4.2.000 (2008-10-29) + */ + protected $feps = 0.005; + + /** + * Array used for custom vertical spaces for HTML tags. + * @protected + * @since 4.2.001 (2008-10-30) + */ + protected $tagvspaces = array(); + + /** + * HTML PARSER: custom indent amount for lists. Negative value means disabled. + * @protected + * @since 4.2.007 (2008-11-12) + */ + protected $customlistindent = -1; + + /** + * Boolean flag to indicate if the border of the cell sides that cross the page should be removed. + * @protected + * @since 4.2.010 (2008-11-14) + */ + protected $opencell = true; + + /** + * Array of files to embedd. + * @protected + * @since 4.4.000 (2008-12-07) + */ + protected $embeddedfiles = array(); + + /** + * Boolean flag to indicate if we are inside a PRE tag. + * @protected + * @since 4.4.001 (2008-12-08) + */ + protected $premode = false; + + /** + * Array used to store positions of graphics transformation blocks inside the page buffer. + * keys are the page numbers + * @protected + * @since 4.4.002 (2008-12-09) + */ + protected $transfmrk = array(); + + /** + * Default color for html links. + * @protected + * @since 4.4.003 (2008-12-09) + */ + protected $htmlLinkColorArray = array(0, 0, 255); + + /** + * Default font style to add to html links. + * @protected + * @since 4.4.003 (2008-12-09) + */ + protected $htmlLinkFontStyle = 'U'; + + /** + * Counts the number of pages. + * @protected + * @since 4.5.000 (2008-12-31) + */ + protected $numpages = 0; + + /** + * Array containing page lengths in bytes. + * @protected + * @since 4.5.000 (2008-12-31) + */ + protected $pagelen = array(); + + /** + * Counts the number of pages. + * @protected + * @since 4.5.000 (2008-12-31) + */ + protected $numimages = 0; + + /** + * Store the image keys. + * @protected + * @since 4.5.000 (2008-12-31) + */ + protected $imagekeys = array(); + + /** + * Length of the buffer in bytes. + * @protected + * @since 4.5.000 (2008-12-31) + */ + protected $bufferlen = 0; + + /** + * If true enables disk caching. + * @protected + * @since 4.5.000 (2008-12-31) + */ + protected $diskcache = false; + + /** + * Counts the number of fonts. + * @protected + * @since 4.5.000 (2009-01-02) + */ + protected $numfonts = 0; + + /** + * Store the font keys. + * @protected + * @since 4.5.000 (2009-01-02) + */ + protected $fontkeys = array(); + + /** + * Store the font object IDs. + * @protected + * @since 4.8.001 (2009-09-09) + */ + protected $font_obj_ids = array(); + + /** + * Store the fage status (true when opened, false when closed). + * @protected + * @since 4.5.000 (2009-01-02) + */ + protected $pageopen = array(); + + /** + * Default monospace font. + * @protected + * @since 4.5.025 (2009-03-10) + */ + protected $default_monospaced_font = 'courier'; + + /** + * Cloned copy of the current class object. + * @protected + * @since 4.5.029 (2009-03-19) + */ + protected $objcopy; + + /** + * Array used to store the lengths of cache files. + * @protected + * @since 4.5.029 (2009-03-19) + */ + protected $cache_file_length = array(); + + /** + * Table header content to be repeated on each new page. + * @protected + * @since 4.5.030 (2009-03-20) + */ + protected $thead = ''; + + /** + * Margins used for table header. + * @protected + * @since 4.5.030 (2009-03-20) + */ + protected $theadMargins = array(); + + /** + * Cache array for UTF8StringToArray() method. + * @protected + * @since 4.5.037 (2009-04-07) + */ + protected $cache_UTF8StringToArray = array(); + + /** + * Maximum size of cache array used for UTF8StringToArray() method. + * @protected + * @since 4.5.037 (2009-04-07) + */ + protected $cache_maxsize_UTF8StringToArray = 8; + + /** + * Current size of cache array used for UTF8StringToArray() method. + * @protected + * @since 4.5.037 (2009-04-07) + */ + protected $cache_size_UTF8StringToArray = 0; + + /** + * Boolean flag to enable document digital signature. + * @protected + * @since 4.6.005 (2009-04-24) + */ + protected $sign = false; + + /** + * Digital signature data. + * @protected + * @since 4.6.005 (2009-04-24) + */ + protected $signature_data = array(); + + /** + * Digital signature max length. + * @protected + * @since 4.6.005 (2009-04-24) + */ + protected $signature_max_length = 11742; + + /** + * Data for digital signature appearance. + * @protected + * @since 5.3.011 (2010-06-16) + */ + protected $signature_appearance = array('page' => 1, 'rect' => '0 0 0 0'); + + /** + * Regular expression used to find blank characters (required for word-wrapping). + * @protected + * @since 4.6.006 (2009-04-28) + */ + protected $re_spaces = '/[^\S\xa0]/'; + + /** + * Array of $re_spaces parts. + * @protected + * @since 5.5.011 (2010-07-09) + */ + protected $re_space = array('p' => '[^\S\xa0]', 'm' => ''); + + /** + * Digital signature object ID. + * @protected + * @since 4.6.022 (2009-06-23) + */ + protected $sig_obj_id = 0; + + /** + * ByteRange placemark used during digital signature process. + * @protected + * @since 4.6.028 (2009-08-25) + */ + protected $byterange_string = '/ByteRange[0 ********** ********** **********]'; + + /** + * Placemark used during digital signature process. + * @protected + * @since 4.6.028 (2009-08-25) + */ + protected $sig_annot_ref = '***SIGANNREF*** 0 R'; + + /** + * ID of page objects. + * @protected + * @since 4.7.000 (2009-08-29) + */ + protected $page_obj_id = array(); + + /** + * List of form annotations IDs. + * @protected + * @since 4.8.000 (2009-09-07) + */ + protected $form_obj_id = array(); + + /** + * Deafult Javascript field properties. Possible values are described on official Javascript for Acrobat API reference. Annotation options can be directly specified using the 'aopt' entry. + * @protected + * @since 4.8.000 (2009-09-07) + */ + protected $default_form_prop = array('lineWidth'=>1, 'borderStyle'=>'solid', 'fillColor'=>array(255, 255, 255), 'strokeColor'=>array(128, 128, 128)); + + /** + * Javascript objects array. + * @protected + * @since 4.8.000 (2009-09-07) + */ + protected $js_objects = array(); + + /** + * Current form action (used during XHTML rendering). + * @protected + * @since 4.8.000 (2009-09-07) + */ + protected $form_action = ''; + + /** + * Current form encryption type (used during XHTML rendering). + * @protected + * @since 4.8.000 (2009-09-07) + */ + protected $form_enctype = 'application/x-www-form-urlencoded'; + + /** + * Current method to submit forms. + * @protected + * @since 4.8.000 (2009-09-07) + */ + protected $form_mode = 'post'; + + /** + * List of fonts used on form fields (fontname => fontkey). + * @protected + * @since 4.8.001 (2009-09-09) + */ + protected $annotation_fonts = array(); + + /** + * List of radio buttons parent objects. + * @protected + * @since 4.8.001 (2009-09-09) + */ + protected $radiobutton_groups = array(); + + /** + * List of radio group objects IDs. + * @protected + * @since 4.8.001 (2009-09-09) + */ + protected $radio_groups = array(); + + /** + * Text indentation value (used for text-indent CSS attribute). + * @protected + * @since 4.8.006 (2009-09-23) + */ + protected $textindent = 0; + + /** + * Store page number when startTransaction() is called. + * @protected + * @since 4.8.006 (2009-09-23) + */ + protected $start_transaction_page = 0; + + /** + * Store Y position when startTransaction() is called. + * @protected + * @since 4.9.001 (2010-03-28) + */ + protected $start_transaction_y = 0; + + /** + * True when we are printing the thead section on a new page. + * @protected + * @since 4.8.027 (2010-01-25) + */ + protected $inthead = false; + + /** + * Array of column measures (width, space, starting Y position). + * @protected + * @since 4.9.001 (2010-03-28) + */ + protected $columns = array(); + + /** + * Number of colums. + * @protected + * @since 4.9.001 (2010-03-28) + */ + protected $num_columns = 1; + + /** + * Current column number. + * @protected + * @since 4.9.001 (2010-03-28) + */ + protected $current_column = 0; + + /** + * Starting page for columns. + * @protected + * @since 4.9.001 (2010-03-28) + */ + protected $column_start_page = 0; + + /** + * Maximum page and column selected. + * @protected + * @since 5.8.000 (2010-08-11) + */ + protected $maxselcol = array('page' => 0, 'column' => 0); + + /** + * Array of: X difference between table cell x start and starting page margin, cellspacing, cellpadding. + * @protected + * @since 5.8.000 (2010-08-11) + */ + protected $colxshift = array('x' => 0, 's' => array('H' => 0, 'V' => 0), 'p' => array('L' => 0, 'T' => 0, 'R' => 0, 'B' => 0)); + + /** + * Text rendering mode: 0 = Fill text; 1 = Stroke text; 2 = Fill, then stroke text; 3 = Neither fill nor stroke text (invisible); 4 = Fill text and add to path for clipping; 5 = Stroke text and add to path for clipping; 6 = Fill, then stroke text and add to path for clipping; 7 = Add text to path for clipping. + * @protected + * @since 4.9.008 (2010-04-03) + */ + protected $textrendermode = 0; + + /** + * Text stroke width in doc units. + * @protected + * @since 4.9.008 (2010-04-03) + */ + protected $textstrokewidth = 0; + + /** + * Current stroke color. + * @protected + * @since 4.9.008 (2010-04-03) + */ + protected $strokecolor; + + /** + * Default unit of measure for document. + * @protected + * @since 5.0.000 (2010-04-22) + */ + protected $pdfunit = 'mm'; + + /** + * Boolean flag true when we are on TOC (Table Of Content) page. + * @protected + */ + protected $tocpage = false; + + /** + * Boolean flag: if true convert vector images (SVG, EPS) to raster image using GD or ImageMagick library. + * @protected + * @since 5.0.000 (2010-04-26) + */ + protected $rasterize_vector_images = false; + + /** + * Boolean flag: if true enables font subsetting by default. + * @protected + * @since 5.3.002 (2010-06-07) + */ + protected $font_subsetting = true; + + /** + * Array of default graphic settings. + * @protected + * @since 5.5.008 (2010-07-02) + */ + protected $default_graphic_vars = array(); + + /** + * Array of XObjects. + * @protected + * @since 5.8.014 (2010-08-23) + */ + protected $xobjects = array(); + + /** + * Boolean value true when we are inside an XObject. + * @protected + * @since 5.8.017 (2010-08-24) + */ + protected $inxobj = false; + + /** + * Current XObject ID. + * @protected + * @since 5.8.017 (2010-08-24) + */ + protected $xobjid = ''; + + /** + * Percentage of character stretching. + * @protected + * @since 5.9.000 (2010-09-29) + */ + protected $font_stretching = 100; + + /** + * Increases or decreases the space between characters in a text by the specified amount (tracking/kerning). + * @protected + * @since 5.9.000 (2010-09-29) + */ + protected $font_spacing = 0; + + /** + * Array of no-write regions. + * ('page' => page number or empy for current page, 'xt' => X top, 'yt' => Y top, 'xb' => X bottom, 'yb' => Y bottom, 'side' => page side 'L' = left or 'R' = right) + * @protected + * @since 5.9.003 (2010-10-14) + */ + protected $page_regions = array(); + + /** + * Array containing HTML color names and values. + * @protected + * @since 5.9.004 (2010-10-18) + */ + protected $webcolor = array(); + + /** + * Array containing spot color names and values. + * @protected + * @since 5.9.012 (2010-11-11) + */ + protected $spotcolor = array(); + + /** + * Directory used for the last SVG image. + * @protected + * @since 5.0.000 (2010-05-05) + */ + protected $svgdir = ''; + + /** + * Deafult unit of measure for SVG. + * @protected + * @since 5.0.000 (2010-05-02) + */ + protected $svgunit = 'px'; + + /** + * Array of SVG gradients. + * @protected + * @since 5.0.000 (2010-05-02) + */ + protected $svggradients = array(); + + /** + * ID of last SVG gradient. + * @protected + * @since 5.0.000 (2010-05-02) + */ + protected $svggradientid = 0; + + /** + * Boolean value true when in SVG defs group. + * @protected + * @since 5.0.000 (2010-05-02) + */ + protected $svgdefsmode = false; + + /** + * Array of SVG defs. + * @protected + * @since 5.0.000 (2010-05-02) + */ + protected $svgdefs = array(); + + /** + * Boolean value true when in SVG clipPath tag. + * @protected + * @since 5.0.000 (2010-04-26) + */ + protected $svgclipmode = false; + + /** + * Array of SVG clipPath commands. + * @protected + * @since 5.0.000 (2010-05-02) + */ + protected $svgclippaths = array(); + + /** + * Array of SVG clipPath tranformation matrix. + * @protected + * @since 5.8.022 (2010-08-31) + */ + protected $svgcliptm = array(); + + /** + * ID of last SVG clipPath. + * @protected + * @since 5.0.000 (2010-05-02) + */ + protected $svgclipid = 0; + + /** + * SVG text. + * @protected + * @since 5.0.000 (2010-05-02) + */ + protected $svgtext = ''; + + /** + * SVG text properties. + * @protected + * @since 5.8.013 (2010-08-23) + */ + protected $svgtextmode = array(); + + /** + * Array of hinheritable SVG properties. + * @protected + * @since 5.0.000 (2010-05-02) + */ + protected $svginheritprop = array('clip-rule', 'color', 'color-interpolation', 'color-interpolation-filters', 'color-profile', 'color-rendering', 'cursor', 'direction', 'fill', 'fill-opacity', 'fill-rule', 'font', 'font-family', 'font-size', 'font-size-adjust', 'font-stretch', 'font-style', 'font-variant', 'font-weight', 'glyph-orientation-horizontal', 'glyph-orientation-vertical', 'image-rendering', 'kerning', 'letter-spacing', 'marker', 'marker-end', 'marker-mid', 'marker-start', 'pointer-events', 'shape-rendering', 'stroke', 'stroke-dasharray', 'stroke-dashoffset', 'stroke-linecap', 'stroke-linejoin', 'stroke-miterlimit', 'stroke-opacity', 'stroke-width', 'text-anchor', 'text-rendering', 'visibility', 'word-spacing', 'writing-mode'); + + /** + * Array of SVG properties. + * @protected + * @since 5.0.000 (2010-05-02) + */ + protected $svgstyles = array(array( + 'alignment-baseline' => 'auto', + 'baseline-shift' => 'baseline', + 'clip' => 'auto', + 'clip-path' => 'none', + 'clip-rule' => 'nonzero', + 'color' => 'black', + 'color-interpolation' => 'sRGB', + 'color-interpolation-filters' => 'linearRGB', + 'color-profile' => 'auto', + 'color-rendering' => 'auto', + 'cursor' => 'auto', + 'direction' => 'ltr', + 'display' => 'inline', + 'dominant-baseline' => 'auto', + 'enable-background' => 'accumulate', + 'fill' => 'black', + 'fill-opacity' => 1, + 'fill-rule' => 'nonzero', + 'filter' => 'none', + 'flood-color' => 'black', + 'flood-opacity' => 1, + 'font' => '', + 'font-family' => 'helvetica', + 'font-size' => 'medium', + 'font-size-adjust' => 'none', + 'font-stretch' => 'normal', + 'font-style' => 'normal', + 'font-variant' => 'normal', + 'font-weight' => 'normal', + 'glyph-orientation-horizontal' => '0deg', + 'glyph-orientation-vertical' => 'auto', + 'image-rendering' => 'auto', + 'kerning' => 'auto', + 'letter-spacing' => 'normal', + 'lighting-color' => 'white', + 'marker' => '', + 'marker-end' => 'none', + 'marker-mid' => 'none', + 'marker-start' => 'none', + 'mask' => 'none', + 'opacity' => 1, + 'overflow' => 'auto', + 'pointer-events' => 'visiblePainted', + 'shape-rendering' => 'auto', + 'stop-color' => 'black', + 'stop-opacity' => 1, + 'stroke' => 'none', + 'stroke-dasharray' => 'none', + 'stroke-dashoffset' => 0, + 'stroke-linecap' => 'butt', + 'stroke-linejoin' => 'miter', + 'stroke-miterlimit' => 4, + 'stroke-opacity' => 1, + 'stroke-width' => 1, + 'text-anchor' => 'start', + 'text-decoration' => 'none', + 'text-rendering' => 'auto', + 'unicode-bidi' => 'normal', + 'visibility' => 'visible', + 'word-spacing' => 'normal', + 'writing-mode' => 'lr-tb', + 'text-color' => 'black', + 'transfmatrix' => array(1, 0, 0, 1, 0, 0) + )); + + //------------------------------------------------------------ + // METHODS + //------------------------------------------------------------ + + /** + * This is the class constructor. + * It allows to set up the page format, the orientation and the measure unit used in all the methods (except for the font sizes). + * @param $orientation (string) page orientation. Possible values are (case insensitive):
        • P or Portrait (default)
        • L or Landscape
        • '' (empty string) for automatic orientation
        + * @param $unit (string) User measure unit. Possible values are:
        • pt: point
        • mm: millimeter (default)
        • cm: centimeter
        • in: inch

        A point equals 1/72 of inch, that is to say about 0.35 mm (an inch being 2.54 cm). This is a very common unit in typography; font sizes are expressed in that unit. + * @param $format (mixed) The format used for pages. It can be either: one of the string values specified at getPageSizeFromFormat() or an array of parameters specified at setPageFormat(). + * @param $unicode (boolean) TRUE means that the input text is unicode (default = true) + * @param $diskcache (boolean) if TRUE reduce the RAM memory usage by caching temporary data on filesystem (slower). + * @param $encoding (string) charset encoding; default is UTF-8 + * @public + * @see getPageSizeFromFormat(), setPageFormat() + */ + public function __construct($orientation='P', $unit='mm', $format='A4', $unicode=true, $encoding='UTF-8', $diskcache=false) { + /* Set internal character encoding to ASCII */ + if (function_exists('mb_internal_encoding') AND mb_internal_encoding()) { + $this->internal_encoding = mb_internal_encoding(); + mb_internal_encoding('ASCII'); + } + // get array of HTML colors + require(dirname(__FILE__).'/htmlcolors.php'); + $this->webcolor = $webcolor; + // get array of custom spot colors + if (file_exists(dirname(__FILE__).'/spotcolors.php')) { + require(dirname(__FILE__).'/spotcolors.php'); + $this->spotcolor = $spotcolor; + } else { + $this->spotcolor = array(); + } + require_once(dirname(__FILE__).'/unicode_data.php'); + $this->unicode = new TCPDF_UNICODE_DATA(); + $this->font_obj_ids = array(); + $this->page_obj_id = array(); + $this->form_obj_id = array(); + // set disk caching + $this->diskcache = $diskcache ? true : false; + // set language direction + $this->rtl = false; + $this->tmprtl = false; + // some checks + $this->_dochecks(); + // initialization of properties + $this->isunicode = $unicode; + $this->page = 0; + $this->transfmrk[0] = array(); + $this->pagedim = array(); + $this->n = 2; + $this->buffer = ''; + $this->pages = array(); + $this->state = 0; + $this->fonts = array(); + $this->FontFiles = array(); + $this->diffs = array(); + $this->images = array(); + $this->links = array(); + $this->gradients = array(); + $this->InFooter = false; + $this->lasth = 0; + $this->FontFamily = 'helvetica'; + $this->FontStyle = ''; + $this->FontSizePt = 12; + $this->underline = false; + $this->overline = false; + $this->linethrough = false; + $this->DrawColor = '0 G'; + $this->FillColor = '0 g'; + $this->TextColor = '0 g'; + $this->ColorFlag = false; + // encryption values + $this->encrypted = false; + $this->last_enc_key = ''; + // standard Unicode fonts + $this->CoreFonts = array( + 'courier'=>'Courier', + 'courierB'=>'Courier-Bold', + 'courierI'=>'Courier-Oblique', + 'courierBI'=>'Courier-BoldOblique', + 'helvetica'=>'Helvetica', + 'helveticaB'=>'Helvetica-Bold', + 'helveticaI'=>'Helvetica-Oblique', + 'helveticaBI'=>'Helvetica-BoldOblique', + 'times'=>'Times-Roman', + 'timesB'=>'Times-Bold', + 'timesI'=>'Times-Italic', + 'timesBI'=>'Times-BoldItalic', + 'symbol'=>'Symbol', + 'zapfdingbats'=>'ZapfDingbats' + ); + // set scale factor + $this->setPageUnit($unit); + // set page format and orientation + $this->setPageFormat($format, $orientation); + // page margins (1 cm) + $margin = 28.35 / $this->k; + $this->SetMargins($margin, $margin); + // internal cell padding + $cpadding = $margin / 10; + $this->setCellPaddings($cpadding, 0, $cpadding, 0); + // cell margins + $this->setCellMargins(0, 0, 0, 0); + // line width (0.2 mm) + $this->LineWidth = 0.57 / $this->k; + $this->linestyleWidth = sprintf('%.2F w', ($this->LineWidth * $this->k)); + $this->linestyleCap = '0 J'; + $this->linestyleJoin = '0 j'; + $this->linestyleDash = '[] 0 d'; + // automatic page break + $this->SetAutoPageBreak(true, (2 * $margin)); + // full width display mode + $this->SetDisplayMode('fullwidth'); + // compression + $this->SetCompression(true); + // set default PDF version number + $this->PDFVersion = '1.7'; + $this->encoding = $encoding; + $this->HREF = array(); + $this->getFontsList(); + $this->fgcolor = array('R' => 0, 'G' => 0, 'B' => 0); + $this->strokecolor = array('R' => 0, 'G' => 0, 'B' => 0); + $this->bgcolor = array('R' => 255, 'G' => 255, 'B' => 255); + $this->extgstates = array(); + // user's rights + $this->sign = false; + $this->ur['enabled'] = false; + $this->ur['document'] = '/FullSave'; + $this->ur['annots'] = '/Create/Delete/Modify/Copy/Import/Export'; + $this->ur['form'] = '/Add/Delete/FillIn/Import/Export/SubmitStandalone/SpawnTemplate'; + $this->ur['signature'] = '/Modify'; + $this->ur['ef'] = '/Create/Delete/Modify/Import'; + $this->ur['formex'] = ''; + $this->signature_appearance = array('page' => 1, 'rect' => '0 0 0 0'); + // set default JPEG quality + $this->jpeg_quality = 75; + // initialize some settings + $this->utf8Bidi(array(''), ''); + // set default font + $this->SetFont($this->FontFamily, $this->FontStyle, $this->FontSizePt); + // check if PCRE Unicode support is enabled + if ($this->isunicode AND (@preg_match('/\pL/u', 'a') == 1)) { + // PCRE unicode support is turned ON + // \p{Z} or \p{Separator}: any kind of Unicode whitespace or invisible separator. + // \p{Lo} or \p{Other_Letter}: a Unicode letter or ideograph that does not have lowercase and uppercase variants. + // \p{Lo} is needed because Chinese characters are packed next to each other without spaces in between. + //$this->setSpacesRE('/[^\S\P{Z}\P{Lo}\xa0]/u'); + $this->setSpacesRE('/[^\S\P{Z}\xa0]/u'); + } else { + // PCRE unicode support is turned OFF + $this->setSpacesRE('/[^\S\xa0]/'); + } + $this->default_form_prop = array('lineWidth'=>1, 'borderStyle'=>'solid', 'fillColor'=>array(255, 255, 255), 'strokeColor'=>array(128, 128, 128)); + // set file ID for trailer + $this->file_id = md5($this->getRandomSeed('TCPDF'.$orientation.$unit.$format.$encoding)); + // get default graphic vars + $this->default_graphic_vars = $this->getGraphicVars(); + } + + /** + * Default destructor. + * @public + * @since 1.53.0.TC016 + */ + public function __destruct() { + // restore internal encoding + if (isset($this->internal_encoding) AND !empty($this->internal_encoding)) { + mb_internal_encoding($this->internal_encoding); + } + // unset all class variables + $this->_destroy(true); + } + + /** + * Return the current TCPDF version. + * @return TCPDF version string + * @public + * @since 5.9.012 (2010-11-10) + */ + public function getTCPDFVersion() { + return $this->tcpdf_version; + } + + /** + * Set the units of measure for the document. + * @param $unit (string) User measure unit. Possible values are:
        • pt: point
        • mm: millimeter (default)
        • cm: centimeter
        • in: inch

        A point equals 1/72 of inch, that is to say about 0.35 mm (an inch being 2.54 cm). This is a very common unit in typography; font sizes are expressed in that unit. + * @public + * @since 3.0.015 (2008-06-06) + */ + public function setPageUnit($unit) { + $unit = strtolower($unit); + //Set scale factor + switch ($unit) { + // points + case 'px': + case 'pt': { + $this->k = 1; + break; + } + // millimeters + case 'mm': { + $this->k = $this->dpi / 25.4; + break; + } + // centimeters + case 'cm': { + $this->k = $this->dpi / 2.54; + break; + } + // inches + case 'in': { + $this->k = $this->dpi; + break; + } + // unsupported unit + default : { + $this->Error('Incorrect unit: '.$unit); + break; + } + } + $this->pdfunit = $unit; + if (isset($this->CurOrientation)) { + $this->setPageOrientation($this->CurOrientation); + } + } + + /** + * Get page dimensions from format name. + * @param $format (mixed) The format name. It can be:
          + *
        • ISO 216 A Series + 2 SIS 014711 extensions
        • + *
        • A0 (841x1189 mm ; 33.11x46.81 in)
        • + *
        • A1 (594x841 mm ; 23.39x33.11 in)
        • + *
        • A2 (420x594 mm ; 16.54x23.39 in)
        • + *
        • A3 (297x420 mm ; 11.69x16.54 in)
        • + *
        • A4 (210x297 mm ; 8.27x11.69 in)
        • + *
        • A5 (148x210 mm ; 5.83x8.27 in)
        • + *
        • A6 (105x148 mm ; 4.13x5.83 in)
        • + *
        • A7 (74x105 mm ; 2.91x4.13 in)
        • + *
        • A8 (52x74 mm ; 2.05x2.91 in)
        • + *
        • A9 (37x52 mm ; 1.46x2.05 in)
        • + *
        • A10 (26x37 mm ; 1.02x1.46 in)
        • + *
        • A11 (18x26 mm ; 0.71x1.02 in)
        • + *
        • A12 (13x18 mm ; 0.51x0.71 in)
        • + *
        • ISO 216 B Series + 2 SIS 014711 extensions
        • + *
        • B0 (1000x1414 mm ; 39.37x55.67 in)
        • + *
        • B1 (707x1000 mm ; 27.83x39.37 in)
        • + *
        • B2 (500x707 mm ; 19.69x27.83 in)
        • + *
        • B3 (353x500 mm ; 13.90x19.69 in)
        • + *
        • B4 (250x353 mm ; 9.84x13.90 in)
        • + *
        • B5 (176x250 mm ; 6.93x9.84 in)
        • + *
        • B6 (125x176 mm ; 4.92x6.93 in)
        • + *
        • B7 (88x125 mm ; 3.46x4.92 in)
        • + *
        • B8 (62x88 mm ; 2.44x3.46 in)
        • + *
        • B9 (44x62 mm ; 1.73x2.44 in)
        • + *
        • B10 (31x44 mm ; 1.22x1.73 in)
        • + *
        • B11 (22x31 mm ; 0.87x1.22 in)
        • + *
        • B12 (15x22 mm ; 0.59x0.87 in)
        • + *
        • ISO 216 C Series + 2 SIS 014711 extensions + 2 EXTENSION
        • + *
        • C0 (917x1297 mm ; 36.10x51.06 in)
        • + *
        • C1 (648x917 mm ; 25.51x36.10 in)
        • + *
        • C2 (458x648 mm ; 18.03x25.51 in)
        • + *
        • C3 (324x458 mm ; 12.76x18.03 in)
        • + *
        • C4 (229x324 mm ; 9.02x12.76 in)
        • + *
        • C5 (162x229 mm ; 6.38x9.02 in)
        • + *
        • C6 (114x162 mm ; 4.49x6.38 in)
        • + *
        • C7 (81x114 mm ; 3.19x4.49 in)
        • + *
        • C8 (57x81 mm ; 2.24x3.19 in)
        • + *
        • C9 (40x57 mm ; 1.57x2.24 in)
        • + *
        • C10 (28x40 mm ; 1.10x1.57 in)
        • + *
        • C11 (20x28 mm ; 0.79x1.10 in)
        • + *
        • C12 (14x20 mm ; 0.55x0.79 in)
        • + *
        • C76 (81x162 mm ; 3.19x6.38 in)
        • + *
        • DL (110x220 mm ; 4.33x8.66 in)
        • + *
        • SIS 014711 E Series
        • + *
        • E0 (879x1241 mm ; 34.61x48.86 in)
        • + *
        • E1 (620x879 mm ; 24.41x34.61 in)
        • + *
        • E2 (440x620 mm ; 17.32x24.41 in)
        • + *
        • E3 (310x440 mm ; 12.20x17.32 in)
        • + *
        • E4 (220x310 mm ; 8.66x12.20 in)
        • + *
        • E5 (155x220 mm ; 6.10x8.66 in)
        • + *
        • E6 (110x155 mm ; 4.33x6.10 in)
        • + *
        • E7 (78x110 mm ; 3.07x4.33 in)
        • + *
        • E8 (55x78 mm ; 2.17x3.07 in)
        • + *
        • E9 (39x55 mm ; 1.54x2.17 in)
        • + *
        • E10 (27x39 mm ; 1.06x1.54 in)
        • + *
        • E11 (19x27 mm ; 0.75x1.06 in)
        • + *
        • E12 (13x19 mm ; 0.51x0.75 in)
        • + *
        • SIS 014711 G Series
        • + *
        • G0 (958x1354 mm ; 37.72x53.31 in)
        • + *
        • G1 (677x958 mm ; 26.65x37.72 in)
        • + *
        • G2 (479x677 mm ; 18.86x26.65 in)
        • + *
        • G3 (338x479 mm ; 13.31x18.86 in)
        • + *
        • G4 (239x338 mm ; 9.41x13.31 in)
        • + *
        • G5 (169x239 mm ; 6.65x9.41 in)
        • + *
        • G6 (119x169 mm ; 4.69x6.65 in)
        • + *
        • G7 (84x119 mm ; 3.31x4.69 in)
        • + *
        • G8 (59x84 mm ; 2.32x3.31 in)
        • + *
        • G9 (42x59 mm ; 1.65x2.32 in)
        • + *
        • G10 (29x42 mm ; 1.14x1.65 in)
        • + *
        • G11 (21x29 mm ; 0.83x1.14 in)
        • + *
        • G12 (14x21 mm ; 0.55x0.83 in)
        • + *
        • ISO Press
        • + *
        • RA0 (860x1220 mm ; 33.86x48.03 in)
        • + *
        • RA1 (610x860 mm ; 24.02x33.86 in)
        • + *
        • RA2 (430x610 mm ; 16.93x24.02 in)
        • + *
        • RA3 (305x430 mm ; 12.01x16.93 in)
        • + *
        • RA4 (215x305 mm ; 8.46x12.01 in)
        • + *
        • SRA0 (900x1280 mm ; 35.43x50.39 in)
        • + *
        • SRA1 (640x900 mm ; 25.20x35.43 in)
        • + *
        • SRA2 (450x640 mm ; 17.72x25.20 in)
        • + *
        • SRA3 (320x450 mm ; 12.60x17.72 in)
        • + *
        • SRA4 (225x320 mm ; 8.86x12.60 in)
        • + *
        • German DIN 476
        • + *
        • 4A0 (1682x2378 mm ; 66.22x93.62 in)
        • + *
        • 2A0 (1189x1682 mm ; 46.81x66.22 in)
        • + *
        • Variations on the ISO Standard
        • + *
        • A2_EXTRA (445x619 mm ; 17.52x24.37 in)
        • + *
        • A3+ (329x483 mm ; 12.95x19.02 in)
        • + *
        • A3_EXTRA (322x445 mm ; 12.68x17.52 in)
        • + *
        • A3_SUPER (305x508 mm ; 12.01x20.00 in)
        • + *
        • SUPER_A3 (305x487 mm ; 12.01x19.17 in)
        • + *
        • A4_EXTRA (235x322 mm ; 9.25x12.68 in)
        • + *
        • A4_SUPER (229x322 mm ; 9.02x12.68 in)
        • + *
        • SUPER_A4 (227x356 mm ; 8.94x14.02 in)
        • + *
        • A4_LONG (210x348 mm ; 8.27x13.70 in)
        • + *
        • F4 (210x330 mm ; 8.27x12.99 in)
        • + *
        • SO_B5_EXTRA (202x276 mm ; 7.95x10.87 in)
        • + *
        • A5_EXTRA (173x235 mm ; 6.81x9.25 in)
        • + *
        • ANSI Series
        • + *
        • ANSI_E (864x1118 mm ; 34.00x44.00 in)
        • + *
        • ANSI_D (559x864 mm ; 22.00x34.00 in)
        • + *
        • ANSI_C (432x559 mm ; 17.00x22.00 in)
        • + *
        • ANSI_B (279x432 mm ; 11.00x17.00 in)
        • + *
        • ANSI_A (216x279 mm ; 8.50x11.00 in)
        • + *
        • Traditional 'Loose' North American Paper Sizes
        • + *
        • LEDGER, USLEDGER (432x279 mm ; 17.00x11.00 in)
        • + *
        • TABLOID, USTABLOID, BIBLE, ORGANIZERK (279x432 mm ; 11.00x17.00 in)
        • + *
        • LETTER, USLETTER, ORGANIZERM (216x279 mm ; 8.50x11.00 in)
        • + *
        • LEGAL, USLEGAL (216x356 mm ; 8.50x14.00 in)
        • + *
        • GLETTER, GOVERNMENTLETTER (203x267 mm ; 8.00x10.50 in)
        • + *
        • JLEGAL, JUNIORLEGAL (203x127 mm ; 8.00x5.00 in)
        • + *
        • Other North American Paper Sizes
        • + *
        • QUADDEMY (889x1143 mm ; 35.00x45.00 in)
        • + *
        • SUPER_B (330x483 mm ; 13.00x19.00 in)
        • + *
        • QUARTO (229x279 mm ; 9.00x11.00 in)
        • + *
        • FOLIO, GOVERNMENTLEGAL (216x330 mm ; 8.50x13.00 in)
        • + *
        • EXECUTIVE, MONARCH (184x267 mm ; 7.25x10.50 in)
        • + *
        • MEMO, STATEMENT, ORGANIZERL (140x216 mm ; 5.50x8.50 in)
        • + *
        • FOOLSCAP (210x330 mm ; 8.27x13.00 in)
        • + *
        • COMPACT (108x171 mm ; 4.25x6.75 in)
        • + *
        • ORGANIZERJ (70x127 mm ; 2.75x5.00 in)
        • + *
        • Canadian standard CAN 2-9.60M
        • + *
        • P1 (560x860 mm ; 22.05x33.86 in)
        • + *
        • P2 (430x560 mm ; 16.93x22.05 in)
        • + *
        • P3 (280x430 mm ; 11.02x16.93 in)
        • + *
        • P4 (215x280 mm ; 8.46x11.02 in)
        • + *
        • P5 (140x215 mm ; 5.51x8.46 in)
        • + *
        • P6 (107x140 mm ; 4.21x5.51 in)
        • + *
        • North American Architectural Sizes
        • + *
        • ARCH_E (914x1219 mm ; 36.00x48.00 in)
        • + *
        • ARCH_E1 (762x1067 mm ; 30.00x42.00 in)
        • + *
        • ARCH_D (610x914 mm ; 24.00x36.00 in)
        • + *
        • ARCH_C, BROADSHEET (457x610 mm ; 18.00x24.00 in)
        • + *
        • ARCH_B (305x457 mm ; 12.00x18.00 in)
        • + *
        • ARCH_A (229x305 mm ; 9.00x12.00 in)
        • + *
        • Announcement Envelopes
        • + *
        • ANNENV_A2 (111x146 mm ; 4.37x5.75 in)
        • + *
        • ANNENV_A6 (121x165 mm ; 4.75x6.50 in)
        • + *
        • ANNENV_A7 (133x184 mm ; 5.25x7.25 in)
        • + *
        • ANNENV_A8 (140x206 mm ; 5.50x8.12 in)
        • + *
        • ANNENV_A10 (159x244 mm ; 6.25x9.62 in)
        • + *
        • ANNENV_SLIM (98x225 mm ; 3.87x8.87 in)
        • + *
        • Commercial Envelopes
        • + *
        • COMMENV_N6_1/4 (89x152 mm ; 3.50x6.00 in)
        • + *
        • COMMENV_N6_3/4 (92x165 mm ; 3.62x6.50 in)
        • + *
        • COMMENV_N8 (98x191 mm ; 3.87x7.50 in)
        • + *
        • COMMENV_N9 (98x225 mm ; 3.87x8.87 in)
        • + *
        • COMMENV_N10 (105x241 mm ; 4.12x9.50 in)
        • + *
        • COMMENV_N11 (114x263 mm ; 4.50x10.37 in)
        • + *
        • COMMENV_N12 (121x279 mm ; 4.75x11.00 in)
        • + *
        • COMMENV_N14 (127x292 mm ; 5.00x11.50 in)
        • + *
        • Catalogue Envelopes
        • + *
        • CATENV_N1 (152x229 mm ; 6.00x9.00 in)
        • + *
        • CATENV_N1_3/4 (165x241 mm ; 6.50x9.50 in)
        • + *
        • CATENV_N2 (165x254 mm ; 6.50x10.00 in)
        • + *
        • CATENV_N3 (178x254 mm ; 7.00x10.00 in)
        • + *
        • CATENV_N6 (191x267 mm ; 7.50x10.50 in)
        • + *
        • CATENV_N7 (203x279 mm ; 8.00x11.00 in)
        • + *
        • CATENV_N8 (210x286 mm ; 8.25x11.25 in)
        • + *
        • CATENV_N9_1/2 (216x267 mm ; 8.50x10.50 in)
        • + *
        • CATENV_N9_3/4 (222x286 mm ; 8.75x11.25 in)
        • + *
        • CATENV_N10_1/2 (229x305 mm ; 9.00x12.00 in)
        • + *
        • CATENV_N12_1/2 (241x318 mm ; 9.50x12.50 in)
        • + *
        • CATENV_N13_1/2 (254x330 mm ; 10.00x13.00 in)
        • + *
        • CATENV_N14_1/4 (286x311 mm ; 11.25x12.25 in)
        • + *
        • CATENV_N14_1/2 (292x368 mm ; 11.50x14.50 in)
        • + *
        • Japanese (JIS P 0138-61) Standard B-Series
        • + *
        • JIS_B0 (1030x1456 mm ; 40.55x57.32 in)
        • + *
        • JIS_B1 (728x1030 mm ; 28.66x40.55 in)
        • + *
        • JIS_B2 (515x728 mm ; 20.28x28.66 in)
        • + *
        • JIS_B3 (364x515 mm ; 14.33x20.28 in)
        • + *
        • JIS_B4 (257x364 mm ; 10.12x14.33 in)
        • + *
        • JIS_B5 (182x257 mm ; 7.17x10.12 in)
        • + *
        • JIS_B6 (128x182 mm ; 5.04x7.17 in)
        • + *
        • JIS_B7 (91x128 mm ; 3.58x5.04 in)
        • + *
        • JIS_B8 (64x91 mm ; 2.52x3.58 in)
        • + *
        • JIS_B9 (45x64 mm ; 1.77x2.52 in)
        • + *
        • JIS_B10 (32x45 mm ; 1.26x1.77 in)
        • + *
        • JIS_B11 (22x32 mm ; 0.87x1.26 in)
        • + *
        • JIS_B12 (16x22 mm ; 0.63x0.87 in)
        • + *
        • PA Series
        • + *
        • PA0 (840x1120 mm ; 33.07x44.09 in)
        • + *
        • PA1 (560x840 mm ; 22.05x33.07 in)
        • + *
        • PA2 (420x560 mm ; 16.54x22.05 in)
        • + *
        • PA3 (280x420 mm ; 11.02x16.54 in)
        • + *
        • PA4 (210x280 mm ; 8.27x11.02 in)
        • + *
        • PA5 (140x210 mm ; 5.51x8.27 in)
        • + *
        • PA6 (105x140 mm ; 4.13x5.51 in)
        • + *
        • PA7 (70x105 mm ; 2.76x4.13 in)
        • + *
        • PA8 (52x70 mm ; 2.05x2.76 in)
        • + *
        • PA9 (35x52 mm ; 1.38x2.05 in)
        • + *
        • PA10 (26x35 mm ; 1.02x1.38 in)
        • + *
        • Standard Photographic Print Sizes
        • + *
        • PASSPORT_PHOTO (35x45 mm ; 1.38x1.77 in)
        • + *
        • E (82x120 mm ; 3.25x4.72 in)
        • + *
        • 3R, L (89x127 mm ; 3.50x5.00 in)
        • + *
        • 4R, KG (102x152 mm ; 4.02x5.98 in)
        • + *
        • 4D (120x152 mm ; 4.72x5.98 in)
        • + *
        • 5R, 2L (127x178 mm ; 5.00x7.01 in)
        • + *
        • 6R, 8P (152x203 mm ; 5.98x7.99 in)
        • + *
        • 8R, 6P (203x254 mm ; 7.99x10.00 in)
        • + *
        • S8R, 6PW (203x305 mm ; 7.99x12.01 in)
        • + *
        • 10R, 4P (254x305 mm ; 10.00x12.01 in)
        • + *
        • S10R, 4PW (254x381 mm ; 10.00x15.00 in)
        • + *
        • 11R (279x356 mm ; 10.98x14.02 in)
        • + *
        • S11R (279x432 mm ; 10.98x17.01 in)
        • + *
        • 12R (305x381 mm ; 12.01x15.00 in)
        • + *
        • S12R (305x456 mm ; 12.01x17.95 in)
        • + *
        • Common Newspaper Sizes
        • + *
        • NEWSPAPER_BROADSHEET (750x600 mm ; 29.53x23.62 in)
        • + *
        • NEWSPAPER_BERLINER (470x315 mm ; 18.50x12.40 in)
        • + *
        • NEWSPAPER_COMPACT, NEWSPAPER_TABLOID (430x280 mm ; 16.93x11.02 in)
        • + *
        • Business Cards
        • + *
        • CREDIT_CARD, BUSINESS_CARD, BUSINESS_CARD_ISO7810 (54x86 mm ; 2.13x3.37 in)
        • + *
        • BUSINESS_CARD_ISO216 (52x74 mm ; 2.05x2.91 in)
        • + *
        • BUSINESS_CARD_IT, BUSINESS_CARD_UK, BUSINESS_CARD_FR, BUSINESS_CARD_DE, BUSINESS_CARD_ES (55x85 mm ; 2.17x3.35 in)
        • + *
        • BUSINESS_CARD_US, BUSINESS_CARD_CA (51x89 mm ; 2.01x3.50 in)
        • + *
        • BUSINESS_CARD_JP (55x91 mm ; 2.17x3.58 in)
        • + *
        • BUSINESS_CARD_HK (54x90 mm ; 2.13x3.54 in)
        • + *
        • BUSINESS_CARD_AU, BUSINESS_CARD_DK, BUSINESS_CARD_SE (55x90 mm ; 2.17x3.54 in)
        • + *
        • BUSINESS_CARD_RU, BUSINESS_CARD_CZ, BUSINESS_CARD_FI, BUSINESS_CARD_HU, BUSINESS_CARD_IL (50x90 mm ; 1.97x3.54 in)
        • + *
        • Billboards
        • + *
        • 4SHEET (1016x1524 mm ; 40.00x60.00 in)
        • + *
        • 6SHEET (1200x1800 mm ; 47.24x70.87 in)
        • + *
        • 12SHEET (3048x1524 mm ; 120.00x60.00 in)
        • + *
        • 16SHEET (2032x3048 mm ; 80.00x120.00 in)
        • + *
        • 32SHEET (4064x3048 mm ; 160.00x120.00 in)
        • + *
        • 48SHEET (6096x3048 mm ; 240.00x120.00 in)
        • + *
        • 64SHEET (8128x3048 mm ; 320.00x120.00 in)
        • + *
        • 96SHEET (12192x3048 mm ; 480.00x120.00 in)
        • + *
        • Old Imperial English (some are still used in USA)
        • + *
        • EN_EMPEROR (1219x1829 mm ; 48.00x72.00 in)
        • + *
        • EN_ANTIQUARIAN (787x1346 mm ; 31.00x53.00 in)
        • + *
        • EN_GRAND_EAGLE (730x1067 mm ; 28.75x42.00 in)
        • + *
        • EN_DOUBLE_ELEPHANT (679x1016 mm ; 26.75x40.00 in)
        • + *
        • EN_ATLAS (660x864 mm ; 26.00x34.00 in)
        • + *
        • EN_COLOMBIER (597x876 mm ; 23.50x34.50 in)
        • + *
        • EN_ELEPHANT (584x711 mm ; 23.00x28.00 in)
        • + *
        • EN_DOUBLE_DEMY (572x902 mm ; 22.50x35.50 in)
        • + *
        • EN_IMPERIAL (559x762 mm ; 22.00x30.00 in)
        • + *
        • EN_PRINCESS (546x711 mm ; 21.50x28.00 in)
        • + *
        • EN_CARTRIDGE (533x660 mm ; 21.00x26.00 in)
        • + *
        • EN_DOUBLE_LARGE_POST (533x838 mm ; 21.00x33.00 in)
        • + *
        • EN_ROYAL (508x635 mm ; 20.00x25.00 in)
        • + *
        • EN_SHEET, EN_HALF_POST (495x597 mm ; 19.50x23.50 in)
        • + *
        • EN_SUPER_ROYAL (483x686 mm ; 19.00x27.00 in)
        • + *
        • EN_DOUBLE_POST (483x775 mm ; 19.00x30.50 in)
        • + *
        • EN_MEDIUM (445x584 mm ; 17.50x23.00 in)
        • + *
        • EN_DEMY (445x572 mm ; 17.50x22.50 in)
        • + *
        • EN_LARGE_POST (419x533 mm ; 16.50x21.00 in)
        • + *
        • EN_COPY_DRAUGHT (406x508 mm ; 16.00x20.00 in)
        • + *
        • EN_POST (394x489 mm ; 15.50x19.25 in)
        • + *
        • EN_CROWN (381x508 mm ; 15.00x20.00 in)
        • + *
        • EN_PINCHED_POST (375x470 mm ; 14.75x18.50 in)
        • + *
        • EN_BRIEF (343x406 mm ; 13.50x16.00 in)
        • + *
        • EN_FOOLSCAP (343x432 mm ; 13.50x17.00 in)
        • + *
        • EN_SMALL_FOOLSCAP (337x419 mm ; 13.25x16.50 in)
        • + *
        • EN_POTT (318x381 mm ; 12.50x15.00 in)
        • + *
        • Old Imperial Belgian
        • + *
        • BE_GRAND_AIGLE (700x1040 mm ; 27.56x40.94 in)
        • + *
        • BE_COLOMBIER (620x850 mm ; 24.41x33.46 in)
        • + *
        • BE_DOUBLE_CARRE (620x920 mm ; 24.41x36.22 in)
        • + *
        • BE_ELEPHANT (616x770 mm ; 24.25x30.31 in)
        • + *
        • BE_PETIT_AIGLE (600x840 mm ; 23.62x33.07 in)
        • + *
        • BE_GRAND_JESUS (550x730 mm ; 21.65x28.74 in)
        • + *
        • BE_JESUS (540x730 mm ; 21.26x28.74 in)
        • + *
        • BE_RAISIN (500x650 mm ; 19.69x25.59 in)
        • + *
        • BE_GRAND_MEDIAN (460x605 mm ; 18.11x23.82 in)
        • + *
        • BE_DOUBLE_POSTE (435x565 mm ; 17.13x22.24 in)
        • + *
        • BE_COQUILLE (430x560 mm ; 16.93x22.05 in)
        • + *
        • BE_PETIT_MEDIAN (415x530 mm ; 16.34x20.87 in)
        • + *
        • BE_RUCHE (360x460 mm ; 14.17x18.11 in)
        • + *
        • BE_PROPATRIA (345x430 mm ; 13.58x16.93 in)
        • + *
        • BE_LYS (317x397 mm ; 12.48x15.63 in)
        • + *
        • BE_POT (307x384 mm ; 12.09x15.12 in)
        • + *
        • BE_ROSETTE (270x347 mm ; 10.63x13.66 in)
        • + *
        • Old Imperial French
        • + *
        • FR_UNIVERS (1000x1300 mm ; 39.37x51.18 in)
        • + *
        • FR_DOUBLE_COLOMBIER (900x1260 mm ; 35.43x49.61 in)
        • + *
        • FR_GRANDE_MONDE (900x1260 mm ; 35.43x49.61 in)
        • + *
        • FR_DOUBLE_SOLEIL (800x1200 mm ; 31.50x47.24 in)
        • + *
        • FR_DOUBLE_JESUS (760x1120 mm ; 29.92x44.09 in)
        • + *
        • FR_GRAND_AIGLE (750x1060 mm ; 29.53x41.73 in)
        • + *
        • FR_PETIT_AIGLE (700x940 mm ; 27.56x37.01 in)
        • + *
        • FR_DOUBLE_RAISIN (650x1000 mm ; 25.59x39.37 in)
        • + *
        • FR_JOURNAL (650x940 mm ; 25.59x37.01 in)
        • + *
        • FR_COLOMBIER_AFFICHE (630x900 mm ; 24.80x35.43 in)
        • + *
        • FR_DOUBLE_CAVALIER (620x920 mm ; 24.41x36.22 in)
        • + *
        • FR_CLOCHE (600x800 mm ; 23.62x31.50 in)
        • + *
        • FR_SOLEIL (600x800 mm ; 23.62x31.50 in)
        • + *
        • FR_DOUBLE_CARRE (560x900 mm ; 22.05x35.43 in)
        • + *
        • FR_DOUBLE_COQUILLE (560x880 mm ; 22.05x34.65 in)
        • + *
        • FR_JESUS (560x760 mm ; 22.05x29.92 in)
        • + *
        • FR_RAISIN (500x650 mm ; 19.69x25.59 in)
        • + *
        • FR_CAVALIER (460x620 mm ; 18.11x24.41 in)
        • + *
        • FR_DOUBLE_COURONNE (460x720 mm ; 18.11x28.35 in)
        • + *
        • FR_CARRE (450x560 mm ; 17.72x22.05 in)
        • + *
        • FR_COQUILLE (440x560 mm ; 17.32x22.05 in)
        • + *
        • FR_DOUBLE_TELLIERE (440x680 mm ; 17.32x26.77 in)
        • + *
        • FR_DOUBLE_CLOCHE (400x600 mm ; 15.75x23.62 in)
        • + *
        • FR_DOUBLE_POT (400x620 mm ; 15.75x24.41 in)
        • + *
        • FR_ECU (400x520 mm ; 15.75x20.47 in)
        • + *
        • FR_COURONNE (360x460 mm ; 14.17x18.11 in)
        • + *
        • FR_TELLIERE (340x440 mm ; 13.39x17.32 in)
        • + *
        • FR_POT (310x400 mm ; 12.20x15.75 in)
        • + *
        + * @return array containing page width and height in points + * @public + * @since 5.0.010 (2010-05-17) + */ + public function getPageSizeFromFormat($format) { + // Paper cordinates are calculated in this way: (inches * 72) where (1 inch = 25.4 mm) + switch (strtoupper($format)) { + // ISO 216 A Series + 2 SIS 014711 extensions + case 'A0' : {$pf = array( 2383.937, 3370.394); break;} + case 'A1' : {$pf = array( 1683.780, 2383.937); break;} + case 'A2' : {$pf = array( 1190.551, 1683.780); break;} + case 'A3' : {$pf = array( 841.890, 1190.551); break;} + case 'A4' : {$pf = array( 595.276, 841.890); break;} + case 'A5' : {$pf = array( 419.528, 595.276); break;} + case 'A6' : {$pf = array( 297.638, 419.528); break;} + case 'A7' : {$pf = array( 209.764, 297.638); break;} + case 'A8' : {$pf = array( 147.402, 209.764); break;} + case 'A9' : {$pf = array( 104.882, 147.402); break;} + case 'A10': {$pf = array( 73.701, 104.882); break;} + case 'A11': {$pf = array( 51.024, 73.701); break;} + case 'A12': {$pf = array( 36.850, 51.024); break;} + // ISO 216 B Series + 2 SIS 014711 extensions + case 'B0' : {$pf = array( 2834.646, 4008.189); break;} + case 'B1' : {$pf = array( 2004.094, 2834.646); break;} + case 'B2' : {$pf = array( 1417.323, 2004.094); break;} + case 'B3' : {$pf = array( 1000.630, 1417.323); break;} + case 'B4' : {$pf = array( 708.661, 1000.630); break;} + case 'B5' : {$pf = array( 498.898, 708.661); break;} + case 'B6' : {$pf = array( 354.331, 498.898); break;} + case 'B7' : {$pf = array( 249.449, 354.331); break;} + case 'B8' : {$pf = array( 175.748, 249.449); break;} + case 'B9' : {$pf = array( 124.724, 175.748); break;} + case 'B10': {$pf = array( 87.874, 124.724); break;} + case 'B11': {$pf = array( 62.362, 87.874); break;} + case 'B12': {$pf = array( 42.520, 62.362); break;} + // ISO 216 C Series + 2 SIS 014711 extensions + 2 EXTENSION + case 'C0' : {$pf = array( 2599.370, 3676.535); break;} + case 'C1' : {$pf = array( 1836.850, 2599.370); break;} + case 'C2' : {$pf = array( 1298.268, 1836.850); break;} + case 'C3' : {$pf = array( 918.425, 1298.268); break;} + case 'C4' : {$pf = array( 649.134, 918.425); break;} + case 'C5' : {$pf = array( 459.213, 649.134); break;} + case 'C6' : {$pf = array( 323.150, 459.213); break;} + case 'C7' : {$pf = array( 229.606, 323.150); break;} + case 'C8' : {$pf = array( 161.575, 229.606); break;} + case 'C9' : {$pf = array( 113.386, 161.575); break;} + case 'C10': {$pf = array( 79.370, 113.386); break;} + case 'C11': {$pf = array( 56.693, 79.370); break;} + case 'C12': {$pf = array( 39.685, 56.693); break;} + case 'C76': {$pf = array( 229.606, 459.213); break;} + case 'DL' : {$pf = array( 311.811, 623.622); break;} + // SIS 014711 E Series + case 'E0' : {$pf = array( 2491.654, 3517.795); break;} + case 'E1' : {$pf = array( 1757.480, 2491.654); break;} + case 'E2' : {$pf = array( 1247.244, 1757.480); break;} + case 'E3' : {$pf = array( 878.740, 1247.244); break;} + case 'E4' : {$pf = array( 623.622, 878.740); break;} + case 'E5' : {$pf = array( 439.370, 623.622); break;} + case 'E6' : {$pf = array( 311.811, 439.370); break;} + case 'E7' : {$pf = array( 221.102, 311.811); break;} + case 'E8' : {$pf = array( 155.906, 221.102); break;} + case 'E9' : {$pf = array( 110.551, 155.906); break;} + case 'E10': {$pf = array( 76.535, 110.551); break;} + case 'E11': {$pf = array( 53.858, 76.535); break;} + case 'E12': {$pf = array( 36.850, 53.858); break;} + // SIS 014711 G Series + case 'G0' : {$pf = array( 2715.591, 3838.110); break;} + case 'G1' : {$pf = array( 1919.055, 2715.591); break;} + case 'G2' : {$pf = array( 1357.795, 1919.055); break;} + case 'G3' : {$pf = array( 958.110, 1357.795); break;} + case 'G4' : {$pf = array( 677.480, 958.110); break;} + case 'G5' : {$pf = array( 479.055, 677.480); break;} + case 'G6' : {$pf = array( 337.323, 479.055); break;} + case 'G7' : {$pf = array( 238.110, 337.323); break;} + case 'G8' : {$pf = array( 167.244, 238.110); break;} + case 'G9' : {$pf = array( 119.055, 167.244); break;} + case 'G10': {$pf = array( 82.205, 119.055); break;} + case 'G11': {$pf = array( 59.528, 82.205); break;} + case 'G12': {$pf = array( 39.685, 59.528); break;} + // ISO Press + case 'RA0': {$pf = array( 2437.795, 3458.268); break;} + case 'RA1': {$pf = array( 1729.134, 2437.795); break;} + case 'RA2': {$pf = array( 1218.898, 1729.134); break;} + case 'RA3': {$pf = array( 864.567, 1218.898); break;} + case 'RA4': {$pf = array( 609.449, 864.567); break;} + case 'SRA0': {$pf = array( 2551.181, 3628.346); break;} + case 'SRA1': {$pf = array( 1814.173, 2551.181); break;} + case 'SRA2': {$pf = array( 1275.591, 1814.173); break;} + case 'SRA3': {$pf = array( 907.087, 1275.591); break;} + case 'SRA4': {$pf = array( 637.795, 907.087); break;} + // German DIN 476 + case '4A0': {$pf = array( 4767.874, 6740.787); break;} + case '2A0': {$pf = array( 3370.394, 4767.874); break;} + // Variations on the ISO Standard + case 'A2_EXTRA' : {$pf = array( 1261.417, 1754.646); break;} + case 'A3+' : {$pf = array( 932.598, 1369.134); break;} + case 'A3_EXTRA' : {$pf = array( 912.756, 1261.417); break;} + case 'A3_SUPER' : {$pf = array( 864.567, 1440.000); break;} + case 'SUPER_A3' : {$pf = array( 864.567, 1380.472); break;} + case 'A4_EXTRA' : {$pf = array( 666.142, 912.756); break;} + case 'A4_SUPER' : {$pf = array( 649.134, 912.756); break;} + case 'SUPER_A4' : {$pf = array( 643.465, 1009.134); break;} + case 'A4_LONG' : {$pf = array( 595.276, 986.457); break;} + case 'F4' : {$pf = array( 595.276, 935.433); break;} + case 'SO_B5_EXTRA': {$pf = array( 572.598, 782.362); break;} + case 'A5_EXTRA' : {$pf = array( 490.394, 666.142); break;} + // ANSI Series + case 'ANSI_E': {$pf = array( 2448.000, 3168.000); break;} + case 'ANSI_D': {$pf = array( 1584.000, 2448.000); break;} + case 'ANSI_C': {$pf = array( 1224.000, 1584.000); break;} + case 'ANSI_B': {$pf = array( 792.000, 1224.000); break;} + case 'ANSI_A': {$pf = array( 612.000, 792.000); break;} + // Traditional 'Loose' North American Paper Sizes + case 'USLEDGER': + case 'LEDGER' : {$pf = array( 1224.000, 792.000); break;} + case 'ORGANIZERK': + case 'BIBLE': + case 'USTABLOID': + case 'TABLOID': {$pf = array( 792.000, 1224.000); break;} + case 'ORGANIZERM': + case 'USLETTER': + case 'LETTER' : {$pf = array( 612.000, 792.000); break;} + case 'USLEGAL': + case 'LEGAL' : {$pf = array( 612.000, 1008.000); break;} + case 'GOVERNMENTLETTER': + case 'GLETTER': {$pf = array( 576.000, 756.000); break;} + case 'JUNIORLEGAL': + case 'JLEGAL' : {$pf = array( 576.000, 360.000); break;} + // Other North American Paper Sizes + case 'QUADDEMY': {$pf = array( 2520.000, 3240.000); break;} + case 'SUPER_B': {$pf = array( 936.000, 1368.000); break;} + case 'QUARTO': {$pf = array( 648.000, 792.000); break;} + case 'GOVERNMENTLEGAL': + case 'FOLIO': {$pf = array( 612.000, 936.000); break;} + case 'MONARCH': + case 'EXECUTIVE': {$pf = array( 522.000, 756.000); break;} + case 'ORGANIZERL': + case 'STATEMENT': + case 'MEMO': {$pf = array( 396.000, 612.000); break;} + case 'FOOLSCAP': {$pf = array( 595.440, 936.000); break;} + case 'COMPACT': {$pf = array( 306.000, 486.000); break;} + case 'ORGANIZERJ': {$pf = array( 198.000, 360.000); break;} + // Canadian standard CAN 2-9.60M + case 'P1': {$pf = array( 1587.402, 2437.795); break;} + case 'P2': {$pf = array( 1218.898, 1587.402); break;} + case 'P3': {$pf = array( 793.701, 1218.898); break;} + case 'P4': {$pf = array( 609.449, 793.701); break;} + case 'P5': {$pf = array( 396.850, 609.449); break;} + case 'P6': {$pf = array( 303.307, 396.850); break;} + // North American Architectural Sizes + case 'ARCH_E' : {$pf = array( 2592.000, 3456.000); break;} + case 'ARCH_E1': {$pf = array( 2160.000, 3024.000); break;} + case 'ARCH_D' : {$pf = array( 1728.000, 2592.000); break;} + case 'BROADSHEET': + case 'ARCH_C' : {$pf = array( 1296.000, 1728.000); break;} + case 'ARCH_B' : {$pf = array( 864.000, 1296.000); break;} + case 'ARCH_A' : {$pf = array( 648.000, 864.000); break;} + // --- North American Envelope Sizes --- + // - Announcement Envelopes + case 'ANNENV_A2' : {$pf = array( 314.640, 414.000); break;} + case 'ANNENV_A6' : {$pf = array( 342.000, 468.000); break;} + case 'ANNENV_A7' : {$pf = array( 378.000, 522.000); break;} + case 'ANNENV_A8' : {$pf = array( 396.000, 584.640); break;} + case 'ANNENV_A10' : {$pf = array( 450.000, 692.640); break;} + case 'ANNENV_SLIM': {$pf = array( 278.640, 638.640); break;} + // - Commercial Envelopes + case 'COMMENV_N6_1/4': {$pf = array( 252.000, 432.000); break;} + case 'COMMENV_N6_3/4': {$pf = array( 260.640, 468.000); break;} + case 'COMMENV_N8' : {$pf = array( 278.640, 540.000); break;} + case 'COMMENV_N9' : {$pf = array( 278.640, 638.640); break;} + case 'COMMENV_N10' : {$pf = array( 296.640, 684.000); break;} + case 'COMMENV_N11' : {$pf = array( 324.000, 746.640); break;} + case 'COMMENV_N12' : {$pf = array( 342.000, 792.000); break;} + case 'COMMENV_N14' : {$pf = array( 360.000, 828.000); break;} + // - Catalogue Envelopes + case 'CATENV_N1' : {$pf = array( 432.000, 648.000); break;} + case 'CATENV_N1_3/4' : {$pf = array( 468.000, 684.000); break;} + case 'CATENV_N2' : {$pf = array( 468.000, 720.000); break;} + case 'CATENV_N3' : {$pf = array( 504.000, 720.000); break;} + case 'CATENV_N6' : {$pf = array( 540.000, 756.000); break;} + case 'CATENV_N7' : {$pf = array( 576.000, 792.000); break;} + case 'CATENV_N8' : {$pf = array( 594.000, 810.000); break;} + case 'CATENV_N9_1/2' : {$pf = array( 612.000, 756.000); break;} + case 'CATENV_N9_3/4' : {$pf = array( 630.000, 810.000); break;} + case 'CATENV_N10_1/2': {$pf = array( 648.000, 864.000); break;} + case 'CATENV_N12_1/2': {$pf = array( 684.000, 900.000); break;} + case 'CATENV_N13_1/2': {$pf = array( 720.000, 936.000); break;} + case 'CATENV_N14_1/4': {$pf = array( 810.000, 882.000); break;} + case 'CATENV_N14_1/2': {$pf = array( 828.000, 1044.000); break;} + // Japanese (JIS P 0138-61) Standard B-Series + case 'JIS_B0' : {$pf = array( 2919.685, 4127.244); break;} + case 'JIS_B1' : {$pf = array( 2063.622, 2919.685); break;} + case 'JIS_B2' : {$pf = array( 1459.843, 2063.622); break;} + case 'JIS_B3' : {$pf = array( 1031.811, 1459.843); break;} + case 'JIS_B4' : {$pf = array( 728.504, 1031.811); break;} + case 'JIS_B5' : {$pf = array( 515.906, 728.504); break;} + case 'JIS_B6' : {$pf = array( 362.835, 515.906); break;} + case 'JIS_B7' : {$pf = array( 257.953, 362.835); break;} + case 'JIS_B8' : {$pf = array( 181.417, 257.953); break;} + case 'JIS_B9' : {$pf = array( 127.559, 181.417); break;} + case 'JIS_B10': {$pf = array( 90.709, 127.559); break;} + case 'JIS_B11': {$pf = array( 62.362, 90.709); break;} + case 'JIS_B12': {$pf = array( 45.354, 62.362); break;} + // PA Series + case 'PA0' : {$pf = array( 2381.102, 3174.803,); break;} + case 'PA1' : {$pf = array( 1587.402, 2381.102); break;} + case 'PA2' : {$pf = array( 1190.551, 1587.402); break;} + case 'PA3' : {$pf = array( 793.701, 1190.551); break;} + case 'PA4' : {$pf = array( 595.276, 793.701); break;} + case 'PA5' : {$pf = array( 396.850, 595.276); break;} + case 'PA6' : {$pf = array( 297.638, 396.850); break;} + case 'PA7' : {$pf = array( 198.425, 297.638); break;} + case 'PA8' : {$pf = array( 147.402, 198.425); break;} + case 'PA9' : {$pf = array( 99.213, 147.402); break;} + case 'PA10': {$pf = array( 73.701, 99.213); break;} + // Standard Photographic Print Sizes + case 'PASSPORT_PHOTO': {$pf = array( 99.213, 127.559); break;} + case 'E' : {$pf = array( 233.858, 340.157); break;} + case 'L': + case '3R' : {$pf = array( 252.283, 360.000); break;} + case 'KG': + case '4R' : {$pf = array( 289.134, 430.866); break;} + case '4D' : {$pf = array( 340.157, 430.866); break;} + case '2L': + case '5R' : {$pf = array( 360.000, 504.567); break;} + case '8P': + case '6R' : {$pf = array( 430.866, 575.433); break;} + case '6P': + case '8R' : {$pf = array( 575.433, 720.000); break;} + case '6PW': + case 'S8R' : {$pf = array( 575.433, 864.567); break;} + case '4P': + case '10R' : {$pf = array( 720.000, 864.567); break;} + case '4PW': + case 'S10R': {$pf = array( 720.000, 1080.000); break;} + case '11R' : {$pf = array( 790.866, 1009.134); break;} + case 'S11R': {$pf = array( 790.866, 1224.567); break;} + case '12R' : {$pf = array( 864.567, 1080.000); break;} + case 'S12R': {$pf = array( 864.567, 1292.598); break;} + // Common Newspaper Sizes + case 'NEWSPAPER_BROADSHEET': {$pf = array( 2125.984, 1700.787); break;} + case 'NEWSPAPER_BERLINER' : {$pf = array( 1332.283, 892.913); break;} + case 'NEWSPAPER_TABLOID': + case 'NEWSPAPER_COMPACT' : {$pf = array( 1218.898, 793.701); break;} + // Business Cards + case 'CREDIT_CARD': + case 'BUSINESS_CARD': + case 'BUSINESS_CARD_ISO7810': {$pf = array( 153.014, 242.646); break;} + case 'BUSINESS_CARD_ISO216' : {$pf = array( 147.402, 209.764); break;} + case 'BUSINESS_CARD_IT': + case 'BUSINESS_CARD_UK': + case 'BUSINESS_CARD_FR': + case 'BUSINESS_CARD_DE': + case 'BUSINESS_CARD_ES' : {$pf = array( 155.906, 240.945); break;} + case 'BUSINESS_CARD_CA': + case 'BUSINESS_CARD_US' : {$pf = array( 144.567, 252.283); break;} + case 'BUSINESS_CARD_JP' : {$pf = array( 155.906, 257.953); break;} + case 'BUSINESS_CARD_HK' : {$pf = array( 153.071, 255.118); break;} + case 'BUSINESS_CARD_AU': + case 'BUSINESS_CARD_DK': + case 'BUSINESS_CARD_SE' : {$pf = array( 155.906, 255.118); break;} + case 'BUSINESS_CARD_RU': + case 'BUSINESS_CARD_CZ': + case 'BUSINESS_CARD_FI': + case 'BUSINESS_CARD_HU': + case 'BUSINESS_CARD_IL' : {$pf = array( 141.732, 255.118); break;} + // Billboards + case '4SHEET' : {$pf = array( 2880.000, 4320.000); break;} + case '6SHEET' : {$pf = array( 3401.575, 5102.362); break;} + case '12SHEET': {$pf = array( 8640.000, 4320.000); break;} + case '16SHEET': {$pf = array( 5760.000, 8640.000); break;} + case '32SHEET': {$pf = array(11520.000, 8640.000); break;} + case '48SHEET': {$pf = array(17280.000, 8640.000); break;} + case '64SHEET': {$pf = array(23040.000, 8640.000); break;} + case '96SHEET': {$pf = array(34560.000, 8640.000); break;} + // Old European Sizes + // - Old Imperial English Sizes + case 'EN_EMPEROR' : {$pf = array( 3456.000, 5184.000); break;} + case 'EN_ANTIQUARIAN' : {$pf = array( 2232.000, 3816.000); break;} + case 'EN_GRAND_EAGLE' : {$pf = array( 2070.000, 3024.000); break;} + case 'EN_DOUBLE_ELEPHANT' : {$pf = array( 1926.000, 2880.000); break;} + case 'EN_ATLAS' : {$pf = array( 1872.000, 2448.000); break;} + case 'EN_COLOMBIER' : {$pf = array( 1692.000, 2484.000); break;} + case 'EN_ELEPHANT' : {$pf = array( 1656.000, 2016.000); break;} + case 'EN_DOUBLE_DEMY' : {$pf = array( 1620.000, 2556.000); break;} + case 'EN_IMPERIAL' : {$pf = array( 1584.000, 2160.000); break;} + case 'EN_PRINCESS' : {$pf = array( 1548.000, 2016.000); break;} + case 'EN_CARTRIDGE' : {$pf = array( 1512.000, 1872.000); break;} + case 'EN_DOUBLE_LARGE_POST': {$pf = array( 1512.000, 2376.000); break;} + case 'EN_ROYAL' : {$pf = array( 1440.000, 1800.000); break;} + case 'EN_SHEET': + case 'EN_HALF_POST' : {$pf = array( 1404.000, 1692.000); break;} + case 'EN_SUPER_ROYAL' : {$pf = array( 1368.000, 1944.000); break;} + case 'EN_DOUBLE_POST' : {$pf = array( 1368.000, 2196.000); break;} + case 'EN_MEDIUM' : {$pf = array( 1260.000, 1656.000); break;} + case 'EN_DEMY' : {$pf = array( 1260.000, 1620.000); break;} + case 'EN_LARGE_POST' : {$pf = array( 1188.000, 1512.000); break;} + case 'EN_COPY_DRAUGHT' : {$pf = array( 1152.000, 1440.000); break;} + case 'EN_POST' : {$pf = array( 1116.000, 1386.000); break;} + case 'EN_CROWN' : {$pf = array( 1080.000, 1440.000); break;} + case 'EN_PINCHED_POST' : {$pf = array( 1062.000, 1332.000); break;} + case 'EN_BRIEF' : {$pf = array( 972.000, 1152.000); break;} + case 'EN_FOOLSCAP' : {$pf = array( 972.000, 1224.000); break;} + case 'EN_SMALL_FOOLSCAP' : {$pf = array( 954.000, 1188.000); break;} + case 'EN_POTT' : {$pf = array( 900.000, 1080.000); break;} + // - Old Imperial Belgian Sizes + case 'BE_GRAND_AIGLE' : {$pf = array( 1984.252, 2948.031); break;} + case 'BE_COLOMBIER' : {$pf = array( 1757.480, 2409.449); break;} + case 'BE_DOUBLE_CARRE': {$pf = array( 1757.480, 2607.874); break;} + case 'BE_ELEPHANT' : {$pf = array( 1746.142, 2182.677); break;} + case 'BE_PETIT_AIGLE' : {$pf = array( 1700.787, 2381.102); break;} + case 'BE_GRAND_JESUS' : {$pf = array( 1559.055, 2069.291); break;} + case 'BE_JESUS' : {$pf = array( 1530.709, 2069.291); break;} + case 'BE_RAISIN' : {$pf = array( 1417.323, 1842.520); break;} + case 'BE_GRAND_MEDIAN': {$pf = array( 1303.937, 1714.961); break;} + case 'BE_DOUBLE_POSTE': {$pf = array( 1233.071, 1601.575); break;} + case 'BE_COQUILLE' : {$pf = array( 1218.898, 1587.402); break;} + case 'BE_PETIT_MEDIAN': {$pf = array( 1176.378, 1502.362); break;} + case 'BE_RUCHE' : {$pf = array( 1020.472, 1303.937); break;} + case 'BE_PROPATRIA' : {$pf = array( 977.953, 1218.898); break;} + case 'BE_LYS' : {$pf = array( 898.583, 1125.354); break;} + case 'BE_POT' : {$pf = array( 870.236, 1088.504); break;} + case 'BE_ROSETTE' : {$pf = array( 765.354, 983.622); break;} + // - Old Imperial French Sizes + case 'FR_UNIVERS' : {$pf = array( 2834.646, 3685.039); break;} + case 'FR_DOUBLE_COLOMBIER' : {$pf = array( 2551.181, 3571.654); break;} + case 'FR_GRANDE_MONDE' : {$pf = array( 2551.181, 3571.654); break;} + case 'FR_DOUBLE_SOLEIL' : {$pf = array( 2267.717, 3401.575); break;} + case 'FR_DOUBLE_JESUS' : {$pf = array( 2154.331, 3174.803); break;} + case 'FR_GRAND_AIGLE' : {$pf = array( 2125.984, 3004.724); break;} + case 'FR_PETIT_AIGLE' : {$pf = array( 1984.252, 2664.567); break;} + case 'FR_DOUBLE_RAISIN' : {$pf = array( 1842.520, 2834.646); break;} + case 'FR_JOURNAL' : {$pf = array( 1842.520, 2664.567); break;} + case 'FR_COLOMBIER_AFFICHE': {$pf = array( 1785.827, 2551.181); break;} + case 'FR_DOUBLE_CAVALIER' : {$pf = array( 1757.480, 2607.874); break;} + case 'FR_CLOCHE' : {$pf = array( 1700.787, 2267.717); break;} + case 'FR_SOLEIL' : {$pf = array( 1700.787, 2267.717); break;} + case 'FR_DOUBLE_CARRE' : {$pf = array( 1587.402, 2551.181); break;} + case 'FR_DOUBLE_COQUILLE' : {$pf = array( 1587.402, 2494.488); break;} + case 'FR_JESUS' : {$pf = array( 1587.402, 2154.331); break;} + case 'FR_RAISIN' : {$pf = array( 1417.323, 1842.520); break;} + case 'FR_CAVALIER' : {$pf = array( 1303.937, 1757.480); break;} + case 'FR_DOUBLE_COURONNE' : {$pf = array( 1303.937, 2040.945); break;} + case 'FR_CARRE' : {$pf = array( 1275.591, 1587.402); break;} + case 'FR_COQUILLE' : {$pf = array( 1247.244, 1587.402); break;} + case 'FR_DOUBLE_TELLIERE' : {$pf = array( 1247.244, 1927.559); break;} + case 'FR_DOUBLE_CLOCHE' : {$pf = array( 1133.858, 1700.787); break;} + case 'FR_DOUBLE_POT' : {$pf = array( 1133.858, 1757.480); break;} + case 'FR_ECU' : {$pf = array( 1133.858, 1474.016); break;} + case 'FR_COURONNE' : {$pf = array( 1020.472, 1303.937); break;} + case 'FR_TELLIERE' : {$pf = array( 963.780, 1247.244); break;} + case 'FR_POT' : {$pf = array( 878.740, 1133.858); break;} + // DEFAULT ISO A4 + default: {$pf = array( 595.276, 841.890); break;} + } + return $pf; + } + + /** + * Change the format of the current page + * @param $format (mixed) The format used for pages. It can be either: one of the string values specified at getPageSizeFromFormat() documentation or an array of two numners (width, height) or an array containing the following measures and options:
          + *
        • ['format'] = page format name (one of the above);
        • + *
        • ['Rotate'] : The number of degrees by which the page shall be rotated clockwise when displayed or printed. The value shall be a multiple of 90.
        • + *
        • ['PZ'] : The page's preferred zoom (magnification) factor.
        • + *
        • ['MediaBox'] : the boundaries of the physical medium on which the page shall be displayed or printed:
        • + *
        • ['MediaBox']['llx'] : lower-left x coordinate in points
        • + *
        • ['MediaBox']['lly'] : lower-left y coordinate in points
        • + *
        • ['MediaBox']['urx'] : upper-right x coordinate in points
        • + *
        • ['MediaBox']['ury'] : upper-right y coordinate in points
        • + *
        • ['CropBox'] : the visible region of default user space:
        • + *
        • ['CropBox']['llx'] : lower-left x coordinate in points
        • + *
        • ['CropBox']['lly'] : lower-left y coordinate in points
        • + *
        • ['CropBox']['urx'] : upper-right x coordinate in points
        • + *
        • ['CropBox']['ury'] : upper-right y coordinate in points
        • + *
        • ['BleedBox'] : the region to which the contents of the page shall be clipped when output in a production environment:
        • + *
        • ['BleedBox']['llx'] : lower-left x coordinate in points
        • + *
        • ['BleedBox']['lly'] : lower-left y coordinate in points
        • + *
        • ['BleedBox']['urx'] : upper-right x coordinate in points
        • + *
        • ['BleedBox']['ury'] : upper-right y coordinate in points
        • + *
        • ['TrimBox'] : the intended dimensions of the finished page after trimming:
        • + *
        • ['TrimBox']['llx'] : lower-left x coordinate in points
        • + *
        • ['TrimBox']['lly'] : lower-left y coordinate in points
        • + *
        • ['TrimBox']['urx'] : upper-right x coordinate in points
        • + *
        • ['TrimBox']['ury'] : upper-right y coordinate in points
        • + *
        • ['ArtBox'] : the extent of the page's meaningful content:
        • + *
        • ['ArtBox']['llx'] : lower-left x coordinate in points
        • + *
        • ['ArtBox']['lly'] : lower-left y coordinate in points
        • + *
        • ['ArtBox']['urx'] : upper-right x coordinate in points
        • + *
        • ['ArtBox']['ury'] : upper-right y coordinate in points
        • + *
        • ['BoxColorInfo'] :specify the colours and other visual characteristics that should be used in displaying guidelines on the screen for each of the possible page boundaries other than the MediaBox:
        • + *
        • ['BoxColorInfo'][BOXTYPE]['C'] : an array of three numbers in the range 0-255, representing the components in the DeviceRGB colour space.
        • + *
        • ['BoxColorInfo'][BOXTYPE]['W'] : the guideline width in default user units
        • + *
        • ['BoxColorInfo'][BOXTYPE]['S'] : the guideline style: S = Solid; D = Dashed
        • + *
        • ['BoxColorInfo'][BOXTYPE]['D'] : dash array defining a pattern of dashes and gaps to be used in drawing dashed guidelines
        • + *
        • ['trans'] : the style and duration of the visual transition to use when moving from another page to the given page during a presentation
        • + *
        • ['trans']['Dur'] : The page's display duration (also called its advance timing): the maximum length of time, in seconds, that the page shall be displayed during presentations before the viewer application shall automatically advance to the next page.
        • + *
        • ['trans']['S'] : transition style : Split, Blinds, Box, Wipe, Dissolve, Glitter, R, Fly, Push, Cover, Uncover, Fade
        • + *
        • ['trans']['D'] : The duration of the transition effect, in seconds.
        • + *
        • ['trans']['Dm'] : (Split and Blinds transition styles only) The dimension in which the specified transition effect shall occur: H = Horizontal, V = Vertical. Default value: H.
        • + *
        • ['trans']['M'] : (Split, Box and Fly transition styles only) The direction of motion for the specified transition effect: I = Inward from the edges of the page, O = Outward from the center of the pageDefault value: I.
        • + *
        • ['trans']['Di'] : (Wipe, Glitter, Fly, Cover, Uncover and Push transition styles only) The direction in which the specified transition effect shall moves, expressed in degrees counterclockwise starting from a left-to-right direction. If the value is a number, it shall be one of: 0 = Left to right, 90 = Bottom to top (Wipe only), 180 = Right to left (Wipe only), 270 = Top to bottom, 315 = Top-left to bottom-right (Glitter only). If the value is a name, it shall be None, which is relevant only for the Fly transition when the value of SS is not 1.0. Default value: 0.
        • + *
        • ['trans']['SS'] : (Fly transition style only) The starting or ending scale at which the changes shall be drawn. If M specifies an inward transition, the scale of the changes drawn shall progress from SS to 1.0 over the course of the transition. If M specifies an outward transition, the scale of the changes drawn shall progress from 1.0 to SS over the course of the transition. Default: 1.0.
        • + *
        • ['trans']['B'] : (Fly transition style only) If true, the area that shall be flown in is rectangular and opaque. Default: false.
        • + *
        + * @param $orientation (string) page orientation. Possible values are (case insensitive):
          + *
        • P or Portrait (default)
        • + *
        • L or Landscape
        • + *
        • '' (empty string) for automatic orientation
        • + *
        + * @protected + * @since 3.0.015 (2008-06-06) + * @see getPageSizeFromFormat() + */ + protected function setPageFormat($format, $orientation='P') { + if (!empty($format) AND isset($this->pagedim[$this->page])) { + // remove inherited values + unset($this->pagedim[$this->page]); + } + if (is_string($format)) { + // get page measures from format name + $pf = $this->getPageSizeFromFormat($format); + $this->fwPt = $pf[0]; + $this->fhPt = $pf[1]; + } else { + // the boundaries of the physical medium on which the page shall be displayed or printed + if (isset($format['MediaBox'])) { + $this->setPageBoxes($this->page, 'MediaBox', $format['MediaBox']['llx'], $format['MediaBox']['lly'], $format['MediaBox']['urx'], $format['MediaBox']['ury'], false); + $this->fwPt = (($format['MediaBox']['urx'] - $format['MediaBox']['llx']) * $this->k); + $this->fhPt = (($format['MediaBox']['ury'] - $format['MediaBox']['lly']) * $this->k); + } else { + if (isset($format[0]) AND is_numeric($format[0]) AND isset($format[1]) AND is_numeric($format[1])) { + $pf = array(($format[0] * $this->k), ($format[1] * $this->k)); + } else { + if (!isset($format['format'])) { + // default value + $format['format'] = 'A4'; + } + $pf = $this->getPageSizeFromFormat($format['format']); + } + $this->fwPt = $pf[0]; + $this->fhPt = $pf[1]; + $this->setPageBoxes($this->page, 'MediaBox', 0, 0, $this->fwPt, $this->fhPt, true); + } + // the visible region of default user space + if (isset($format['CropBox'])) { + $this->setPageBoxes($this->page, 'CropBox', $format['CropBox']['llx'], $format['CropBox']['lly'], $format['CropBox']['urx'], $format['CropBox']['ury'], false); + } + // the region to which the contents of the page shall be clipped when output in a production environment + if (isset($format['BleedBox'])) { + $this->setPageBoxes($this->page, 'BleedBox', $format['BleedBox']['llx'], $format['BleedBox']['lly'], $format['BleedBox']['urx'], $format['BleedBox']['ury'], false); + } + // the intended dimensions of the finished page after trimming + if (isset($format['TrimBox'])) { + $this->setPageBoxes($this->page, 'TrimBox', $format['TrimBox']['llx'], $format['TrimBox']['lly'], $format['TrimBox']['urx'], $format['TrimBox']['ury'], false); + } + // the page's meaningful content (including potential white space) + if (isset($format['ArtBox'])) { + $this->setPageBoxes($this->page, 'ArtBox', $format['ArtBox']['llx'], $format['ArtBox']['lly'], $format['ArtBox']['urx'], $format['ArtBox']['ury'], false); + } + // specify the colours and other visual characteristics that should be used in displaying guidelines on the screen for the various page boundaries + if (isset($format['BoxColorInfo'])) { + $this->pagedim[$this->page]['BoxColorInfo'] = $format['BoxColorInfo']; + } + if (isset($format['Rotate']) AND (($format['Rotate'] % 90) == 0)) { + // The number of degrees by which the page shall be rotated clockwise when displayed or printed. The value shall be a multiple of 90. + $this->pagedim[$this->page]['Rotate'] = intval($format['Rotate']); + } + if (isset($format['PZ'])) { + // The page's preferred zoom (magnification) factor + $this->pagedim[$this->page]['PZ'] = floatval($format['PZ']); + } + if (isset($format['trans'])) { + // The style and duration of the visual transition to use when moving from another page to the given page during a presentation + if (isset($format['trans']['Dur'])) { + // The page's display duration + $this->pagedim[$this->page]['trans']['Dur'] = floatval($format['trans']['Dur']); + } + $stansition_styles = array('Split', 'Blinds', 'Box', 'Wipe', 'Dissolve', 'Glitter', 'R', 'Fly', 'Push', 'Cover', 'Uncover', 'Fade'); + if (isset($format['trans']['S']) AND in_array($format['trans']['S'], $stansition_styles)) { + // The transition style that shall be used when moving to this page from another during a presentation + $this->pagedim[$this->page]['trans']['S'] = $format['trans']['S']; + $valid_effect = array('Split', 'Blinds'); + $valid_vals = array('H', 'V'); + if (isset($format['trans']['Dm']) AND in_array($format['trans']['S'], $valid_effect) AND in_array($format['trans']['Dm'], $valid_vals)) { + $this->pagedim[$this->page]['trans']['Dm'] = $format['trans']['Dm']; + } + $valid_effect = array('Split', 'Box', 'Fly'); + $valid_vals = array('I', 'O'); + if (isset($format['trans']['M']) AND in_array($format['trans']['S'], $valid_effect) AND in_array($format['trans']['M'], $valid_vals)) { + $this->pagedim[$this->page]['trans']['M'] = $format['trans']['M']; + } + $valid_effect = array('Wipe', 'Glitter', 'Fly', 'Cover', 'Uncover', 'Push'); + if (isset($format['trans']['Di']) AND in_array($format['trans']['S'], $valid_effect)) { + if (((($format['trans']['Di'] == 90) OR ($format['trans']['Di'] == 180)) AND ($format['trans']['S'] == 'Wipe')) + OR (($format['trans']['Di'] == 315) AND ($format['trans']['S'] == 'Glitter')) + OR (($format['trans']['Di'] == 0) OR ($format['trans']['Di'] == 270))) { + $this->pagedim[$this->page]['trans']['Di'] = intval($format['trans']['Di']); + } + } + if (isset($format['trans']['SS']) AND ($format['trans']['S'] == 'Fly')) { + $this->pagedim[$this->page]['trans']['SS'] = floatval($format['trans']['SS']); + } + if (isset($format['trans']['B']) AND ($format['trans']['B'] === true) AND ($format['trans']['S'] == 'Fly')) { + $this->pagedim[$this->page]['trans']['B'] = 'true'; + } + } else { + $this->pagedim[$this->page]['trans']['S'] = 'R'; + } + if (isset($format['trans']['D'])) { + // The duration of the transition effect, in seconds + $this->pagedim[$this->page]['trans']['D'] = floatval($format['trans']['D']); + } else { + $this->pagedim[$this->page]['trans']['D'] = 1; + } + } + } + $this->setPageOrientation($orientation); + } + + /** + * Set page boundaries. + * @param $page (int) page number + * @param $type (string) valid values are:
        • 'MediaBox' : the boundaries of the physical medium on which the page shall be displayed or printed;
        • 'CropBox' : the visible region of default user space;
        • 'BleedBox' : the region to which the contents of the page shall be clipped when output in a production environment;
        • 'TrimBox' : the intended dimensions of the finished page after trimming;
        • 'ArtBox' : the page's meaningful content (including potential white space).
        + * @param $llx (float) lower-left x coordinate in user units + * @param $lly (float) lower-left y coordinate in user units + * @param $urx (float) upper-right x coordinate in user units + * @param $ury (float) upper-right y coordinate in user units + * @param $points (boolean) if true uses user units as unit of measure, otherwise uses PDF points + * @public + * @since 5.0.010 (2010-05-17) + */ + public function setPageBoxes($page, $type, $llx, $lly, $urx, $ury, $points=false) { + if (!isset($this->pagedim[$page])) { + // initialize array + $this->pagedim[$page] = array(); + } + $pageboxes = array('MediaBox', 'CropBox', 'BleedBox', 'TrimBox', 'ArtBox'); + if (!in_array($type, $pageboxes)) { + return; + } + if ($points) { + $k = 1; + } else { + $k = $this->k; + } + $this->pagedim[$page][$type]['llx'] = ($llx * $k); + $this->pagedim[$page][$type]['lly'] = ($lly * $k); + $this->pagedim[$page][$type]['urx'] = ($urx * $k); + $this->pagedim[$page][$type]['ury'] = ($ury * $k); + } + + /** + * Swap X and Y coordinates of page boxes (change page boxes orientation). + * @param $page (int) page number + * @protected + * @since 5.0.010 (2010-05-17) + */ + protected function swapPageBoxCoordinates($page) { + $pageboxes = array('MediaBox', 'CropBox', 'BleedBox', 'TrimBox', 'ArtBox'); + foreach ($pageboxes as $type) { + // swap X and Y coordinates + if (isset($this->pagedim[$page][$type])) { + $tmp = $this->pagedim[$page][$type]['llx']; + $this->pagedim[$page][$type]['llx'] = $this->pagedim[$page][$type]['lly']; + $this->pagedim[$page][$type]['lly'] = $tmp; + $tmp = $this->pagedim[$page][$type]['urx']; + $this->pagedim[$page][$type]['urx'] = $this->pagedim[$page][$type]['ury']; + $this->pagedim[$page][$type]['ury'] = $tmp; + } + } + } + + /** + * Set page orientation. + * @param $orientation (string) page orientation. Possible values are (case insensitive):
        • P or Portrait (default)
        • L or Landscape
        • '' (empty string) for automatic orientation
        + * @param $autopagebreak (boolean) Boolean indicating if auto-page-break mode should be on or off. + * @param $bottommargin (float) bottom margin of the page. + * @public + * @since 3.0.015 (2008-06-06) + */ + public function setPageOrientation($orientation, $autopagebreak='', $bottommargin='') { + if (!isset($this->pagedim[$this->page]['MediaBox'])) { + // the boundaries of the physical medium on which the page shall be displayed or printed + $this->setPageBoxes($this->page, 'MediaBox', 0, 0, $this->fwPt, $this->fhPt, true); + } + if (!isset($this->pagedim[$this->page]['CropBox'])) { + // the visible region of default user space + $this->setPageBoxes($this->page, 'CropBox', $this->pagedim[$this->page]['MediaBox']['llx'], $this->pagedim[$this->page]['MediaBox']['lly'], $this->pagedim[$this->page]['MediaBox']['urx'], $this->pagedim[$this->page]['MediaBox']['ury'], true); + } + if (!isset($this->pagedim[$this->page]['BleedBox'])) { + // the region to which the contents of the page shall be clipped when output in a production environment + $this->setPageBoxes($this->page, 'BleedBox', $this->pagedim[$this->page]['CropBox']['llx'], $this->pagedim[$this->page]['CropBox']['lly'], $this->pagedim[$this->page]['CropBox']['urx'], $this->pagedim[$this->page]['CropBox']['ury'], true); + } + if (!isset($this->pagedim[$this->page]['TrimBox'])) { + // the intended dimensions of the finished page after trimming + $this->setPageBoxes($this->page, 'TrimBox', $this->pagedim[$this->page]['CropBox']['llx'], $this->pagedim[$this->page]['CropBox']['lly'], $this->pagedim[$this->page]['CropBox']['urx'], $this->pagedim[$this->page]['CropBox']['ury'], true); + } + if (!isset($this->pagedim[$this->page]['ArtBox'])) { + // the page's meaningful content (including potential white space) + $this->setPageBoxes($this->page, 'ArtBox', $this->pagedim[$this->page]['CropBox']['llx'], $this->pagedim[$this->page]['CropBox']['lly'], $this->pagedim[$this->page]['CropBox']['urx'], $this->pagedim[$this->page]['CropBox']['ury'], true); + } + if (!isset($this->pagedim[$this->page]['Rotate'])) { + // The number of degrees by which the page shall be rotated clockwise when displayed or printed. The value shall be a multiple of 90. + $this->pagedim[$this->page]['Rotate'] = 0; + } + if (!isset($this->pagedim[$this->page]['PZ'])) { + // The page's preferred zoom (magnification) factor + $this->pagedim[$this->page]['PZ'] = 1; + } + if ($this->fwPt > $this->fhPt) { + // landscape + $default_orientation = 'L'; + } else { + // portrait + $default_orientation = 'P'; + } + $valid_orientations = array('P', 'L'); + if (empty($orientation)) { + $orientation = $default_orientation; + } else { + $orientation = strtoupper($orientation{0}); + } + if (in_array($orientation, $valid_orientations) AND ($orientation != $default_orientation)) { + $this->CurOrientation = $orientation; + $this->wPt = $this->fhPt; + $this->hPt = $this->fwPt; + } else { + $this->CurOrientation = $default_orientation; + $this->wPt = $this->fwPt; + $this->hPt = $this->fhPt; + } + if ((abs($this->pagedim[$this->page]['MediaBox']['urx'] - $this->hPt) < $this->feps) AND (abs($this->pagedim[$this->page]['MediaBox']['ury'] - $this->wPt) < $this->feps)){ + // swap X and Y coordinates (change page orientation) + $this->swapPageBoxCoordinates($this->page); + } + $this->w = $this->wPt / $this->k; + $this->h = $this->hPt / $this->k; + if ($this->empty_string($autopagebreak)) { + if (isset($this->AutoPageBreak)) { + $autopagebreak = $this->AutoPageBreak; + } else { + $autopagebreak = true; + } + } + if ($this->empty_string($bottommargin)) { + if (isset($this->bMargin)) { + $bottommargin = $this->bMargin; + } else { + // default value = 2 cm + $bottommargin = 2 * 28.35 / $this->k; + } + } + $this->SetAutoPageBreak($autopagebreak, $bottommargin); + // store page dimensions + $this->pagedim[$this->page]['w'] = $this->wPt; + $this->pagedim[$this->page]['h'] = $this->hPt; + $this->pagedim[$this->page]['wk'] = $this->w; + $this->pagedim[$this->page]['hk'] = $this->h; + $this->pagedim[$this->page]['tm'] = $this->tMargin; + $this->pagedim[$this->page]['bm'] = $bottommargin; + $this->pagedim[$this->page]['lm'] = $this->lMargin; + $this->pagedim[$this->page]['rm'] = $this->rMargin; + $this->pagedim[$this->page]['pb'] = $autopagebreak; + $this->pagedim[$this->page]['or'] = $this->CurOrientation; + $this->pagedim[$this->page]['olm'] = $this->original_lMargin; + $this->pagedim[$this->page]['orm'] = $this->original_rMargin; + } + + /** + * Set regular expression to detect withespaces or word separators. + * The pattern delimiter must be the forward-slash character "/". + * Some example patterns are: + *
        +     * Non-Unicode or missing PCRE unicode support: "/[^\S\xa0]/"
        +     * Unicode and PCRE unicode support: "/[^\S\P{Z}\xa0]/u"
        +     * Unicode and PCRE unicode support in Chinese mode: "/[^\S\P{Z}\P{Lo}\xa0]/u"
        +     * if PCRE unicode support is turned ON ("\P" is the negate class of "\p"):
        +     * "\p{Z}" or "\p{Separator}": any kind of Unicode whitespace or invisible separator.
        +     * "\p{Lo}" or "\p{Other_Letter}": a Unicode letter or ideograph that does not have lowercase and uppercase variants.
        +     * "\p{Lo}" is needed for Chinese characters because are packed next to each other without spaces in between.
        +     * 
        + * @param $re (string) regular expression (leave empty for default). + * @public + * @since 4.6.016 (2009-06-15) + */ + public function setSpacesRE($re='/[^\S\xa0]/') { + $this->re_spaces = $re; + $re_parts = explode('/', $re); + // get pattern parts + $this->re_space = array(); + if (isset($re_parts[1]) AND !empty($re_parts[1])) { + $this->re_space['p'] = $re_parts[1]; + } else { + $this->re_space['p'] = '[\s]'; + } + // set pattern modifiers + if (isset($re_parts[2]) AND !empty($re_parts[2])) { + $this->re_space['m'] = $re_parts[2]; + } else { + $this->re_space['m'] = ''; + } + } + + /** + * Enable or disable Right-To-Left language mode + * @param $enable (Boolean) if true enable Right-To-Left language mode. + * @param $resetx (Boolean) if true reset the X position on direction change. + * @public + * @since 2.0.000 (2008-01-03) + */ + public function setRTL($enable, $resetx=true) { + $enable = $enable ? true : false; + $resetx = ($resetx AND ($enable != $this->rtl)); + $this->rtl = $enable; + $this->tmprtl = false; + if ($resetx) { + $this->Ln(0); + } + } + + /** + * Return the RTL status + * @return boolean + * @public + * @since 4.0.012 (2008-07-24) + */ + public function getRTL() { + return $this->rtl; + } + + /** + * Force temporary RTL language direction + * @param $mode (mixed) can be false, 'L' for LTR or 'R' for RTL + * @public + * @since 2.1.000 (2008-01-09) + */ + public function setTempRTL($mode) { + $newmode = false; + switch (strtoupper($mode)) { + case 'LTR': + case 'L': { + if ($this->rtl) { + $newmode = 'L'; + } + break; + } + case 'RTL': + case 'R': { + if (!$this->rtl) { + $newmode = 'R'; + } + break; + } + case false: + default: { + $newmode = false; + break; + } + } + $this->tmprtl = $newmode; + } + + /** + * Return the current temporary RTL status + * @return boolean + * @public + * @since 4.8.014 (2009-11-04) + */ + public function isRTLTextDir() { + return ($this->rtl OR ($this->tmprtl == 'R')); + } + + /** + * Set the last cell height. + * @param $h (float) cell height. + * @author Nicola Asuni + * @public + * @since 1.53.0.TC034 + */ + public function setLastH($h) { + $this->lasth = $h; + } + + /** + * Reset the last cell height. + * @public + * @since 5.9.000 (2010-10-03) + */ + public function resetLastH() { + $this->lasth = ($this->FontSize * $this->cell_height_ratio) + $this->cell_padding['T'] + $this->cell_padding['B']; + } + + /** + * Get the last cell height. + * @return last cell height + * @public + * @since 4.0.017 (2008-08-05) + */ + public function getLastH() { + return $this->lasth; + } + + /** + * Set the adjusting factor to convert pixels to user units. + * @param $scale (float) adjusting factor to convert pixels to user units. + * @author Nicola Asuni + * @public + * @since 1.5.2 + */ + public function setImageScale($scale) { + $this->imgscale = $scale; + } + + /** + * Returns the adjusting factor to convert pixels to user units. + * @return float adjusting factor to convert pixels to user units. + * @author Nicola Asuni + * @public + * @since 1.5.2 + */ + public function getImageScale() { + return $this->imgscale; + } + + /** + * Returns an array of page dimensions: + *
        • $this->pagedim[$this->page]['w'] = page width in points
        • $this->pagedim[$this->page]['h'] = height in points
        • $this->pagedim[$this->page]['wk'] = page width in user units
        • $this->pagedim[$this->page]['hk'] = page height in user units
        • $this->pagedim[$this->page]['tm'] = top margin
        • $this->pagedim[$this->page]['bm'] = bottom margin
        • $this->pagedim[$this->page]['lm'] = left margin
        • $this->pagedim[$this->page]['rm'] = right margin
        • $this->pagedim[$this->page]['pb'] = auto page break
        • $this->pagedim[$this->page]['or'] = page orientation
        • $this->pagedim[$this->page]['olm'] = original left margin
        • $this->pagedim[$this->page]['orm'] = original right margin
        • $this->pagedim[$this->page]['Rotate'] = The number of degrees by which the page shall be rotated clockwise when displayed or printed. The value shall be a multiple of 90.
        • $this->pagedim[$this->page]['PZ'] = The page's preferred zoom (magnification) factor.
        • $this->pagedim[$this->page]['trans'] : the style and duration of the visual transition to use when moving from another page to the given page during a presentation
          • $this->pagedim[$this->page]['trans']['Dur'] = The page's display duration (also called its advance timing): the maximum length of time, in seconds, that the page shall be displayed during presentations before the viewer application shall automatically advance to the next page.
          • $this->pagedim[$this->page]['trans']['S'] = transition style : Split, Blinds, Box, Wipe, Dissolve, Glitter, R, Fly, Push, Cover, Uncover, Fade
          • $this->pagedim[$this->page]['trans']['D'] = The duration of the transition effect, in seconds.
          • $this->pagedim[$this->page]['trans']['Dm'] = (Split and Blinds transition styles only) The dimension in which the specified transition effect shall occur: H = Horizontal, V = Vertical. Default value: H.
          • $this->pagedim[$this->page]['trans']['M'] = (Split, Box and Fly transition styles only) The direction of motion for the specified transition effect: I = Inward from the edges of the page, O = Outward from the center of the pageDefault value: I.
          • $this->pagedim[$this->page]['trans']['Di'] = (Wipe, Glitter, Fly, Cover, Uncover and Push transition styles only) The direction in which the specified transition effect shall moves, expressed in degrees counterclockwise starting from a left-to-right direction. If the value is a number, it shall be one of: 0 = Left to right, 90 = Bottom to top (Wipe only), 180 = Right to left (Wipe only), 270 = Top to bottom, 315 = Top-left to bottom-right (Glitter only). If the value is a name, it shall be None, which is relevant only for the Fly transition when the value of SS is not 1.0. Default value: 0.
          • $this->pagedim[$this->page]['trans']['SS'] = (Fly transition style only) The starting or ending scale at which the changes shall be drawn. If M specifies an inward transition, the scale of the changes drawn shall progress from SS to 1.0 over the course of the transition. If M specifies an outward transition, the scale of the changes drawn shall progress from 1.0 to SS over the course of the transition. Default: 1.0.
          • $this->pagedim[$this->page]['trans']['B'] = (Fly transition style only) If true, the area that shall be flown in is rectangular and opaque. Default: false.
        • $this->pagedim[$this->page]['MediaBox'] : the boundaries of the physical medium on which the page shall be displayed or printed
          • $this->pagedim[$this->page]['MediaBox']['llx'] = lower-left x coordinate in points
          • $this->pagedim[$this->page]['MediaBox']['lly'] = lower-left y coordinate in points
          • $this->pagedim[$this->page]['MediaBox']['urx'] = upper-right x coordinate in points
          • $this->pagedim[$this->page]['MediaBox']['ury'] = upper-right y coordinate in points
        • $this->pagedim[$this->page]['CropBox'] : the visible region of default user space
          • $this->pagedim[$this->page]['CropBox']['llx'] = lower-left x coordinate in points
          • $this->pagedim[$this->page]['CropBox']['lly'] = lower-left y coordinate in points
          • $this->pagedim[$this->page]['CropBox']['urx'] = upper-right x coordinate in points
          • $this->pagedim[$this->page]['CropBox']['ury'] = upper-right y coordinate in points
        • $this->pagedim[$this->page]['BleedBox'] : the region to which the contents of the page shall be clipped when output in a production environment
          • $this->pagedim[$this->page]['BleedBox']['llx'] = lower-left x coordinate in points
          • $this->pagedim[$this->page]['BleedBox']['lly'] = lower-left y coordinate in points
          • $this->pagedim[$this->page]['BleedBox']['urx'] = upper-right x coordinate in points
          • $this->pagedim[$this->page]['BleedBox']['ury'] = upper-right y coordinate in points
        • $this->pagedim[$this->page]['TrimBox'] : the intended dimensions of the finished page after trimming
          • $this->pagedim[$this->page]['TrimBox']['llx'] = lower-left x coordinate in points
          • $this->pagedim[$this->page]['TrimBox']['lly'] = lower-left y coordinate in points
          • $this->pagedim[$this->page]['TrimBox']['urx'] = upper-right x coordinate in points
          • $this->pagedim[$this->page]['TrimBox']['ury'] = upper-right y coordinate in points
        • $this->pagedim[$this->page]['ArtBox'] : the extent of the page's meaningful content
          • $this->pagedim[$this->page]['ArtBox']['llx'] = lower-left x coordinate in points
          • $this->pagedim[$this->page]['ArtBox']['lly'] = lower-left y coordinate in points
          • $this->pagedim[$this->page]['ArtBox']['urx'] = upper-right x coordinate in points
          • $this->pagedim[$this->page]['ArtBox']['ury'] = upper-right y coordinate in points
        + * @param $pagenum (int) page number (empty = current page) + * @return array of page dimensions. + * @author Nicola Asuni + * @public + * @since 4.5.027 (2009-03-16) + */ + public function getPageDimensions($pagenum='') { + if (empty($pagenum)) { + $pagenum = $this->page; + } + return $this->pagedim[$pagenum]; + } + + /** + * Returns the page width in units. + * @param $pagenum (int) page number (empty = current page) + * @return int page width. + * @author Nicola Asuni + * @public + * @since 1.5.2 + * @see getPageDimensions() + */ + public function getPageWidth($pagenum='') { + if (empty($pagenum)) { + return $this->w; + } + return $this->pagedim[$pagenum]['w']; + } + + /** + * Returns the page height in units. + * @param $pagenum (int) page number (empty = current page) + * @return int page height. + * @author Nicola Asuni + * @public + * @since 1.5.2 + * @see getPageDimensions() + */ + public function getPageHeight($pagenum='') { + if (empty($pagenum)) { + return $this->h; + } + return $this->pagedim[$pagenum]['h']; + } + + /** + * Returns the page break margin. + * @param $pagenum (int) page number (empty = current page) + * @return int page break margin. + * @author Nicola Asuni + * @public + * @since 1.5.2 + * @see getPageDimensions() + */ + public function getBreakMargin($pagenum='') { + if (empty($pagenum)) { + return $this->bMargin; + } + return $this->pagedim[$pagenum]['bm']; + } + + /** + * Returns the scale factor (number of points in user unit). + * @return int scale factor. + * @author Nicola Asuni + * @public + * @since 1.5.2 + */ + public function getScaleFactor() { + return $this->k; + } + + /** + * Defines the left, top and right margins. + * @param $left (float) Left margin. + * @param $top (float) Top margin. + * @param $right (float) Right margin. Default value is the left one. + * @param $keepmargins (boolean) if true overwrites the default page margins + * @public + * @since 1.0 + * @see SetLeftMargin(), SetTopMargin(), SetRightMargin(), SetAutoPageBreak() + */ + public function SetMargins($left, $top, $right=-1, $keepmargins=false) { + //Set left, top and right margins + $this->lMargin = $left; + $this->tMargin = $top; + if ($right == -1) { + $right = $left; + } + $this->rMargin = $right; + if ($keepmargins) { + // overwrite original values + $this->original_lMargin = $this->lMargin; + $this->original_rMargin = $this->rMargin; + } + } + + /** + * Defines the left margin. The method can be called before creating the first page. If the current abscissa gets out of page, it is brought back to the margin. + * @param $margin (float) The margin. + * @public + * @since 1.4 + * @see SetTopMargin(), SetRightMargin(), SetAutoPageBreak(), SetMargins() + */ + public function SetLeftMargin($margin) { + //Set left margin + $this->lMargin = $margin; + if (($this->page > 0) AND ($this->x < $margin)) { + $this->x = $margin; + } + } + + /** + * Defines the top margin. The method can be called before creating the first page. + * @param $margin (float) The margin. + * @public + * @since 1.5 + * @see SetLeftMargin(), SetRightMargin(), SetAutoPageBreak(), SetMargins() + */ + public function SetTopMargin($margin) { + //Set top margin + $this->tMargin = $margin; + if (($this->page > 0) AND ($this->y < $margin)) { + $this->y = $margin; + } + } + + /** + * Defines the right margin. The method can be called before creating the first page. + * @param $margin (float) The margin. + * @public + * @since 1.5 + * @see SetLeftMargin(), SetTopMargin(), SetAutoPageBreak(), SetMargins() + */ + public function SetRightMargin($margin) { + $this->rMargin = $margin; + if (($this->page > 0) AND ($this->x > ($this->w - $margin))) { + $this->x = $this->w - $margin; + } + } + + /** + * Set the same internal Cell padding for top, right, bottom, left- + * @param $pad (float) internal padding. + * @public + * @since 2.1.000 (2008-01-09) + * @see getCellPaddings(), setCellPaddings() + */ + public function SetCellPadding($pad) { + if ($pad >= 0) { + $this->cell_padding['L'] = $pad; + $this->cell_padding['T'] = $pad; + $this->cell_padding['R'] = $pad; + $this->cell_padding['B'] = $pad; + } + } + + /** + * Set the internal Cell paddings. + * @param $left (float) left padding + * @param $top (float) top padding + * @param $right (float) right padding + * @param $bottom (float) bottom padding + * @public + * @since 5.9.000 (2010-10-03) + * @see getCellPaddings(), SetCellPadding() + */ + public function setCellPaddings($left='', $top='', $right='', $bottom='') { + if (($left !== '') AND ($left >= 0)) { + $this->cell_padding['L'] = $left; + } + if (($top !== '') AND ($top >= 0)) { + $this->cell_padding['T'] = $top; + } + if (($right !== '') AND ($right >= 0)) { + $this->cell_padding['R'] = $right; + } + if (($bottom !== '') AND ($bottom >= 0)) { + $this->cell_padding['B'] = $bottom; + } + } + + /** + * Get the internal Cell padding array. + * @return array of padding values + * @public + * @since 5.9.000 (2010-10-03) + * @see setCellPaddings(), SetCellPadding() + */ + public function getCellPaddings() { + return $this->cell_padding; + } + + /** + * Set the internal Cell margins. + * @param $left (float) left margin + * @param $top (float) top margin + * @param $right (float) right margin + * @param $bottom (float) bottom margin + * @public + * @since 5.9.000 (2010-10-03) + * @see getCellMargins() + */ + public function setCellMargins($left='', $top='', $right='', $bottom='') { + if (($left !== '') AND ($left >= 0)) { + $this->cell_margin['L'] = $left; + } + if (($top !== '') AND ($top >= 0)) { + $this->cell_margin['T'] = $top; + } + if (($right !== '') AND ($right >= 0)) { + $this->cell_margin['R'] = $right; + } + if (($bottom !== '') AND ($bottom >= 0)) { + $this->cell_margin['B'] = $bottom; + } + } + + /** + * Get the internal Cell margin array. + * @return array of margin values + * @public + * @since 5.9.000 (2010-10-03) + * @see setCellMargins() + */ + public function getCellMargins() { + return $this->cell_margin; + } + + /** + * Adjust the internal Cell padding array to take account of the line width. + * @param $brd (mixed) Indicates if borders must be drawn around the cell. The value can be a number:
        • 0: no border (default)
        • 1: frame
        or a string containing some or all of the following characters (in any order):
        • L: left
        • T: top
        • R: right
        • B: bottom
        or an array of line styles for each border group - for example: array('LTRB' => array('width' => 2, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0))) + * @return array of adjustments + * @public + * @since 5.9.000 (2010-10-03) + */ + protected function adjustCellPadding($brd=0) { + if (empty($brd)) { + return; + } + if (is_string($brd)) { + // convert string to array + $slen = strlen($brd); + $newbrd = array(); + for ($i = 0; $i < $slen; ++$i) { + $newbrd[$brd{$i}] = true; + } + $brd = $newbrd; + } elseif (($brd === 1) OR ($brd === true) OR (is_numeric($brd) AND (intval($brd) > 0))) { + $brd = array('LRTB' => true); + } + if (!is_array($brd)) { + return; + } + // store current cell padding + $cp = $this->cell_padding; + // select border mode + if (isset($brd['mode'])) { + $mode = $brd['mode']; + unset($brd['mode']); + } else { + $mode = 'normal'; + } + // process borders + foreach ($brd as $border => $style) { + $line_width = $this->LineWidth; + if (is_array($style) AND isset($style['width'])) { + // get border width + $line_width = $style['width']; + } + $adj = 0; // line width inside the cell + switch ($mode) { + case 'ext': { + $adj = 0; + break; + } + case 'int': { + $adj = $line_width; + break; + } + case 'normal': + default: { + $adj = ($line_width / 2); + break; + } + } + // correct internal cell padding if required to avoid overlap between text and lines + if ((strpos($border,'T') !== false) AND ($this->cell_padding['T'] < $adj)) { + $this->cell_padding['T'] = $adj; + } + if ((strpos($border,'R') !== false) AND ($this->cell_padding['R'] < $adj)) { + $this->cell_padding['R'] = $adj; + } + if ((strpos($border,'B') !== false) AND ($this->cell_padding['B'] < $adj)) { + $this->cell_padding['B'] = $adj; + } + if ((strpos($border,'L') !== false) AND ($this->cell_padding['L'] < $adj)) { + $this->cell_padding['L'] = $adj; + } + } + return array('T' => ($this->cell_padding['T'] - $cp['T']), 'R' => ($this->cell_padding['R'] - $cp['R']), 'B' => ($this->cell_padding['B'] - $cp['B']), 'L' => ($this->cell_padding['L'] - $cp['L'])); + } + + /** + * Enables or disables the automatic page breaking mode. When enabling, the second parameter is the distance from the bottom of the page that defines the triggering limit. By default, the mode is on and the margin is 2 cm. + * @param $auto (boolean) Boolean indicating if mode should be on or off. + * @param $margin (float) Distance from the bottom of the page. + * @public + * @since 1.0 + * @see Cell(), MultiCell(), AcceptPageBreak() + */ + public function SetAutoPageBreak($auto, $margin=0) { + $this->AutoPageBreak = $auto; + $this->bMargin = $margin; + $this->PageBreakTrigger = $this->h - $margin; + } + + /** + * Defines the way the document is to be displayed by the viewer. + * @param $zoom (mixed) The zoom to use. It can be one of the following string values or a number indicating the zooming factor to use.
        • fullpage: displays the entire page on screen
        • fullwidth: uses maximum width of window
        • real: uses real size (equivalent to 100% zoom)
        • default: uses viewer default mode
        + * @param $layout (string) The page layout. Possible values are:
        • SinglePage Display one page at a time
        • OneColumn Display the pages in one column
        • TwoColumnLeft Display the pages in two columns, with odd-numbered pages on the left
        • TwoColumnRight Display the pages in two columns, with odd-numbered pages on the right
        • TwoPageLeft (PDF 1.5) Display the pages two at a time, with odd-numbered pages on the left
        • TwoPageRight (PDF 1.5) Display the pages two at a time, with odd-numbered pages on the right
        + * @param $mode (string) A name object specifying how the document should be displayed when opened:
        • UseNone Neither document outline nor thumbnail images visible
        • UseOutlines Document outline visible
        • UseThumbs Thumbnail images visible
        • FullScreen Full-screen mode, with no menu bar, window controls, or any other window visible
        • UseOC (PDF 1.5) Optional content group panel visible
        • UseAttachments (PDF 1.6) Attachments panel visible
        + * @public + * @since 1.2 + */ + public function SetDisplayMode($zoom, $layout='SinglePage', $mode='UseNone') { + if (($zoom == 'fullpage') OR ($zoom == 'fullwidth') OR ($zoom == 'real') OR ($zoom == 'default') OR (!is_string($zoom))) { + $this->ZoomMode = $zoom; + } else { + $this->Error('Incorrect zoom display mode: '.$zoom); + } + switch ($layout) { + case 'default': + case 'single': + case 'SinglePage': { + $this->LayoutMode = 'SinglePage'; + break; + } + case 'continuous': + case 'OneColumn': { + $this->LayoutMode = 'OneColumn'; + break; + } + case 'two': + case 'TwoColumnLeft': { + $this->LayoutMode = 'TwoColumnLeft'; + break; + } + case 'TwoColumnRight': { + $this->LayoutMode = 'TwoColumnRight'; + break; + } + case 'TwoPageLeft': { + $this->LayoutMode = 'TwoPageLeft'; + break; + } + case 'TwoPageRight': { + $this->LayoutMode = 'TwoPageRight'; + break; + } + default: { + $this->LayoutMode = 'SinglePage'; + } + } + switch ($mode) { + case 'UseNone': { + $this->PageMode = 'UseNone'; + break; + } + case 'UseOutlines': { + $this->PageMode = 'UseOutlines'; + break; + } + case 'UseThumbs': { + $this->PageMode = 'UseThumbs'; + break; + } + case 'FullScreen': { + $this->PageMode = 'FullScreen'; + break; + } + case 'UseOC': { + $this->PageMode = 'UseOC'; + break; + } + case '': { + $this->PageMode = 'UseAttachments'; + break; + } + default: { + $this->PageMode = 'UseNone'; + } + } + } + + /** + * Activates or deactivates page compression. When activated, the internal representation of each page is compressed, which leads to a compression ratio of about 2 for the resulting document. Compression is on by default. + * Note: the Zlib extension is required for this feature. If not present, compression will be turned off. + * @param $compress (boolean) Boolean indicating if compression must be enabled. + * @public + * @since 1.4 + */ + public function SetCompression($compress) { + if (function_exists('gzcompress')) { + $this->compress = $compress ? true : false; + } else { + $this->compress = false; + } + } + + /** + * Turn on/off Unicode mode for document information dictionary (meta tags). + * This has effect only when unicode mode is set to false. + * @param $unicode (boolean) if true set the meta information in Unicode + * @since 5.9.027 (2010-12-01) + * @public + */ + public function SetDocInfoUnicode($unicode=true) { + $this->docinfounicode = $unicode ? true : false; + } + + /** + * Defines the title of the document. + * @param $title (string) The title. + * @public + * @since 1.2 + * @see SetAuthor(), SetCreator(), SetKeywords(), SetSubject() + */ + public function SetTitle($title) { + $this->title = $title; + } + + /** + * Defines the subject of the document. + * @param $subject (string) The subject. + * @public + * @since 1.2 + * @see SetAuthor(), SetCreator(), SetKeywords(), SetTitle() + */ + public function SetSubject($subject) { + $this->subject = $subject; + } + + /** + * Defines the author of the document. + * @param $author (string) The name of the author. + * @public + * @since 1.2 + * @see SetCreator(), SetKeywords(), SetSubject(), SetTitle() + */ + public function SetAuthor($author) { + $this->author = $author; + } + + /** + * Associates keywords with the document, generally in the form 'keyword1 keyword2 ...'. + * @param $keywords (string) The list of keywords. + * @public + * @since 1.2 + * @see SetAuthor(), SetCreator(), SetSubject(), SetTitle() + */ + public function SetKeywords($keywords) { + $this->keywords = $keywords; + } + + /** + * Defines the creator of the document. This is typically the name of the application that generates the PDF. + * @param $creator (string) The name of the creator. + * @public + * @since 1.2 + * @see SetAuthor(), SetKeywords(), SetSubject(), SetTitle() + */ + public function SetCreator($creator) { + $this->creator = $creator; + } + + /** + * This method is automatically called in case of fatal error; it simply outputs the message and halts the execution. An inherited class may override it to customize the error handling but should always halt the script, or the resulting document would probably be invalid. + * 2004-06-11 :: Nicola Asuni : changed bold tag with strong + * @param $msg (string) The error message + * @public + * @since 1.0 + */ + public function Error($msg) { + // unset all class variables + $this->_destroy(true); + // exit program and print error + die('TCPDF ERROR: '.$msg); + } + + /** + * This method begins the generation of the PDF document. + * It is not necessary to call it explicitly because AddPage() does it automatically. + * Note: no page is created by this method + * @public + * @since 1.0 + * @see AddPage(), Close() + */ + public function Open() { + $this->state = 1; + } + + /** + * Terminates the PDF document. + * It is not necessary to call this method explicitly because Output() does it automatically. + * If the document contains no page, AddPage() is called to prevent from getting an invalid document. + * @public + * @since 1.0 + * @see Open(), Output() + */ + public function Close() { + if ($this->state == 3) { + return; + } + if ($this->page == 0) { + $this->AddPage(); + } + // save current graphic settings + $gvars = $this->getGraphicVars(); + $this->setEqualColumns(); + $this->lastpage(true); + $this->SetAutoPageBreak(false); + $this->x = 0; + $this->y = $this->h - (1 / $this->k); + $this->lMargin = 0; + $this->_out('q'); + $this->SetFont('helvetica', '', 1); + $this->setTextRenderingMode(0, false, false); + $msg = "\x50\x6f\x77\x65\x72\x65\x64\x20\x62\x79\x20\x54\x43\x50\x44\x46\x20\x28\x77\x77\x77\x2e\x74\x63\x70\x64\x66\x2e\x6f\x72\x67\x29"; + $lnk = "\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\x74\x63\x70\x64\x66\x2e\x6f\x72\x67"; + $this->Cell(0, 0, $msg, 0, 0, 'L', 0, $lnk, 0, false, 'D', 'B'); + $this->_out('Q'); + // restore graphic settings + $this->setGraphicVars($gvars); + // close page + $this->endPage(); + // close document + $this->_enddoc(); + // unset all class variables (except critical ones) + $this->_destroy(false); + } + + /** + * Move pointer at the specified document page and update page dimensions. + * @param $pnum (int) page number (1 ... numpages) + * @param $resetmargins (boolean) if true reset left, right, top margins and Y position. + * @public + * @since 2.1.000 (2008-01-07) + * @see getPage(), lastpage(), getNumPages() + */ + public function setPage($pnum, $resetmargins=false) { + if (($pnum == $this->page) AND ($this->state == 2)) { + return; + } + if (($pnum > 0) AND ($pnum <= $this->numpages)) { + $this->state = 2; + // save current graphic settings + //$gvars = $this->getGraphicVars(); + $oldpage = $this->page; + $this->page = $pnum; + $this->wPt = $this->pagedim[$this->page]['w']; + $this->hPt = $this->pagedim[$this->page]['h']; + $this->w = $this->pagedim[$this->page]['wk']; + $this->h = $this->pagedim[$this->page]['hk']; + $this->tMargin = $this->pagedim[$this->page]['tm']; + $this->bMargin = $this->pagedim[$this->page]['bm']; + $this->original_lMargin = $this->pagedim[$this->page]['olm']; + $this->original_rMargin = $this->pagedim[$this->page]['orm']; + $this->AutoPageBreak = $this->pagedim[$this->page]['pb']; + $this->CurOrientation = $this->pagedim[$this->page]['or']; + $this->SetAutoPageBreak($this->AutoPageBreak, $this->bMargin); + // restore graphic settings + //$this->setGraphicVars($gvars); + if ($resetmargins) { + $this->lMargin = $this->pagedim[$this->page]['olm']; + $this->rMargin = $this->pagedim[$this->page]['orm']; + $this->SetY($this->tMargin); + } else { + // account for booklet mode + if ($this->pagedim[$this->page]['olm'] != $this->pagedim[$oldpage]['olm']) { + $deltam = $this->pagedim[$this->page]['olm'] - $this->pagedim[$this->page]['orm']; + $this->lMargin += $deltam; + $this->rMargin -= $deltam; + } + } + } else { + $this->Error('Wrong page number on setPage() function: '.$pnum); + } + } + + /** + * Reset pointer to the last document page. + * @param $resetmargins (boolean) if true reset left, right, top margins and Y position. + * @public + * @since 2.0.000 (2008-01-04) + * @see setPage(), getPage(), getNumPages() + */ + public function lastPage($resetmargins=false) { + $this->setPage($this->getNumPages(), $resetmargins); + } + + /** + * Get current document page number. + * @return int page number + * @public + * @since 2.1.000 (2008-01-07) + * @see setPage(), lastpage(), getNumPages() + */ + public function getPage() { + return $this->page; + } + + /** + * Get the total number of insered pages. + * @return int number of pages + * @public + * @since 2.1.000 (2008-01-07) + * @see setPage(), getPage(), lastpage() + */ + public function getNumPages() { + return $this->numpages; + } + + /** + * Adds a new TOC (Table Of Content) page to the document. + * @param $orientation (string) page orientation. + * @param $format (mixed) The format used for pages. It can be either: one of the string values specified at getPageSizeFromFormat() or an array of parameters specified at setPageFormat(). + * @param $keepmargins (boolean) if true overwrites the default page margins with the current margins + * @public + * @since 5.0.001 (2010-05-06) + * @see AddPage(), startPage(), endPage(), endTOCPage() + */ + public function addTOCPage($orientation='', $format='', $keepmargins=false) { + $this->AddPage($orientation, $format, $keepmargins, true); + } + + /** + * Terminate the current TOC (Table Of Content) page + * @public + * @since 5.0.001 (2010-05-06) + * @see AddPage(), startPage(), endPage(), addTOCPage() + */ + public function endTOCPage() { + $this->endPage(true); + } + + /** + * Adds a new page to the document. If a page is already present, the Footer() method is called first to output the footer (if enabled). Then the page is added, the current position set to the top-left corner according to the left and top margins (or top-right if in RTL mode), and Header() is called to display the header (if enabled). + * The origin of the coordinate system is at the top-left corner (or top-right for RTL) and increasing ordinates go downwards. + * @param $orientation (string) page orientation. Possible values are (case insensitive):
        • P or PORTRAIT (default)
        • L or LANDSCAPE
        + * @param $format (mixed) The format used for pages. It can be either: one of the string values specified at getPageSizeFromFormat() or an array of parameters specified at setPageFormat(). + * @param $keepmargins (boolean) if true overwrites the default page margins with the current margins + * @param $tocpage (boolean) if true set the tocpage state to true (the added page will be used to display Table Of Content). + * @public + * @since 1.0 + * @see startPage(), endPage(), addTOCPage(), endTOCPage(), getPageSizeFromFormat(), setPageFormat() + */ + public function AddPage($orientation='', $format='', $keepmargins=false, $tocpage=false) { + if ($this->inxobj) { + // we are inside an XObject template + return; + } + if (!isset($this->original_lMargin) OR $keepmargins) { + $this->original_lMargin = $this->lMargin; + } + if (!isset($this->original_rMargin) OR $keepmargins) { + $this->original_rMargin = $this->rMargin; + } + // terminate previous page + $this->endPage(); + // start new page + $this->startPage($orientation, $format, $tocpage); + } + + /** + * Terminate the current page + * @param $tocpage (boolean) if true set the tocpage state to false (end the page used to display Table Of Content). + * @public + * @since 4.2.010 (2008-11-14) + * @see AddPage(), startPage(), addTOCPage(), endTOCPage() + */ + public function endPage($tocpage=false) { + // check if page is already closed + if (($this->page == 0) OR ($this->numpages > $this->page) OR (!$this->pageopen[$this->page])) { + return; + } + $this->InFooter = true; + // print page footer + $this->setFooter(); + // close page + $this->_endpage(); + // mark page as closed + $this->pageopen[$this->page] = false; + $this->InFooter = false; + if ($tocpage) { + $this->tocpage = false; + } + } + + /** + * Starts a new page to the document. The page must be closed using the endPage() function. + * The origin of the coordinate system is at the top-left corner and increasing ordinates go downwards. + * @param $orientation (string) page orientation. Possible values are (case insensitive):
        • P or PORTRAIT (default)
        • L or LANDSCAPE
        + * @param $format (mixed) The format used for pages. It can be either: one of the string values specified at getPageSizeFromFormat() or an array of parameters specified at setPageFormat(). + * @param $tocpage (boolean) if true the page is designated to contain the Table-Of-Content. + * @since 4.2.010 (2008-11-14) + * @see AddPage(), endPage(), addTOCPage(), endTOCPage(), getPageSizeFromFormat(), setPageFormat() + * @public + */ + public function startPage($orientation='', $format='', $tocpage=false) { + if ($tocpage) { + $this->tocpage = true; + } + if ($this->numpages > $this->page) { + // this page has been already added + $this->setPage($this->page + 1); + $this->SetY($this->tMargin); + return; + } + // start a new page + if ($this->state == 0) { + $this->Open(); + } + ++$this->numpages; + $this->swapMargins($this->booklet); + // save current graphic settings + $gvars = $this->getGraphicVars(); + // start new page + $this->_beginpage($orientation, $format); + // mark page as open + $this->pageopen[$this->page] = true; + // restore graphic settings + $this->setGraphicVars($gvars); + // mark this point + $this->setPageMark(); + // print page header + $this->setHeader(); + // restore graphic settings + $this->setGraphicVars($gvars); + // mark this point + $this->setPageMark(); + // print table header (if any) + $this->setTableHeader(); + // set mark for empty page check + $this->emptypagemrk[$this->page]= $this->pagelen[$this->page]; + } + + /** + * Set start-writing mark on current page stream used to put borders and fills. + * Borders and fills are always created after content and inserted on the position marked by this method. + * This function must be called after calling Image() function for a background image. + * Background images must be always inserted before calling Multicell() or WriteHTMLCell() or WriteHTML() functions. + * @public + * @since 4.0.016 (2008-07-30) + */ + public function setPageMark() { + $this->intmrk[$this->page] = $this->pagelen[$this->page]; + $this->bordermrk[$this->page] = $this->intmrk[$this->page]; + $this->setContentMark(); + } + + /** + * Set start-writing mark on selected page. + * Borders and fills are always created after content and inserted on the position marked by this method. + * @param $page (int) page number (default is the current page) + * @protected + * @since 4.6.021 (2009-07-20) + */ + protected function setContentMark($page=0) { + if ($page <= 0) { + $page = $this->page; + } + if (isset($this->footerlen[$page])) { + $this->cntmrk[$page] = $this->pagelen[$page] - $this->footerlen[$page]; + } else { + $this->cntmrk[$page] = $this->pagelen[$page]; + } + } + + /** + * Set header data. + * @param $ln (string) header image logo + * @param $lw (string) header image logo width in mm + * @param $ht (string) string to print as title on document header + * @param $hs (string) string to print on document header + * @public + */ + public function setHeaderData($ln='', $lw=0, $ht='', $hs='') { + $this->header_logo = $ln; + $this->header_logo_width = $lw; + $this->header_title = $ht; + $this->header_string = $hs; + } + + /** + * Returns header data: + *
        • $ret['logo'] = logo image
        • $ret['logo_width'] = width of the image logo in user units
        • $ret['title'] = header title
        • $ret['string'] = header description string
        + * @return array() + * @public + * @since 4.0.012 (2008-07-24) + */ + public function getHeaderData() { + $ret = array(); + $ret['logo'] = $this->header_logo; + $ret['logo_width'] = $this->header_logo_width; + $ret['title'] = $this->header_title; + $ret['string'] = $this->header_string; + return $ret; + } + + /** + * Set header margin. + * (minimum distance between header and top page margin) + * @param $hm (int) distance in user units + * @public + */ + public function setHeaderMargin($hm=10) { + $this->header_margin = $hm; + } + + /** + * Returns header margin in user units. + * @return float + * @since 4.0.012 (2008-07-24) + * @public + */ + public function getHeaderMargin() { + return $this->header_margin; + } + + /** + * Set footer margin. + * (minimum distance between footer and bottom page margin) + * @param $fm (int) distance in user units + * @public + */ + public function setFooterMargin($fm=10) { + $this->footer_margin = $fm; + } + + /** + * Returns footer margin in user units. + * @return float + * @since 4.0.012 (2008-07-24) + * @public + */ + public function getFooterMargin() { + return $this->footer_margin; + } + /** + * Set a flag to print page header. + * @param $val (boolean) set to true to print the page header (default), false otherwise. + * @public + */ + public function setPrintHeader($val=true) { + $this->print_header = $val; + } + + /** + * Set a flag to print page footer. + * @param $val (boolean) set to true to print the page footer (default), false otherwise. + * @public + */ + public function setPrintFooter($val=true) { + $this->print_footer = $val; + } + + /** + * Return the right-bottom (or left-bottom for RTL) corner X coordinate of last inserted image + * @return float + * @public + */ + public function getImageRBX() { + return $this->img_rb_x; + } + + /** + * Return the right-bottom (or left-bottom for RTL) corner Y coordinate of last inserted image + * @return float + * @public + */ + public function getImageRBY() { + return $this->img_rb_y; + } + + /** + * This method is used to render the page header. + * It is automatically called by AddPage() and could be overwritten in your own inherited class. + * @public + */ + public function Header() { + $ormargins = $this->getOriginalMargins(); + $headerfont = $this->getHeaderFont(); + $headerdata = $this->getHeaderData(); + if (($headerdata['logo']) AND ($headerdata['logo'] != K_BLANK_IMAGE)) { + $imgtype = $this->getImageFileType(K_PATH_IMAGES.$headerdata['logo']); + if (($imgtype == 'eps') OR ($imgtype == 'ai')) { + $this->ImageEps(K_PATH_IMAGES.$headerdata['logo'], '', '', $headerdata['logo_width']); + } elseif ($imgtype == 'svg') { + $this->ImageSVG(K_PATH_IMAGES.$headerdata['logo'], '', '', $headerdata['logo_width']); + } else { + $this->Image(K_PATH_IMAGES.$headerdata['logo'], '', '', $headerdata['logo_width']); + } + $imgy = $this->getImageRBY(); + } else { + $imgy = $this->GetY(); + } + $cell_height = round(($this->getCellHeightRatio() * $headerfont[2]) / $this->getScaleFactor(), 2); + // set starting margin for text data cell + if ($this->getRTL()) { + $header_x = $ormargins['right'] + ($headerdata['logo_width'] * 1.1); + } else { + $header_x = $ormargins['left'] + ($headerdata['logo_width'] * 1.1); + } + $this->SetTextColor(0, 0, 0); + // header title + $this->SetFont($headerfont[0], 'B', $headerfont[2] + 1); + $this->SetX($header_x); + $this->Cell(0, $cell_height, $headerdata['title'], 0, 1, '', 0, '', 0); + // header string + $this->SetFont($headerfont[0], $headerfont[1], $headerfont[2]); + $this->SetX($header_x); + $this->MultiCell(0, $cell_height, $headerdata['string'], 0, '', 0, 1, '', '', true, 0, false); + // print an ending header line + $this->SetLineStyle(array('width' => 0.85 / $this->getScaleFactor(), 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0))); + $this->SetY((2.835 / $this->getScaleFactor()) + max($imgy, $this->GetY())); + if ($this->getRTL()) { + $this->SetX($ormargins['right']); + } else { + $this->SetX($ormargins['left']); + } + $this->Cell(0, 0, '', 'T', 0, 'C'); + } + + /** + * This method is used to render the page footer. + * It is automatically called by AddPage() and could be overwritten in your own inherited class. + * @public + */ + public function Footer() { + $cur_y = $this->GetY(); + $ormargins = $this->getOriginalMargins(); + $this->SetTextColor(0, 0, 0); + //set style for cell border + $line_width = 0.85 / $this->getScaleFactor(); + $this->SetLineStyle(array('width' => $line_width, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0))); + //print document barcode + $barcode = $this->getBarcode(); + if (!empty($barcode)) { + $this->Ln($line_width); + $barcode_width = round(($this->getPageWidth() - $ormargins['left'] - $ormargins['right']) / 3); + $style = array( + 'position' => $this->rtl?'R':'L', + 'align' => $this->rtl?'R':'L', + 'stretch' => false, + 'fitwidth' => true, + 'cellfitalign' => '', + 'border' => false, + 'padding' => 0, + 'fgcolor' => array(0,0,0), + 'bgcolor' => false, + 'text' => false + ); + $this->write1DBarcode($barcode, 'C128B', '', $cur_y + $line_width, '', (($this->getFooterMargin() / 3) - $line_width), 0.3, $style, ''); + } + if (empty($this->pagegroups)) { + $pagenumtxt = $this->l['w_page'].' '.$this->getAliasNumPage().' / '.$this->getAliasNbPages(); + } else { + $pagenumtxt = $this->l['w_page'].' '.$this->getPageNumGroupAlias().' / '.$this->getPageGroupAlias(); + } + $this->SetY($cur_y); + //Print page number + if ($this->getRTL()) { + $this->SetX($ormargins['right']); + $this->Cell(0, 0, $pagenumtxt, 'T', 0, 'L'); + } else { + $this->SetX($ormargins['left']); + $this->Cell(0, 0, $pagenumtxt, 'T', 0, 'R'); + } + } + + /** + * This method is used to render the page header. + * @protected + * @since 4.0.012 (2008-07-24) + */ + protected function setHeader() { + if ($this->print_header) { + $this->setGraphicVars($this->default_graphic_vars); + $temp_thead = $this->thead; + $temp_theadMargins = $this->theadMargins; + $lasth = $this->lasth; + $this->_out('q'); + $this->rMargin = $this->original_rMargin; + $this->lMargin = $this->original_lMargin; + $this->SetCellPadding(0); + //set current position + if ($this->rtl) { + $this->SetXY($this->original_rMargin, $this->header_margin); + } else { + $this->SetXY($this->original_lMargin, $this->header_margin); + } + $this->SetFont($this->header_font[0], $this->header_font[1], $this->header_font[2]); + $this->Header(); + //restore position + if ($this->rtl) { + $this->SetXY($this->original_rMargin, $this->tMargin); + } else { + $this->SetXY($this->original_lMargin, $this->tMargin); + } + $this->_out('Q'); + $this->lasth = $lasth; + $this->thead = $temp_thead; + $this->theadMargins = $temp_theadMargins; + $this->newline = false; + } + } + + /** + * This method is used to render the page footer. + * @protected + * @since 4.0.012 (2008-07-24) + */ + protected function setFooter() { + //Page footer + // save current graphic settings + $gvars = $this->getGraphicVars(); + // mark this point + $this->footerpos[$this->page] = $this->pagelen[$this->page]; + $this->_out("\n"); + if ($this->print_footer) { + $this->setGraphicVars($this->default_graphic_vars); + $this->current_column = 0; + $this->num_columns = 1; + $temp_thead = $this->thead; + $temp_theadMargins = $this->theadMargins; + $lasth = $this->lasth; + $this->_out('q'); + $this->rMargin = $this->original_rMargin; + $this->lMargin = $this->original_lMargin; + $this->SetCellPadding(0); + //set current position + $footer_y = $this->h - $this->footer_margin; + if ($this->rtl) { + $this->SetXY($this->original_rMargin, $footer_y); + } else { + $this->SetXY($this->original_lMargin, $footer_y); + } + $this->SetFont($this->footer_font[0], $this->footer_font[1], $this->footer_font[2]); + $this->Footer(); + //restore position + if ($this->rtl) { + $this->SetXY($this->original_rMargin, $this->tMargin); + } else { + $this->SetXY($this->original_lMargin, $this->tMargin); + } + $this->_out('Q'); + $this->lasth = $lasth; + $this->thead = $temp_thead; + $this->theadMargins = $temp_theadMargins; + } + // restore graphic settings + $this->setGraphicVars($gvars); + $this->current_column = $gvars['current_column']; + $this->num_columns = $gvars['num_columns']; + // calculate footer length + $this->footerlen[$this->page] = $this->pagelen[$this->page] - $this->footerpos[$this->page] + 1; + } + + /** + * This method is used to render the table header on new page (if any). + * @protected + * @since 4.5.030 (2009-03-25) + */ + protected function setTableHeader() { + if ($this->num_columns > 1) { + // multi column mode + return; + } + if (isset($this->theadMargins['top'])) { + // restore the original top-margin + $this->tMargin = $this->theadMargins['top']; + $this->pagedim[$this->page]['tm'] = $this->tMargin; + $this->y = $this->tMargin; + } + if (!$this->empty_string($this->thead) AND (!$this->inthead)) { + // set margins + $prev_lMargin = $this->lMargin; + $prev_rMargin = $this->rMargin; + $prev_cell_padding = $this->cell_padding; + $this->lMargin = $this->theadMargins['lmargin'] + ($this->pagedim[$this->page]['olm'] - $this->pagedim[$this->theadMargins['page']]['olm']); + $this->rMargin = $this->theadMargins['rmargin'] + ($this->pagedim[$this->page]['orm'] - $this->pagedim[$this->theadMargins['page']]['orm']); + $this->cell_padding = $this->theadMargins['cell_padding']; + if ($this->rtl) { + $this->x = $this->w - $this->rMargin; + } else { + $this->x = $this->lMargin; + } + // print table header + $this->writeHTML($this->thead, false, false, false, false, ''); + // set new top margin to skip the table headers + if (!isset($this->theadMargins['top'])) { + $this->theadMargins['top'] = $this->tMargin; + } + // store end of header position + if (!isset($this->columns[0]['th'])) { + $this->columns[0]['th'] = array(); + } + $this->columns[0]['th']['\''.$this->page.'\''] = $this->y; + $this->tMargin = $this->y; + $this->pagedim[$this->page]['tm'] = $this->tMargin; + $this->lasth = 0; + $this->lMargin = $prev_lMargin; + $this->rMargin = $prev_rMargin; + $this->cell_padding = $prev_cell_padding; + } + } + + /** + * Returns the current page number. + * @return int page number + * @public + * @since 1.0 + * @see AliasNbPages(), getAliasNbPages() + */ + public function PageNo() { + return $this->page; + } + + /** + * Defines a new spot color. + * It can be expressed in RGB components or gray scale. + * The method can be called before the first page is created and the value is retained from page to page. + * @param $name (string) name of the spot color + * @param $c (int) Cyan color for CMYK. Value between 0 and 100 + * @param $m (int) Magenta color for CMYK. Value between 0 and 100 + * @param $y (int) Yellow color for CMYK. Value between 0 and 100 + * @param $k (int) Key (Black) color for CMYK. Value between 0 and 100 + * @public + * @since 4.0.024 (2008-09-12) + * @see SetDrawSpotColor(), SetFillSpotColor(), SetTextSpotColor() + */ + public function AddSpotColor($name, $c, $m, $y, $k) { + if (!isset($this->spot_colors[$name])) { + $i = 1 + count($this->spot_colors); + $this->spot_colors[$name] = array('i' => $i, 'c' => $c, 'm' => $m, 'y' => $y, 'k' => $k); + } + $color = preg_replace('/[\s]*/', '', $name); // remove extra spaces + $color = strtolower($color); + if (!isset($this->spotcolor[$color])) { + $this->spotcolor[$color] = array($c, $m, $y, $k, $name); + } + } + + /** + * Defines the color used for all drawing operations (lines, rectangles and cell borders). + * It can be expressed in RGB, CMYK or GRAY SCALE components. + * The method can be called before the first page is created and the value is retained from page to page. + * @param $color (array) array of colors + * @param $ret (boolean) if true do not send the PDF command. + * @return string the PDF command + * @public + * @since 3.1.000 (2008-06-11) + * @see SetDrawColor() + */ + public function SetDrawColorArray($color, $ret=false) { + if (is_array($color)) { + $color = array_values($color); + $r = isset($color[0]) ? $color[0] : -1; + $g = isset($color[1]) ? $color[1] : -1; + $b = isset($color[2]) ? $color[2] : -1; + $k = isset($color[3]) ? $color[3] : -1; + $name = isset($color[4]) ? $color[4] : ''; // spot color name + if ($r >= 0) { + return $this->SetDrawColor($r, $g, $b, $k, $ret, $name); + } + } + return ''; + } + + /** + * Defines the color used for all drawing operations (lines, rectangles and cell borders). It can be expressed in RGB components or gray scale. The method can be called before the first page is created and the value is retained from page to page. + * @param $col1 (int) GRAY level for single color, or Red color for RGB (0-255), or CYAN color for CMYK (0-100). + * @param $col2 (int) GREEN color for RGB (0-255), or MAGENTA color for CMYK (0-100). + * @param $col3 (int) BLUE color for RGB (0-255), or YELLOW color for CMYK (0-100). + * @param $col4 (int) KEY (BLACK) color for CMYK (0-100). + * @param $ret (boolean) if true do not send the command. + * @param $name (string) spot color name (if any) + * @return string the PDF command + * @public + * @since 1.3 + * @see SetDrawColorArray(), SetFillColor(), SetTextColor(), Line(), Rect(), Cell(), MultiCell() + */ + public function SetDrawColor($col1=0, $col2=-1, $col3=-1, $col4=-1, $ret=false, $name='') { + // set default values + if (!is_numeric($col1)) { + $col1 = 0; + } + if (!is_numeric($col2)) { + $col2 = -1; + } + if (!is_numeric($col3)) { + $col3 = -1; + } + if (!is_numeric($col4)) { + $col4 = -1; + } + //Set color for all stroking operations + if (($col2 == -1) AND ($col3 == -1) AND ($col4 == -1)) { + // Grey scale + $this->DrawColor = sprintf('%.3F G', ($col1 / 255)); + $this->strokecolor = array('G' => $col1); + } elseif ($col4 == -1) { + // RGB + $this->DrawColor = sprintf('%.3F %.3F %.3F RG', ($col1 / 255), ($col2 / 255), ($col3 / 255)); + $this->strokecolor = array('R' => $col1, 'G' => $col2, 'B' => $col3); + } elseif (empty($name)) { + // CMYK + $this->DrawColor = sprintf('%.3F %.3F %.3F %.3F K', ($col1 / 100), ($col2 / 100), ($col3 / 100), ($col4 / 100)); + $this->strokecolor = array('C' => $col1, 'M' => $col2, 'Y' => $col3, 'K' => $col4); + } else { + // SPOT COLOR + $this->AddSpotColor($name, $col1, $col2, $col3, $col4); + $this->DrawColor = sprintf('/CS%d CS %.3F SCN', $this->spot_colors[$name]['i'], 1); + $this->strokecolor = array('C' => $col1, 'M' => $col2, 'Y' => $col3, 'K' => $col4, 'name' => $name); + } + if ($this->page > 0) { + if (!$ret) { + $this->_out($this->DrawColor); + } + return $this->DrawColor; + } + return ''; + } + + /** + * Defines the spot color used for all drawing operations (lines, rectangles and cell borders). + * @param $name (string) name of the spot color + * @param $tint (int) the intensity of the color (from 0 to 100 ; 100 = full intensity by default). + * @public + * @since 4.0.024 (2008-09-12) + * @see AddSpotColor(), SetFillSpotColor(), SetTextSpotColor() + */ + public function SetDrawSpotColor($name, $tint=100) { + if (!isset($this->spot_colors[$name])) { + $this->Error('Undefined spot color: '.$name); + } + $this->DrawColor = sprintf('/CS%d CS %.3F SCN', $this->spot_colors[$name]['i'], ($tint / 100)); + $this->strokecolor = array('C' => $this->spot_colors[$name]['c'], 'M' => $this->spot_colors[$name]['m'], 'Y' => $this->spot_colors[$name]['y'], 'K' => $this->spot_colors[$name]['k'], 'name' => $name); + if ($this->page > 0) { + $this->_out($this->DrawColor); + } + } + + /** + * Defines the color used for all filling operations (filled rectangles and cell backgrounds). + * It can be expressed in RGB, CMYK or GRAY SCALE components. + * The method can be called before the first page is created and the value is retained from page to page. + * @param $color (array) array of colors + * @param $ret (boolean) if true do not send the PDF command. + * @public + * @since 3.1.000 (2008-6-11) + * @see SetFillColor() + */ + public function SetFillColorArray($color, $ret=false) { + if (is_array($color)) { + $color = array_values($color); + $r = isset($color[0]) ? $color[0] : -1; + $g = isset($color[1]) ? $color[1] : -1; + $b = isset($color[2]) ? $color[2] : -1; + $k = isset($color[3]) ? $color[3] : -1; + $name = isset($color[4]) ? $color[4] : ''; // spot color name + if ($r >= 0) { + $this->SetFillColor($r, $g, $b, $k, $ret, $name); + } + } + } + + /** + * Defines the color used for all filling operations (filled rectangles and cell backgrounds). It can be expressed in RGB components or gray scale. The method can be called before the first page is created and the value is retained from page to page. + * @param $col1 (int) GRAY level for single color, or Red color for RGB (0-255), or CYAN color for CMYK (0-100). + * @param $col2 (int) GREEN color for RGB (0-255), or MAGENTA color for CMYK (0-100). + * @param $col3 (int) BLUE color for RGB (0-255), or YELLOW color for CMYK (0-100). + * @param $col4 (int) KEY (BLACK) color for CMYK (0-100). + * @param $ret (boolean) if true do not send the command. + * @param $name (string) spot color name (if any) + * @return string the PDF command + * @public + * @since 1.3 + * @see SetFillColorArray(), SetDrawColor(), SetTextColor(), Rect(), Cell(), MultiCell() + */ + public function SetFillColor($col1=0, $col2=-1, $col3=-1, $col4=-1, $ret=false, $name='') { + // set default values + if (!is_numeric($col1)) { + $col1 = 0; + } + if (!is_numeric($col2)) { + $col2 = -1; + } + if (!is_numeric($col3)) { + $col3 = -1; + } + if (!is_numeric($col4)) { + $col4 = -1; + } + //Set color for all filling operations + if (($col2 == -1) AND ($col3 == -1) AND ($col4 == -1)) { + // Grey scale + $this->FillColor = sprintf('%.3F g', ($col1 / 255)); + $this->bgcolor = array('G' => $col1); + } elseif ($col4 == -1) { + // RGB + $this->FillColor = sprintf('%.3F %.3F %.3F rg', ($col1 / 255), ($col2 / 255), ($col3 / 255)); + $this->bgcolor = array('R' => $col1, 'G' => $col2, 'B' => $col3); + } elseif (empty($name)) { + // CMYK + $this->FillColor = sprintf('%.3F %.3F %.3F %.3F k', ($col1 / 100), ($col2 / 100), ($col3 / 100), ($col4 / 100)); + $this->bgcolor = array('C' => $col1, 'M' => $col2, 'Y' => $col3, 'K' => $col4); + } else { + // SPOT COLOR + $this->AddSpotColor($name, $col1, $col2, $col3, $col4); + $this->FillColor = sprintf('/CS%d cs %.3F scn', $this->spot_colors[$name]['i'], 1); + $this->bgcolor = array('C' => $col1, 'M' => $col2, 'Y' => $col3, 'K' => $col4, 'name' => $name); + } + $this->ColorFlag = ($this->FillColor != $this->TextColor); + if ($this->page > 0) { + if (!$ret) { + $this->_out($this->FillColor); + } + return $this->FillColor; + } + return ''; + } + + /** + * Defines the spot color used for all filling operations (filled rectangles and cell backgrounds). + * @param $name (string) name of the spot color + * @param $tint (int) the intensity of the color (from 0 to 100 ; 100 = full intensity by default). + * @public + * @since 4.0.024 (2008-09-12) + * @see AddSpotColor(), SetDrawSpotColor(), SetTextSpotColor() + */ + public function SetFillSpotColor($name, $tint=100) { + if (!isset($this->spot_colors[$name])) { + $this->Error('Undefined spot color: '.$name); + } + $this->FillColor = sprintf('/CS%d cs %.3F scn', $this->spot_colors[$name]['i'], ($tint / 100)); + $this->bgcolor = array('C' => $this->spot_colors[$name]['c'], 'M' => $this->spot_colors[$name]['m'], 'Y' => $this->spot_colors[$name]['y'], 'K' => $this->spot_colors[$name]['k'], 'name' => $name); + $this->ColorFlag = ($this->FillColor != $this->TextColor); + if ($this->page > 0) { + $this->_out($this->FillColor); + } + } + + /** + * Defines the color used for text. It can be expressed in RGB components or gray scale. + * The method can be called before the first page is created and the value is retained from page to page. + * @param $color (array) array of colors + * @param $ret (boolean) if true do not send the PDF command. + * @public + * @since 3.1.000 (2008-6-11) + * @see SetFillColor() + */ + public function SetTextColorArray($color, $ret=false) { + if (is_array($color)) { + $color = array_values($color); + $r = isset($color[0]) ? $color[0] : -1; + $g = isset($color[1]) ? $color[1] : -1; + $b = isset($color[2]) ? $color[2] : -1; + $k = isset($color[3]) ? $color[3] : -1; + $name = isset($color[4]) ? $color[4] : ''; // spot color name + if ($r >= 0) { + $this->SetTextColor($r, $g, $b, $k, $ret, $name); + } + } + } + + /** + * Defines the color used for text. It can be expressed in RGB components or gray scale. The method can be called before the first page is created and the value is retained from page to page. + * @param $col1 (int) GRAY level for single color, or Red color for RGB (0-255), or CYAN color for CMYK (0-100). + * @param $col2 (int) GREEN color for RGB (0-255), or MAGENTA color for CMYK (0-100). + * @param $col3 (int) BLUE color for RGB (0-255), or YELLOW color for CMYK (0-100). + * @param $col4 (int) KEY (BLACK) color for CMYK (0-100). + * @param $ret (boolean) if true do not send the command. + * @param $name (string) spot color name (if any) + * @public + * @since 1.3 + * @see SetTextColorArray(), SetDrawColor(), SetFillColor(), Text(), Cell(), MultiCell() + */ + public function SetTextColor($col1=0, $col2=-1, $col3=-1, $col4=-1, $ret=false, $name='') { + // set default values + if (!is_numeric($col1)) { + $col1 = 0; + } + if (!is_numeric($col2)) { + $col2 = -1; + } + if (!is_numeric($col3)) { + $col3 = -1; + } + if (!is_numeric($col4)) { + $col4 = -1; + } + //Set color for text + if (($col2 == -1) AND ($col3 == -1) AND ($col4 == -1)) { + // Grey scale + $this->TextColor = sprintf('%.3F g', ($col1 / 255)); + $this->fgcolor = array('G' => $col1); + } elseif ($col4 == -1) { + // RGB + $this->TextColor = sprintf('%.3F %.3F %.3F rg', ($col1 / 255), ($col2 / 255), ($col3 / 255)); + $this->fgcolor = array('R' => $col1, 'G' => $col2, 'B' => $col3); + } elseif (empty($name)) { + // CMYK + $this->TextColor = sprintf('%.3F %.3F %.3F %.3F k', ($col1 / 100), ($col2 / 100), ($col3 / 100), ($col4 / 100)); + $this->fgcolor = array('C' => $col1, 'M' => $col2, 'Y' => $col3, 'K' => $col4); + } else { + // SPOT COLOR + $this->AddSpotColor($name, $col1, $col2, $col3, $col4); + $this->TextColor = sprintf('/CS%d cs %.3F scn', $this->spot_colors[$name]['i'], 1); + $this->fgcolor = array('C' => $col1, 'M' => $col2, 'Y' => $col3, 'K' => $col4, 'name' => $name); + } + $this->ColorFlag = ($this->FillColor != $this->TextColor); + } + + /** + * Defines the spot color used for text. + * @param $name (string) name of the spot color + * @param $tint (int) the intensity of the color (from 0 to 100 ; 100 = full intensity by default). + * @public + * @since 4.0.024 (2008-09-12) + * @see AddSpotColor(), SetDrawSpotColor(), SetFillSpotColor() + */ + public function SetTextSpotColor($name, $tint=100) { + if (!isset($this->spot_colors[$name])) { + $this->Error('Undefined spot color: '.$name); + } + $this->TextColor = sprintf('/CS%d cs %.3F scn', $this->spot_colors[$name]['i'], ($tint / 100)); + $this->fgcolor = array('C' => $this->spot_colors[$name]['c'], 'M' => $this->spot_colors[$name]['m'], 'Y' => $this->spot_colors[$name]['y'], 'K' => $this->spot_colors[$name]['k'], 'name' => $name); + $this->ColorFlag = ($this->FillColor != $this->TextColor); + if ($this->page > 0) { + $this->_out($this->TextColor); + } + } + + /** + * Returns the length of a string in user unit. A font must be selected.
        + * @param $s (string) The string whose length is to be computed + * @param $fontname (string) Family font. It can be either a name defined by AddFont() or one of the standard families. It is also possible to pass an empty string, in that case, the current family is retained. + * @param $fontstyle (string) Font style. Possible values are (case insensitive):
        • empty string: regular
        • B: bold
        • I: italic
        • U: underline
        • D: line-trough
        • O: overline
        or any combination. The default value is regular. + * @param $fontsize (float) Font size in points. The default value is the current size. + * @param $getarray (boolean) if true returns an array of characters widths, if false returns the total length. + * @return mixed int total string length or array of characted widths + * @author Nicola Asuni + * @public + * @since 1.2 + */ + public function GetStringWidth($s, $fontname='', $fontstyle='', $fontsize=0, $getarray=false) { + return $this->GetArrStringWidth($this->utf8Bidi($this->UTF8StringToArray($s), $s, $this->tmprtl), $fontname, $fontstyle, $fontsize, $getarray); + } + + /** + * Returns the string length of an array of chars in user unit or an array of characters widths. A font must be selected.
        + * @param $sa (string) The array of chars whose total length is to be computed + * @param $fontname (string) Family font. It can be either a name defined by AddFont() or one of the standard families. It is also possible to pass an empty string, in that case, the current family is retained. + * @param $fontstyle (string) Font style. Possible values are (case insensitive):
        • empty string: regular
        • B: bold
        • I: italic
        • U: underline
        • D: line trough
        • O: overline
        or any combination. The default value is regular. + * @param $fontsize (float) Font size in points. The default value is the current size. + * @param $getarray (boolean) if true returns an array of characters widths, if false returns the total length. + * @return mixed int total string length or array of characted widths + * @author Nicola Asuni + * @public + * @since 2.4.000 (2008-03-06) + */ + public function GetArrStringWidth($sa, $fontname='', $fontstyle='', $fontsize=0, $getarray=false) { + // store current values + if (!$this->empty_string($fontname)) { + $prev_FontFamily = $this->FontFamily; + $prev_FontStyle = $this->FontStyle; + $prev_FontSizePt = $this->FontSizePt; + $this->SetFont($fontname, $fontstyle, $fontsize); + } + // convert UTF-8 array to Latin1 if required + $sa = $this->UTF8ArrToLatin1($sa); + $w = 0; // total width + $wa = array(); // array of characters widths + foreach ($sa as $ck => $char) { + // character width + $cw = $this->GetCharWidth($char, isset($sa[($ck + 1)])); + $wa[] = $cw; + $w += $cw; + } + // restore previous values + if (!$this->empty_string($fontname)) { + $this->SetFont($prev_FontFamily, $prev_FontStyle, $prev_FontSizePt); + } + if ($getarray) { + return $wa; + } + return $w; + } + + /** + * Returns the length of the char in user unit for the current font considering current stretching and spacing (tracking/kerning). + * @param $char (int) The char code whose length is to be returned + * @param $notlast (boolean) set to false for the latest character on string, true otherwise (default) + * @return float char width + * @author Nicola Asuni + * @public + * @since 2.4.000 (2008-03-06) + */ + public function GetCharWidth($char, $notlast=true) { + // get raw width + $chw = $this->getRawCharWidth($char); + if (($this->font_spacing != 0) AND $notlast) { + // increase/decrease font spacing + $chw += $this->font_spacing; + } + if ($this->font_stretching != 100) { + // fixed stretching mode + $chw *= ($this->font_stretching / 100); + } + return $chw; + } + + /** + * Returns the length of the char in user unit for the current font. + * @param $char (int) The char code whose length is to be returned + * @return float char width + * @author Nicola Asuni + * @public + * @since 5.9.000 (2010-09-28) + */ + public function getRawCharWidth($char) { + if ($char == 173) { + // SHY character will not be printed + return (0); + } + $cw = &$this->CurrentFont['cw']; + if (isset($cw[$char])) { + $w = $cw[$char]; + } elseif (isset($this->CurrentFont['dw'])) { + // default width + $w = $this->CurrentFont['dw']; + } elseif (isset($cw[32])) { + // default width + $w = $cw[32]; + } else { + $w = 600; + } + return ($w * $this->FontSize / 1000); + } + + /** + * Returns the numbero of characters in a string. + * @param $s (string) The input string. + * @return int number of characters + * @public + * @since 2.0.0001 (2008-01-07) + */ + public function GetNumChars($s) { + if ($this->isUnicodeFont()) { + return count($this->UTF8StringToArray($s)); + } + return strlen($s); + } + + /** + * Fill the list of available fonts ($this->fontlist). + * @protected + * @since 4.0.013 (2008-07-28) + */ + protected function getFontsList() { + $fontsdir = opendir($this->_getfontpath()); + while (($file = readdir($fontsdir)) !== false) { + if (substr($file, -4) == '.php') { + array_push($this->fontlist, strtolower(basename($file, '.php'))); + } + } + closedir($fontsdir); + } + + /** + * Imports a TrueType, Type1, core, or CID0 font and makes it available. + * It is necessary to generate a font definition file first (read /fonts/utils/README.TXT). + * The definition file (and the font file itself when embedding) must be present either in the current directory or in the one indicated by K_PATH_FONTS if the constant is defined. If it could not be found, the error "Could not include font definition file" is generated. + * @param $family (string) Font family. The name can be chosen arbitrarily. If it is a standard family name, it will override the corresponding font. + * @param $style (string) Font style. Possible values are (case insensitive):
        • empty string: regular (default)
        • B: bold
        • I: italic
        • BI or IB: bold italic
        + * @param $fontfile (string) The font definition file. By default, the name is built from the family and style, in lower case with no spaces. + * @return array containing the font data, or false in case of error. + * @param $subset (mixed) if true embedd only a subset of the font (stores only the information related to the used characters); if false embedd full font; if 'default' uses the default value set using setFontSubsetting(). This option is valid only for TrueTypeUnicode fonts. If you want to enable users to change the document, set this parameter to false. If you subset the font, the person who receives your PDF would need to have your same font in order to make changes to your PDF. The file size of the PDF would also be smaller because you are embedding only part of a font. + * @public + * @since 1.5 + * @see SetFont(), setFontSubsetting() + */ + public function AddFont($family, $style='', $fontfile='', $subset='default') { + if ($subset === 'default') { + $subset = $this->font_subsetting; + } + if ($this->empty_string($family)) { + if (!$this->empty_string($this->FontFamily)) { + $family = $this->FontFamily; + } else { + $this->Error('Empty font family'); + } + } + // move embedded styles on $style + if (substr($family, -1) == 'I') { + $style .= 'I'; + $family = substr($family, 0, -1); + } + if (substr($family, -1) == 'B') { + $style .= 'B'; + $family = substr($family, 0, -1); + } + // normalize family name + $family = strtolower($family); + if ((!$this->isunicode) AND ($family == 'arial')) { + $family = 'helvetica'; + } + if (($family == 'symbol') OR ($family == 'zapfdingbats')) { + $style = ''; + } + $tempstyle = strtoupper($style); + $style = ''; + // underline + if (strpos($tempstyle, 'U') !== false) { + $this->underline = true; + } else { + $this->underline = false; + } + // line-through (deleted) + if (strpos($tempstyle, 'D') !== false) { + $this->linethrough = true; + } else { + $this->linethrough = false; + } + // overline + if (strpos($tempstyle, 'O') !== false) { + $this->overline = true; + } else { + $this->overline = false; + } + // bold + if (strpos($tempstyle, 'B') !== false) { + $style .= 'B'; + } + // oblique + if (strpos($tempstyle, 'I') !== false) { + $style .= 'I'; + } + $bistyle = $style; + $fontkey = $family.$style; + $font_style = $style.($this->underline ? 'U' : '').($this->linethrough ? 'D' : '').($this->overline ? 'O' : ''); + $fontdata = array('fontkey' => $fontkey, 'family' => $family, 'style' => $font_style); + // check if the font has been already added + $fb = $this->getFontBuffer($fontkey); + if ($fb !== false) { + if ($this->inxobj) { + // we are inside an XObject template + $this->xobjects[$this->xobjid]['fonts'][$fontkey] = $fb['i']; + } + return $fontdata; + } + if (isset($type)) { + unset($type); + } + if (isset($cw)) { + unset($cw); + } + // get specified font directory (if any) + $fontdir = false; + if (!$this->empty_string($fontfile)) { + $fontdir = dirname($fontfile); + if ($this->empty_string($fontdir) OR ($fontdir == '.')) { + $fontdir = ''; + } else { + $fontdir .= '/'; + } + } + // search and include font file + if ($this->empty_string($fontfile) OR (!file_exists($fontfile))) { + // build a standard filenames for specified font + $fontfile1 = str_replace(' ', '', $family).strtolower($style).'.php'; + $fontfile2 = str_replace(' ', '', $family).'.php'; + // search files on various directories + if (($fontdir !== false) AND file_exists($fontdir.$fontfile1)) { + $fontfile = $fontdir.$fontfile1; + } elseif (file_exists($this->_getfontpath().$fontfile1)) { + $fontfile = $this->_getfontpath().$fontfile1; + } elseif (file_exists($fontfile1)) { + $fontfile = $fontfile1; + } elseif (($fontdir !== false) AND file_exists($fontdir.$fontfile2)) { + $fontfile = $fontdir.$fontfile2; + } elseif (file_exists($this->_getfontpath().$fontfile2)) { + $fontfile = $this->_getfontpath().$fontfile2; + } else { + $fontfile = $fontfile2; + } + } + // include font file + if (file_exists($fontfile)) { + include($fontfile); + } else { + $this->Error('Could not include font definition file: '.$family.''); + } + // check font parameters + if ((!isset($type)) OR (!isset($cw))) { + $this->Error('The font definition file has a bad format: '.$fontfile.''); + } + // SET default parameters + if (!isset($file) OR $this->empty_string($file)) { + $file = ''; + } + if (!isset($enc) OR $this->empty_string($enc)) { + $enc = ''; + } + if (!isset($cidinfo) OR $this->empty_string($cidinfo)) { + $cidinfo = array('Registry'=>'Adobe','Ordering'=>'Identity','Supplement'=>0); + $cidinfo['uni2cid'] = array(); + } + if (!isset($ctg) OR $this->empty_string($ctg)) { + $ctg = ''; + } + if (!isset($desc) OR $this->empty_string($desc)) { + $desc = array(); + } + if (!isset($up) OR $this->empty_string($up)) { + $up = -100; + } + if (!isset($ut) OR $this->empty_string($ut)) { + $ut = 50; + } + if (!isset($cw) OR $this->empty_string($cw)) { + $cw = array(); + } + if (!isset($dw) OR $this->empty_string($dw)) { + // set default width + if (isset($desc['MissingWidth']) AND ($desc['MissingWidth'] > 0)) { + $dw = $desc['MissingWidth']; + } elseif (isset($cw[32])) { + $dw = $cw[32]; + } else { + $dw = 600; + } + } + ++$this->numfonts; + if ($type == 'cidfont0') { + // register CID font (all styles at once) + $styles = array('' => '', 'B' => ',Bold', 'I' => ',Italic', 'BI' => ',BoldItalic'); + $sname = $name.$styles[$bistyle]; + // artificial bold + if (strpos($bistyle, 'B') !== false) { + if (isset($desc['StemV'])) { + $desc['StemV'] *= 2; + } else { + $desc['StemV'] = 120; + } + } + // artificial italic + if (strpos($bistyle, 'I') !== false) { + if (isset($desc['ItalicAngle'])) { + $desc['ItalicAngle'] -= 11; + } else { + $desc['ItalicAngle'] = -11; + } + } + } elseif ($type == 'core') { + $name = $this->CoreFonts[$fontkey]; + $subset = false; + } elseif (($type == 'TrueType') OR ($type == 'Type1')) { + $subset = false; + } elseif ($type == 'TrueTypeUnicode') { + $enc = 'Identity-H'; + } else { + $this->Error('Unknow font type: '.$type.''); + } + // initialize subsetchars to contain default ASCII values (0-255) + $subsetchars = array_fill(0, 256, true); + $this->setFontBuffer($fontkey, array('fontkey' => $fontkey, 'i' => $this->numfonts, 'type' => $type, 'name' => $name, 'desc' => $desc, 'up' => $up, 'ut' => $ut, 'cw' => $cw, 'dw' => $dw, 'enc' => $enc, 'cidinfo' => $cidinfo, 'file' => $file, 'ctg' => $ctg, 'subset' => $subset, 'subsetchars' => $subsetchars)); + if ($this->inxobj) { + // we are inside an XObject template + $this->xobjects[$this->xobjid]['fonts'][$fontkey] = $this->numfonts; + } + if (isset($diff) AND (!empty($diff))) { + //Search existing encodings + $d = 0; + $nb = count($this->diffs); + for ($i=1; $i <= $nb; ++$i) { + if ($this->diffs[$i] == $diff) { + $d = $i; + break; + } + } + if ($d == 0) { + $d = $nb + 1; + $this->diffs[$d] = $diff; + } + $this->setFontSubBuffer($fontkey, 'diff', $d); + } + if (!$this->empty_string($file)) { + if (!isset($this->FontFiles[$file])) { + if ((strcasecmp($type,'TrueType') == 0) OR (strcasecmp($type, 'TrueTypeUnicode') == 0)) { + $this->FontFiles[$file] = array('length1' => $originalsize, 'fontdir' => $fontdir, 'subset' => $subset, 'fontkeys' => array($fontkey)); + } elseif ($type != 'core') { + $this->FontFiles[$file] = array('length1' => $size1, 'length2' => $size2, 'fontdir' => $fontdir, 'subset' => $subset, 'fontkeys' => array($fontkey)); + } + } else { + // update fontkeys that are sharing this font file + $this->FontFiles[$file]['subset'] = ($this->FontFiles[$file]['subset'] AND $subset); + if (!in_array($fontkey, $this->FontFiles[$file]['fontkeys'])) { + $this->FontFiles[$file]['fontkeys'][] = $fontkey; + } + } + } + return $fontdata; + } + + /** + * Sets the font used to print character strings. + * The font can be either a standard one or a font added via the AddFont() method. Standard fonts use Windows encoding cp1252 (Western Europe). + * The method can be called before the first page is created and the font is retained from page to page. + * If you just wish to change the current font size, it is simpler to call SetFontSize(). + * Note: for the standard fonts, the font metric files must be accessible. There are three possibilities for this:
        • They are in the current directory (the one where the running script lies)
        • They are in one of the directories defined by the include_path parameter
        • They are in the directory defined by the K_PATH_FONTS constant

        + * @param $family (string) Family font. It can be either a name defined by AddFont() or one of the standard Type1 families (case insensitive):
        • times (Times-Roman)
        • timesb (Times-Bold)
        • timesi (Times-Italic)
        • timesbi (Times-BoldItalic)
        • helvetica (Helvetica)
        • helveticab (Helvetica-Bold)
        • helveticai (Helvetica-Oblique)
        • helveticabi (Helvetica-BoldOblique)
        • courier (Courier)
        • courierb (Courier-Bold)
        • courieri (Courier-Oblique)
        • courierbi (Courier-BoldOblique)
        • symbol (Symbol)
        • zapfdingbats (ZapfDingbats)
        It is also possible to pass an empty string. In that case, the current family is retained. + * @param $style (string) Font style. Possible values are (case insensitive):
        • empty string: regular
        • B: bold
        • I: italic
        • U: underline
        • D: line trough
        • O: overline
        or any combination. The default value is regular. Bold and italic styles do not apply to Symbol and ZapfDingbats basic fonts or other fonts when not defined. + * @param $size (float) Font size in points. The default value is the current size. If no size has been specified since the beginning of the document, the value taken is 12 + * @param $fontfile (string) The font definition file. By default, the name is built from the family and style, in lower case with no spaces. + * @param $subset (mixed) if true embedd only a subset of the font (stores only the information related to the used characters); if false embedd full font; if 'default' uses the default value set using setFontSubsetting(). This option is valid only for TrueTypeUnicode fonts. If you want to enable users to change the document, set this parameter to false. If you subset the font, the person who receives your PDF would need to have your same font in order to make changes to your PDF. The file size of the PDF would also be smaller because you are embedding only part of a font. + * @author Nicola Asuni + * @public + * @since 1.0 + * @see AddFont(), SetFontSize() + */ + public function SetFont($family, $style='', $size=0, $fontfile='', $subset='default') { + //Select a font; size given in points + if ($size == 0) { + $size = $this->FontSizePt; + } + // try to add font (if not already added) + $fontdata = $this->AddFont($family, $style, $fontfile, $subset); + $this->FontFamily = $fontdata['family']; + $this->FontStyle = $fontdata['style']; + $this->CurrentFont = $this->getFontBuffer($fontdata['fontkey']); + $this->SetFontSize($size); + } + + /** + * Defines the size of the current font. + * @param $size (float) The size (in points) + * @param $out (boolean) if true output the font size command, otherwise only set the font properties. + * @public + * @since 1.0 + * @see SetFont() + */ + public function SetFontSize($size, $out=true) { + // font size in points + $this->FontSizePt = $size; + // font size in user units + $this->FontSize = $size / $this->k; + // calculate some font metrics + if (isset($this->CurrentFont['desc']['FontBBox'])) { + $bbox = explode(' ', substr($this->CurrentFont['desc']['FontBBox'], 1, -1)); + $font_height = ((intval($bbox[3]) - intval($bbox[1])) * $size / 1000); + } else { + $font_height = $size * 1.219; + } + if (isset($this->CurrentFont['desc']['Ascent']) AND ($this->CurrentFont['desc']['Ascent'] > 0)) { + $font_ascent = ($this->CurrentFont['desc']['Ascent'] * $size / 1000); + } + if (isset($this->CurrentFont['desc']['Descent']) AND ($this->CurrentFont['desc']['Descent'] <= 0)) { + $font_descent = (- $this->CurrentFont['desc']['Descent'] * $size / 1000); + } + if (!isset($font_ascent) AND !isset($font_descent)) { + // core font + $font_ascent = 0.76 * $font_height; + $font_descent = $font_height - $font_ascent; + } elseif (!isset($font_descent)) { + $font_descent = $font_height - $font_ascent; + } elseif (!isset($font_ascent)) { + $font_ascent = $font_height - $font_descent; + } + $this->FontAscent = $font_ascent / $this->k; + $this->FontDescent = $font_descent / $this->k; + if ($out AND ($this->page > 0) AND (isset($this->CurrentFont['i']))) { + $this->_out(sprintf('BT /F%d %.2F Tf ET', $this->CurrentFont['i'], $this->FontSizePt)); + } + } + + /** + * Return the font descent value + * @param $font (string) font name + * @param $style (string) font style + * @param $size (float) The size (in points) + * @return int font descent + * @public + * @author Nicola Asuni + * @since 4.9.003 (2010-03-30) + */ + public function getFontDescent($font, $style='', $size=0) { + $fontdata = $this->AddFont($font, $style); + $fontinfo = $this->getFontBuffer($fontdata['fontkey']); + if (isset($fontinfo['desc']['Descent']) AND ($fontinfo['desc']['Descent'] <= 0)) { + $descent = (- $fontinfo['desc']['Descent'] * $size / 1000); + } else { + $descent = 1.219 * 0.24 * $size; + } + return ($descent / $this->k); + } + + /** + * Return the font ascent value + * @param $font (string) font name + * @param $style (string) font style + * @param $size (float) The size (in points) + * @return int font ascent + * @public + * @author Nicola Asuni + * @since 4.9.003 (2010-03-30) + */ + public function getFontAscent($font, $style='', $size=0) { + $fontdata = $this->AddFont($font, $style); + $fontinfo = $this->getFontBuffer($fontdata['fontkey']); + if (isset($fontinfo['desc']['Ascent']) AND ($fontinfo['desc']['Ascent'] > 0)) { + $ascent = ($fontinfo['desc']['Ascent'] * $size / 1000); + } else { + $ascent = 1.219 * 0.76 * $size; + } + return ($ascent / $this->k); + } + + /** + * Defines the default monospaced font. + * @param $font (string) Font name. + * @public + * @since 4.5.025 + */ + public function SetDefaultMonospacedFont($font) { + $this->default_monospaced_font = $font; + } + + /** + * Creates a new internal link and returns its identifier. An internal link is a clickable area which directs to another place within the document.
        + * The identifier can then be passed to Cell(), Write(), Image() or Link(). The destination is defined with SetLink(). + * @public + * @since 1.5 + * @see Cell(), Write(), Image(), Link(), SetLink() + */ + public function AddLink() { + //Create a new internal link + $n = count($this->links) + 1; + $this->links[$n] = array(0, 0); + return $n; + } + + /** + * Defines the page and position a link points to. + * @param $link (int) The link identifier returned by AddLink() + * @param $y (float) Ordinate of target position; -1 indicates the current position. The default value is 0 (top of page) + * @param $page (int) Number of target page; -1 indicates the current page. This is the default value + * @public + * @since 1.5 + * @see AddLink() + */ + public function SetLink($link, $y=0, $page=-1) { + if ($y == -1) { + $y = $this->y; + } + if ($page == -1) { + $page = $this->page; + } + $this->links[$link] = array($page, $y); + } + + /** + * Puts a link on a rectangular area of the page. + * Text or image links are generally put via Cell(), Write() or Image(), but this method can be useful for instance to define a clickable area inside an image. + * @param $x (float) Abscissa of the upper-left corner of the rectangle + * @param $y (float) Ordinate of the upper-left corner of the rectangle + * @param $w (float) Width of the rectangle + * @param $h (float) Height of the rectangle + * @param $link (mixed) URL or identifier returned by AddLink() + * @param $spaces (int) number of spaces on the text to link + * @public + * @since 1.5 + * @see AddLink(), Annotation(), Cell(), Write(), Image() + */ + public function Link($x, $y, $w, $h, $link, $spaces=0) { + $this->Annotation($x, $y, $w, $h, $link, array('Subtype'=>'Link'), $spaces); + } + + /** + * Puts a markup annotation on a rectangular area of the page. + * !!!!THE ANNOTATION SUPPORT IS NOT YET FULLY IMPLEMENTED !!!! + * @param $x (float) Abscissa of the upper-left corner of the rectangle + * @param $y (float) Ordinate of the upper-left corner of the rectangle + * @param $w (float) Width of the rectangle + * @param $h (float) Height of the rectangle + * @param $text (string) annotation text or alternate content + * @param $opt (array) array of options (see section 8.4 of PDF reference 1.7). + * @param $spaces (int) number of spaces on the text to link + * @public + * @since 4.0.018 (2008-08-06) + */ + public function Annotation($x, $y, $w, $h, $text, $opt=array('Subtype'=>'Text'), $spaces=0) { + if ($this->inxobj) { + // store parameters for later use on template + $this->xobjects[$this->xobjid]['annotations'][] = array('x' => $x, 'y' => $y, 'w' => $w, 'h' => $h, 'text' => $text, 'opt' => $opt, 'spaces' => $spaces); + return; + } + if ($x === '') { + $x = $this->x; + } + if ($y === '') { + $y = $this->y; + } + // check page for no-write regions and adapt page margins if necessary + $this->checkPageRegions($h, $x, $y); + // recalculate coordinates to account for graphic transformations + if (isset($this->transfmatrix) AND !empty($this->transfmatrix)) { + for ($i=$this->transfmatrix_key; $i > 0; --$i) { + $maxid = count($this->transfmatrix[$i]) - 1; + for ($j=$maxid; $j >= 0; --$j) { + $ctm = $this->transfmatrix[$i][$j]; + if (isset($ctm['a'])) { + $x = $x * $this->k; + $y = ($this->h - $y) * $this->k; + $w = $w * $this->k; + $h = $h * $this->k; + // top left + $xt = $x; + $yt = $y; + $x1 = ($ctm['a'] * $xt) + ($ctm['c'] * $yt) + $ctm['e']; + $y1 = ($ctm['b'] * $xt) + ($ctm['d'] * $yt) + $ctm['f']; + // top right + $xt = $x + $w; + $yt = $y; + $x2 = ($ctm['a'] * $xt) + ($ctm['c'] * $yt) + $ctm['e']; + $y2 = ($ctm['b'] * $xt) + ($ctm['d'] * $yt) + $ctm['f']; + // bottom left + $xt = $x; + $yt = $y - $h; + $x3 = ($ctm['a'] * $xt) + ($ctm['c'] * $yt) + $ctm['e']; + $y3 = ($ctm['b'] * $xt) + ($ctm['d'] * $yt) + $ctm['f']; + // bottom right + $xt = $x + $w; + $yt = $y - $h; + $x4 = ($ctm['a'] * $xt) + ($ctm['c'] * $yt) + $ctm['e']; + $y4 = ($ctm['b'] * $xt) + ($ctm['d'] * $yt) + $ctm['f']; + // new coordinates (rectangle area) + $x = min($x1, $x2, $x3, $x4); + $y = max($y1, $y2, $y3, $y4); + $w = (max($x1, $x2, $x3, $x4) - $x) / $this->k; + $h = ($y - min($y1, $y2, $y3, $y4)) / $this->k; + $x = $x / $this->k; + $y = $this->h - ($y / $this->k); + } + } + } + } + if ($this->page <= 0) { + $page = 1; + } else { + $page = $this->page; + } + if (!isset($this->PageAnnots[$page])) { + $this->PageAnnots[$page] = array(); + } + ++$this->n; + $this->PageAnnots[$page][] = array('n' => $this->n, 'x' => $x, 'y' => $y, 'w' => $w, 'h' => $h, 'txt' => $text, 'opt' => $opt, 'numspaces' => $spaces); + if ((($opt['Subtype'] == 'FileAttachment') OR ($opt['Subtype'] == 'Sound')) AND (!$this->empty_string($opt['FS'])) AND file_exists($opt['FS']) AND (!isset($this->embeddedfiles[basename($opt['FS'])]))) { + ++$this->n; + $this->embeddedfiles[basename($opt['FS'])] = array('n' => $this->n, 'file' => $opt['FS']); + } + // Add widgets annotation's icons + if (isset($opt['mk']['i']) AND file_exists($opt['mk']['i'])) { + $this->Image($opt['mk']['i'], '', '', 10, 10, '', '', '', false, 300, '', false, false, 0, false, true); + } + if (isset($opt['mk']['ri']) AND file_exists($opt['mk']['ri'])) { + $this->Image($opt['mk']['ri'], '', '', 0, 0, '', '', '', false, 300, '', false, false, 0, false, true); + } + if (isset($opt['mk']['ix']) AND file_exists($opt['mk']['ix'])) { + $this->Image($opt['mk']['ix'], '', '', 0, 0, '', '', '', false, 300, '', false, false, 0, false, true); + } + } + + /** + * Embedd the attached files. + * @since 4.4.000 (2008-12-07) + * @protected + * @see Annotation() + */ + protected function _putEmbeddedFiles() { + reset($this->embeddedfiles); + foreach ($this->embeddedfiles as $filename => $filedata) { + $data = file_get_contents($filedata['file']); + $filter = ''; + if ($this->compress) { + $data = gzcompress($data); + $filter = ' /Filter /FlateDecode'; + } + $stream = $this->_getrawstream($data, $filedata['n']); + $out = $this->_getobj($filedata['n'])."\n"; + $out .= '<< /Type /EmbeddedFile'.$filter.' /Length '.strlen($stream).' >>'; + $out .= ' stream'."\n".$stream."\n".'endstream'; + $out .= "\n".'endobj'; + $this->_out($out); + } + } + + /** + * Prints a text cell at the specified position. + * This method allows to place a string precisely on the page. + * @param $x (float) Abscissa of the cell origin + * @param $y (float) Ordinate of the cell origin + * @param $txt (string) String to print + * @param $fstroke (int) outline size in user units (false = disable) + * @param $fclip (boolean) if true activate clipping mode (you must call StartTransform() before this function and StopTransform() to stop the clipping tranformation). + * @param $ffill (boolean) if true fills the text + * @param $border (mixed) Indicates if borders must be drawn around the cell. The value can be a number:
        • 0: no border (default)
        • 1: frame
        or a string containing some or all of the following characters (in any order):
        • L: left
        • T: top
        • R: right
        • B: bottom
        or an array of line styles for each border group - for example: array('LTRB' => array('width' => 2, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0))) + * @param $ln (int) Indicates where the current position should go after the call. Possible values are:
        • 0: to the right (or left for RTL languages)
        • 1: to the beginning of the next line
        • 2: below
        Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: 0. + * @param $align (string) Allows to center or align the text. Possible values are:
        • L or empty string: left align (default value)
        • C: center
        • R: right align
        • J: justify
        + * @param $fill (boolean) Indicates if the cell background must be painted (true) or transparent (false). + * @param $link (mixed) URL or identifier returned by AddLink(). + * @param $stretch (int) font stretch mode:
        • 0 = disabled
        • 1 = horizontal scaling only if text is larger than cell width
        • 2 = forced horizontal scaling to fit cell width
        • 3 = character spacing only if text is larger than cell width
        • 4 = forced character spacing to fit cell width
        General font stretching and scaling values will be preserved when possible. + * @param $ignore_min_height (boolean) if true ignore automatic minimum height value. + * @param $calign (string) cell vertical alignment relative to the specified Y value. Possible values are:
        • T : cell top
        • A : font top
        • L : font baseline
        • D : font bottom
        • B : cell bottom
        + * @param $valign (string) text vertical alignment inside the cell. Possible values are:
        • T : top
        • C : center
        • B : bottom
        + * @param $rtloff (boolean) if true uses the page top-left corner as origin of axis for $x and $y initial position. + * @public + * @since 1.0 + * @see Cell(), Write(), MultiCell(), WriteHTML(), WriteHTMLCell() + */ + public function Text($x, $y, $txt, $fstroke=false, $fclip=false, $ffill=true, $border=0, $ln=0, $align='', $fill=false, $link='', $stretch=0, $ignore_min_height=false, $calign='T', $valign='M', $rtloff=false) { + $textrendermode = $this->textrendermode; + $textstrokewidth = $this->textstrokewidth; + $this->setTextRenderingMode($fstroke, $ffill, $fclip); + $this->SetXY($x, $y, $rtloff); + $this->Cell(0, 0, $txt, $border, $ln, $align, $fill, $link, $stretch, $ignore_min_height, $calign, $valign); + // restore previous rendering mode + $this->textrendermode = $textrendermode; + $this->textstrokewidth = $textstrokewidth; + } + + /** + * Whenever a page break condition is met, the method is called, and the break is issued or not depending on the returned value. + * The default implementation returns a value according to the mode selected by SetAutoPageBreak().
        + * This method is called automatically and should not be called directly by the application. + * @return boolean + * @public + * @since 1.4 + * @see SetAutoPageBreak() + */ + public function AcceptPageBreak() { + if ($this->num_columns > 1) { + // multi column mode + if($this->current_column < ($this->num_columns - 1)) { + // go to next column + $this->selectColumn($this->current_column + 1); + } else { + // add a new page + $this->AddPage(); + // set first column + $this->selectColumn(0); + } + // avoid page breaking from checkPageBreak() + return false; + } + return $this->AutoPageBreak; + } + + /** + * Add page if needed. + * @param $h (float) Cell height. Default value: 0. + * @param $y (mixed) starting y position, leave empty for current position. + * @param $addpage (boolean) if true add a page, otherwise only return the true/false state + * @return boolean true in case of page break, false otherwise. + * @since 3.2.000 (2008-07-01) + * @protected + */ + protected function checkPageBreak($h=0, $y='', $addpage=true) { + if ($this->empty_string($y)) { + $y = $this->y; + } + $current_page = $this->page; + if ((($y + $h) > $this->PageBreakTrigger) AND (!$this->InFooter) AND ($this->AcceptPageBreak())) { + if ($addpage) { + //Automatic page break + $x = $this->x; + $this->AddPage($this->CurOrientation); + $this->y = $this->tMargin; + $oldpage = $this->page - 1; + if ($this->rtl) { + if ($this->pagedim[$this->page]['orm'] != $this->pagedim[$oldpage]['orm']) { + $this->x = $x - ($this->pagedim[$this->page]['orm'] - $this->pagedim[$oldpage]['orm']); + } else { + $this->x = $x; + } + } else { + if ($this->pagedim[$this->page]['olm'] != $this->pagedim[$oldpage]['olm']) { + $this->x = $x + ($this->pagedim[$this->page]['olm'] - $this->pagedim[$oldpage]['olm']); + } else { + $this->x = $x; + } + } + } + return true; + } + if ($current_page != $this->page) { + // account for columns mode + return true; + } + return false; + } + + /** + * Removes SHY characters from text. + * Unicode Data:
          + *
        • Name : SOFT HYPHEN, commonly abbreviated as SHY
        • + *
        • HTML Entity (decimal): "&#173;"
        • + *
        • HTML Entity (hex): "&#xad;"
        • + *
        • HTML Entity (named): "&shy;"
        • + *
        • How to type in Microsoft Windows: [Alt +00AD] or [Alt 0173]
        • + *
        • UTF-8 (hex): 0xC2 0xAD (c2ad)
        • + *
        • UTF-8 character: chr(194).chr(173)
        • + *
        + * @param $txt (string) input string + * @return string without SHY characters. + * @public + * @since (4.5.019) 2009-02-28 + */ + public function removeSHY($txt='') { + $txt = preg_replace('/([\\xc2]{1}[\\xad]{1})/', '', $txt); + if (!$this->isunicode) { + $txt = preg_replace('/([\\xad]{1})/', '', $txt); + } + return $txt; + } + + /** + * Prints a cell (rectangular area) with optional borders, background color and character string. The upper-left corner of the cell corresponds to the current position. The text can be aligned or centered. After the call, the current position moves to the right or to the next line. It is possible to put a link on the text.
        + * If automatic page breaking is enabled and the cell goes beyond the limit, a page break is done before outputting. + * @param $w (float) Cell width. If 0, the cell extends up to the right margin. + * @param $h (float) Cell height. Default value: 0. + * @param $txt (string) String to print. Default value: empty string. + * @param $border (mixed) Indicates if borders must be drawn around the cell. The value can be a number:
        • 0: no border (default)
        • 1: frame
        or a string containing some or all of the following characters (in any order):
        • L: left
        • T: top
        • R: right
        • B: bottom
        or an array of line styles for each border group - for example: array('LTRB' => array('width' => 2, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0))) + * @param $ln (int) Indicates where the current position should go after the call. Possible values are:
        • 0: to the right (or left for RTL languages)
        • 1: to the beginning of the next line
        • 2: below
        Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: 0. + * @param $align (string) Allows to center or align the text. Possible values are:
        • L or empty string: left align (default value)
        • C: center
        • R: right align
        • J: justify
        + * @param $fill (boolean) Indicates if the cell background must be painted (true) or transparent (false). + * @param $link (mixed) URL or identifier returned by AddLink(). + * @param $stretch (int) font stretch mode:
        • 0 = disabled
        • 1 = horizontal scaling only if text is larger than cell width
        • 2 = forced horizontal scaling to fit cell width
        • 3 = character spacing only if text is larger than cell width
        • 4 = forced character spacing to fit cell width
        General font stretching and scaling values will be preserved when possible. + * @param $ignore_min_height (boolean) if true ignore automatic minimum height value. + * @param $calign (string) cell vertical alignment relative to the specified Y value. Possible values are:
        • T : cell top
        • C : center
        • B : cell bottom
        • A : font top
        • L : font baseline
        • D : font bottom
        + * @param $valign (string) text vertical alignment inside the cell. Possible values are:
        • T : top
        • C : center
        • B : bottom
        + * @public + * @since 1.0 + * @see SetFont(), SetDrawColor(), SetFillColor(), SetTextColor(), SetLineWidth(), AddLink(), Ln(), MultiCell(), Write(), SetAutoPageBreak() + */ + public function Cell($w, $h=0, $txt='', $border=0, $ln=0, $align='', $fill=false, $link='', $stretch=0, $ignore_min_height=false, $calign='T', $valign='M') { + $prev_cell_margin = $this->cell_margin; + $prev_cell_padding = $this->cell_padding; + $this->adjustCellPadding($border); + if (!$ignore_min_height) { + $min_cell_height = ($this->FontSize * $this->cell_height_ratio) + $this->cell_padding['T'] + $this->cell_padding['B']; + if ($h < $min_cell_height) { + $h = $min_cell_height; + } + } + $this->checkPageBreak($h + $this->cell_margin['T'] + $this->cell_margin['B']); + $this->_out($this->getCellCode($w, $h, $txt, $border, $ln, $align, $fill, $link, $stretch, true, $calign, $valign)); + $this->cell_padding = $prev_cell_padding; + $this->cell_margin = $prev_cell_margin; + } + + /** + * Returns the PDF string code to print a cell (rectangular area) with optional borders, background color and character string. The upper-left corner of the cell corresponds to the current position. The text can be aligned or centered. After the call, the current position moves to the right or to the next line. It is possible to put a link on the text.
        + * If automatic page breaking is enabled and the cell goes beyond the limit, a page break is done before outputting. + * @param $w (float) Cell width. If 0, the cell extends up to the right margin. + * @param $h (float) Cell height. Default value: 0. + * @param $txt (string) String to print. Default value: empty string. + * @param $border (mixed) Indicates if borders must be drawn around the cell. The value can be a number:
        • 0: no border (default)
        • 1: frame
        or a string containing some or all of the following characters (in any order):
        • L: left
        • T: top
        • R: right
        • B: bottom
        or an array of line styles for each border group - for example: array('LTRB' => array('width' => 2, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0))) + * @param $ln (int) Indicates where the current position should go after the call. Possible values are:
        • 0: to the right (or left for RTL languages)
        • 1: to the beginning of the next line
        • 2: below
        Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: 0. + * @param $align (string) Allows to center or align the text. Possible values are:
        • L or empty string: left align (default value)
        • C: center
        • R: right align
        • J: justify
        + * @param $fill (boolean) Indicates if the cell background must be painted (true) or transparent (false). + * @param $link (mixed) URL or identifier returned by AddLink(). + * @param $stretch (int) font stretch mode:
        • 0 = disabled
        • 1 = horizontal scaling only if text is larger than cell width
        • 2 = forced horizontal scaling to fit cell width
        • 3 = character spacing only if text is larger than cell width
        • 4 = forced character spacing to fit cell width
        General font stretching and scaling values will be preserved when possible. + * @param $ignore_min_height (boolean) if true ignore automatic minimum height value. + * @param $calign (string) cell vertical alignment relative to the specified Y value. Possible values are:
        • T : cell top
        • C : center
        • B : cell bottom
        • A : font top
        • L : font baseline
        • D : font bottom
        + * @param $valign (string) text vertical alignment inside the cell. Possible values are:
        • T : top
        • M : middle
        • B : bottom
        + * @return string containing cell code + * @protected + * @since 1.0 + * @see Cell() + */ + protected function getCellCode($w, $h=0, $txt='', $border=0, $ln=0, $align='', $fill=false, $link='', $stretch=0, $ignore_min_height=false, $calign='T', $valign='M') { + $prev_cell_margin = $this->cell_margin; + $prev_cell_padding = $this->cell_padding; + $txt = $this->removeSHY($txt); + $rs = ''; //string to be returned + $this->adjustCellPadding($border); + if (!$ignore_min_height) { + $min_cell_height = ($this->FontSize * $this->cell_height_ratio) + $this->cell_padding['T'] + $this->cell_padding['B']; + if ($h < $min_cell_height) { + $h = $min_cell_height; + } + } + $k = $this->k; + // check page for no-write regions and adapt page margins if necessary + $this->checkPageRegions($h, $this->x, $this->y); + if ($this->rtl) { + $x = $this->x - $this->cell_margin['R']; + } else { + $x = $this->x + $this->cell_margin['L']; + } + $y = $this->y + $this->cell_margin['T']; + $prev_font_stretching = $this->font_stretching; + $prev_font_spacing = $this->font_spacing; + // cell vertical alignment + switch ($calign) { + case 'A': { + // font top + switch ($valign) { + case 'T': { + // top + $y -= $this->cell_padding['T']; + break; + } + case 'B': { + // bottom + $y -= ($h - $this->cell_padding['B'] - $this->FontAscent - $this->FontDescent); + break; + } + default: + case 'C': + case 'M': { + // center + $y -= (($h - $this->FontAscent - $this->FontDescent) / 2); + break; + } + } + break; + } + case 'L': { + // font baseline + switch ($valign) { + case 'T': { + // top + $y -= ($this->cell_padding['T'] + $this->FontAscent); + break; + } + case 'B': { + // bottom + $y -= ($h - $this->cell_padding['B'] - $this->FontDescent); + break; + } + default: + case 'C': + case 'M': { + // center + $y -= (($h + $this->FontAscent - $this->FontDescent) / 2); + break; + } + } + break; + } + case 'D': { + // font bottom + switch ($valign) { + case 'T': { + // top + $y -= ($this->cell_padding['T'] + $this->FontAscent + $this->FontDescent); + break; + } + case 'B': { + // bottom + $y -= ($h - $this->cell_padding['B']); + break; + } + default: + case 'C': + case 'M': { + // center + $y -= (($h + $this->FontAscent + $this->FontDescent) / 2); + break; + } + } + break; + } + case 'B': { + // cell bottom + $y -= $h; + break; + } + case 'C': + case 'M': { + // cell center + $y -= ($h / 2); + break; + } + default: + case 'T': { + // cell top + break; + } + } + // text vertical alignment + switch ($valign) { + case 'T': { + // top + $yt = $y + $this->cell_padding['T']; + break; + } + case 'B': { + // bottom + $yt = $y + $h - $this->cell_padding['B'] - $this->FontAscent - $this->FontDescent; + break; + } + default: + case 'C': + case 'M': { + // center + $yt = $y + (($h - $this->FontAscent - $this->FontDescent) / 2); + break; + } + } + $basefonty = $yt + $this->FontAscent; + if ($this->empty_string($w) OR ($w <= 0)) { + if ($this->rtl) { + $w = $x - $this->lMargin; + } else { + $w = $this->w - $this->rMargin - $x; + } + } + $s = ''; + // fill and borders + if (is_string($border) AND (strlen($border) == 4)) { + // full border + $border = 1; + } + if ($fill OR ($border == 1)) { + if ($fill) { + $op = ($border == 1) ? 'B' : 'f'; + } else { + $op = 'S'; + } + if ($this->rtl) { + $xk = (($x - $w) * $k); + } else { + $xk = ($x * $k); + } + $s .= sprintf('%.2F %.2F %.2F %.2F re %s ', $xk, (($this->h - $y) * $k), ($w * $k), (-$h * $k), $op); + } + // draw borders + $s .= $this->getCellBorder($x, $y, $w, $h, $border); + if ($txt != '') { + $txt2 = $txt; + if ($this->isunicode) { + if (($this->CurrentFont['type'] == 'core') OR ($this->CurrentFont['type'] == 'TrueType') OR ($this->CurrentFont['type'] == 'Type1')) { + $txt2 = $this->UTF8ToLatin1($txt2); + } else { + $unicode = $this->UTF8StringToArray($txt); // array of UTF-8 unicode values + $unicode = $this->utf8Bidi($unicode, '', $this->tmprtl); + if (defined('K_THAI_TOPCHARS') AND (K_THAI_TOPCHARS == true)) { + // ---- Fix for bug #2977340 "Incorrect Thai characters position arrangement" ---- + // NOTE: this doesn't work with HTML justification + // Symbols that could overlap on the font top (only works in LTR) + $topchar = array(3611, 3613, 3615, 3650, 3651, 3652); // chars that extends on top + $topsym = array(3633, 3636, 3637, 3638, 3639, 3655, 3656, 3657, 3658, 3659, 3660, 3661, 3662); // symbols with top position + $numchars = count($unicode); // number of chars + $unik = 0; + $uniblock = array(); + $uniblock[$unik] = array(); + $uniblock[$unik][] = $unicode[0]; + // resolve overlapping conflicts by splitting the string in several parts + for ($i = 1; $i < $numchars; ++$i) { + // check if symbols overlaps at top + if (in_array($unicode[$i], $topsym) AND (in_array($unicode[($i - 1)], $topsym) OR in_array($unicode[($i - 1)], $topchar))) { + // move symbols to another array + ++$unik; + $uniblock[$unik] = array(); + $uniblock[$unik][] = $unicode[$i]; + ++$unik; + $uniblock[$unik] = array(); + $unicode[$i] = 0x200b; // Unicode Character 'ZERO WIDTH SPACE' (DEC:8203, U+200B) + } else { + $uniblock[$unik][] = $unicode[$i]; + } + } + // ---- END OF Fix for bug #2977340 + } + $txt2 = $this->arrUTF8ToUTF16BE($unicode, false); + } + } + $txt2 = $this->_escape($txt2); + // get current text width (considering general font stretching and spacing) + $txwidth = $this->GetStringWidth($txt); + $width = $txwidth; + // check for stretch mode + if ($stretch > 0) { + // calculate ratio between cell width and text width + if ($width <= 0) { + $ratio = 1; + } else { + $ratio = (($w - $this->cell_padding['L'] - $this->cell_padding['R']) / $width); + } + // check if stretching is required + if (($ratio < 1) OR (($ratio > 1) AND (($stretch % 2) == 0))) { + // the text will be stretched to fit cell width + if ($stretch > 2) { + // set new character spacing + $this->font_spacing += ($w - $this->cell_padding['L'] - $this->cell_padding['R'] - $width) / (max(($this->GetNumChars($txt) - 1), 1) * ($this->font_stretching / 100)); + } else { + // set new horizontal stretching + $this->font_stretching *= $ratio; + } + // recalculate text width (the text fills the entire cell) + $width = $w - $this->cell_padding['L'] - $this->cell_padding['R']; + // reset alignment + $align = ''; + } + } + if ($this->font_stretching != 100) { + // apply font stretching + $rs .= sprintf('BT %.2F Tz ET ', $this->font_stretching); + } + if ($this->font_spacing != 0) { + // increase/decrease font spacing + $rs .= sprintf('BT %.2F Tc ET ', ($this->font_spacing * $this->k)); + } + if ($this->ColorFlag) { + $s .= 'q '.$this->TextColor.' '; + } + // rendering mode + $s .= sprintf('BT %d Tr %.2F w ET ', $this->textrendermode, $this->textstrokewidth); + // count number of spaces + $ns = substr_count($txt, chr(32)); + // Justification + $spacewidth = 0; + if (($align == 'J') AND ($ns > 0)) { + if ($this->isUnicodeFont()) { + // get string width without spaces + $width = $this->GetStringWidth(str_replace(' ', '', $txt)); + // calculate average space width + $spacewidth = -1000 * ($w - $width - $this->cell_padding['L'] - $this->cell_padding['R']) / ($ns?$ns:1) / $this->FontSize; + if ($this->font_stretching != 100) { + // word spacing is affected by stretching + $spacewidth /= ($this->font_stretching / 100); + } + // set word position to be used with TJ operator + $txt2 = str_replace(chr(0).chr(32), ') '.sprintf('%.3F', $spacewidth).' (', $txt2); + $unicode_justification = true; + } else { + // get string width + $width = $txwidth; + // new space width + $spacewidth = (($w - $width - $this->cell_padding['L'] - $this->cell_padding['R']) / ($ns?$ns:1)) * $this->k; + if ($this->font_stretching != 100) { + // word spacing (Tw) is affected by stretching + $spacewidth /= ($this->font_stretching / 100); + } + // set word spacing + $rs .= sprintf('BT %.3F Tw ET ', $spacewidth); + } + $width = $w - $this->cell_padding['L'] - $this->cell_padding['R']; + } + // replace carriage return characters + $txt2 = str_replace("\r", ' ', $txt2); + switch ($align) { + case 'C': { + $dx = ($w - $width) / 2; + break; + } + case 'R': { + if ($this->rtl) { + $dx = $this->cell_padding['R']; + } else { + $dx = $w - $width - $this->cell_padding['R']; + } + break; + } + case 'L': { + if ($this->rtl) { + $dx = $w - $width - $this->cell_padding['L']; + } else { + $dx = $this->cell_padding['L']; + } + break; + } + case 'J': + default: { + if ($this->rtl) { + $dx = $this->cell_padding['R']; + } else { + $dx = $this->cell_padding['L']; + } + break; + } + } + if ($this->rtl) { + $xdx = $x - $dx - $width; + } else { + $xdx = $x + $dx; + } + $xdk = $xdx * $k; + // print text + $s .= sprintf('BT %.2F %.2F Td [(%s)] TJ ET', $xdk, (($this->h - $basefonty) * $k), $txt2); + if (isset($uniblock)) { + // print overlapping characters as separate string + $xshift = 0; // horizontal shift + $ty = (($this->h - $basefonty + (0.2 * $this->FontSize)) * $k); + $spw = (($w - $txwidth - $this->cell_padding['L'] - $this->cell_padding['R']) / ($ns?$ns:1)); + foreach ($uniblock as $uk => $uniarr) { + if (($uk % 2) == 0) { + // x space to skip + if ($spacewidth != 0) { + // justification shift + $xshift += (count(array_keys($uniarr, 32)) * $spw); + } + $xshift += $this->GetArrStringWidth($uniarr); // + shift justification + } else { + // character to print + $topchr = $this->arrUTF8ToUTF16BE($uniarr, false); + $topchr = $this->_escape($topchr); + $s .= sprintf(' BT %.2F %.2F Td [(%s)] TJ ET', ($xdk + ($xshift * $k)), $ty, $topchr); + } + } + } + if ($this->underline) { + $s .= ' '.$this->_dounderlinew($xdx, $basefonty, $width); + } + if ($this->linethrough) { + $s .= ' '.$this->_dolinethroughw($xdx, $basefonty, $width); + } + if ($this->overline) { + $s .= ' '.$this->_dooverlinew($xdx, $basefonty, $width); + } + if ($this->ColorFlag) { + $s .= ' Q'; + } + if ($link) { + $this->Link($xdx, $yt, $width, ($this->FontAscent + $this->FontDescent), $link, $ns); + } + } + // output cell + if ($s) { + // output cell + $rs .= $s; + if ($this->font_spacing != 0) { + // reset font spacing mode + $rs .= ' BT 0 Tc ET'; + } + if ($this->font_stretching != 100) { + // reset font stretching mode + $rs .= ' BT 100 Tz ET'; + } + } + // reset word spacing + if (!$this->isUnicodeFont() AND ($align == 'J')) { + $rs .= ' BT 0 Tw ET'; + } + // reset stretching and spacing + $this->font_stretching = $prev_font_stretching; + $this->font_spacing = $prev_font_spacing; + $this->lasth = $h; + if ($ln > 0) { + //Go to the beginning of the next line + $this->y = $y + $h + $this->cell_margin['B']; + if ($ln == 1) { + if ($this->rtl) { + $this->x = $this->w - $this->rMargin; + } else { + $this->x = $this->lMargin; + } + } + } else { + // go left or right by case + if ($this->rtl) { + $this->x = $x - $w - $this->cell_margin['L']; + } else { + $this->x = $x + $w + $this->cell_margin['R']; + } + } + $gstyles = ''.$this->linestyleWidth.' '.$this->linestyleCap.' '.$this->linestyleJoin.' '.$this->linestyleDash.' '.$this->DrawColor.' '.$this->FillColor."\n"; + $rs = $gstyles.$rs; + $this->cell_padding = $prev_cell_padding; + $this->cell_margin = $prev_cell_margin; + return $rs; + } + + /** + * Returns the code to draw the cell border + * @param $x (float) X coordinate. + * @param $y (float) Y coordinate. + * @param $w (float) Cell width. + * @param $h (float) Cell height. + * @param $brd (mixed) Indicates if borders must be drawn around the cell. The value can be a number:
        • 0: no border (default)
        • 1: frame
        or a string containing some or all of the following characters (in any order):
        • L: left
        • T: top
        • R: right
        • B: bottom
        or an array of line styles for each border group - for example: array('LTRB' => array('width' => 2, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0))) + * @return string containing cell border code + * @protected + * @see SetLineStyle() + * @since 5.7.000 (2010-08-02) + */ + protected function getCellBorder($x, $y, $w, $h, $brd) { + $s = ''; // string to be returned + if (empty($brd)) { + return $s; + } + if ($brd == 1) { + $brd = array('LRTB' => true); + } + // calculate coordinates for border + $k = $this->k; + if ($this->rtl) { + $xeL = ($x - $w) * $k; + $xeR = $x * $k; + } else { + $xeL = $x * $k; + $xeR = ($x + $w) * $k; + } + $yeL = (($this->h - ($y + $h)) * $k); + $yeT = (($this->h - $y) * $k); + $xeT = $xeL; + $xeB = $xeR; + $yeR = $yeT; + $yeB = $yeL; + if (is_string($brd)) { + // convert string to array + $slen = strlen($brd); + $newbrd = array(); + for ($i = 0; $i < $slen; ++$i) { + $newbrd[$brd{$i}] = array('cap' => 'square', 'join' => 'miter'); + } + $brd = $newbrd; + } + if (isset($brd['mode'])) { + $mode = $brd['mode']; + unset($brd['mode']); + } else { + $mode = 'normal'; + } + foreach ($brd as $border => $style) { + if (is_array($style) AND !empty($style)) { + // apply border style + $prev_style = $this->linestyleWidth.' '.$this->linestyleCap.' '.$this->linestyleJoin.' '.$this->linestyleDash.' '.$this->DrawColor.' '; + $s .= $this->SetLineStyle($style, true)."\n"; + } + switch ($mode) { + case 'ext': { + $off = (($this->LineWidth / 2) * $k); + $xL = $xeL - $off; + $xR = $xeR + $off; + $yT = $yeT + $off; + $yL = $yeL - $off; + $xT = $xL; + $xB = $xR; + $yR = $yT; + $yB = $yL; + $w += $this->LineWidth; + $h += $this->LineWidth; + break; + } + case 'int': { + $off = ($this->LineWidth / 2) * $k; + $xL = $xeL + $off; + $xR = $xeR - $off; + $yT = $yeT - $off; + $yL = $yeL + $off; + $xT = $xL; + $xB = $xR; + $yR = $yT; + $yB = $yL; + $w -= $this->LineWidth; + $h -= $this->LineWidth; + break; + } + case 'normal': + default: { + $xL = $xeL; + $xT = $xeT; + $xB = $xeB; + $xR = $xeR; + $yL = $yeL; + $yT = $yeT; + $yB = $yeB; + $yR = $yeR; + break; + } + } + // draw borders by case + if (strlen($border) == 4) { + $s .= sprintf('%.2F %.2F %.2F %.2F re S ', $xT, $yT, ($w * $k), (-$h * $k)); + } elseif (strlen($border) == 3) { + if (strpos($border,'B') === false) { // LTR + $s .= sprintf('%.2F %.2F m ', $xL, $yL); + $s .= sprintf('%.2F %.2F l ', $xT, $yT); + $s .= sprintf('%.2F %.2F l ', $xR, $yR); + $s .= sprintf('%.2F %.2F l ', $xB, $yB); + $s .= 'S '; + } elseif (strpos($border,'L') === false) { // TRB + $s .= sprintf('%.2F %.2F m ', $xT, $yT); + $s .= sprintf('%.2F %.2F l ', $xR, $yR); + $s .= sprintf('%.2F %.2F l ', $xB, $yB); + $s .= sprintf('%.2F %.2F l ', $xL, $yL); + $s .= 'S '; + } elseif (strpos($border,'T') === false) { // RBL + $s .= sprintf('%.2F %.2F m ', $xR, $yR); + $s .= sprintf('%.2F %.2F l ', $xB, $yB); + $s .= sprintf('%.2F %.2F l ', $xL, $yL); + $s .= sprintf('%.2F %.2F l ', $xT, $yT); + $s .= 'S '; + } elseif (strpos($border,'R') === false) { // BLT + $s .= sprintf('%.2F %.2F m ', $xB, $yB); + $s .= sprintf('%.2F %.2F l ', $xL, $yL); + $s .= sprintf('%.2F %.2F l ', $xT, $yT); + $s .= sprintf('%.2F %.2F l ', $xR, $yR); + $s .= 'S '; + } + } elseif (strlen($border) == 2) { + if ((strpos($border,'L') !== false) AND (strpos($border,'T') !== false)) { // LT + $s .= sprintf('%.2F %.2F m ', $xL, $yL); + $s .= sprintf('%.2F %.2F l ', $xT, $yT); + $s .= sprintf('%.2F %.2F l ', $xR, $yR); + $s .= 'S '; + } elseif ((strpos($border,'T') !== false) AND (strpos($border,'R') !== false)) { // TR + $s .= sprintf('%.2F %.2F m ', $xT, $yT); + $s .= sprintf('%.2F %.2F l ', $xR, $yR); + $s .= sprintf('%.2F %.2F l ', $xB, $yB); + $s .= 'S '; + } elseif ((strpos($border,'R') !== false) AND (strpos($border,'B') !== false)) { // RB + $s .= sprintf('%.2F %.2F m ', $xR, $yR); + $s .= sprintf('%.2F %.2F l ', $xB, $yB); + $s .= sprintf('%.2F %.2F l ', $xL, $yL); + $s .= 'S '; + } elseif ((strpos($border,'B') !== false) AND (strpos($border,'L') !== false)) { // BL + $s .= sprintf('%.2F %.2F m ', $xB, $yB); + $s .= sprintf('%.2F %.2F l ', $xL, $yL); + $s .= sprintf('%.2F %.2F l ', $xT, $yT); + $s .= 'S '; + } elseif ((strpos($border,'L') !== false) AND (strpos($border,'R') !== false)) { // LR + $s .= sprintf('%.2F %.2F m ', $xL, $yL); + $s .= sprintf('%.2F %.2F l ', $xT, $yT); + $s .= 'S '; + $s .= sprintf('%.2F %.2F m ', $xR, $yR); + $s .= sprintf('%.2F %.2F l ', $xB, $yB); + $s .= 'S '; + } elseif ((strpos($border,'T') !== false) AND (strpos($border,'B') !== false)) { // TB + $s .= sprintf('%.2F %.2F m ', $xT, $yT); + $s .= sprintf('%.2F %.2F l ', $xR, $yR); + $s .= 'S '; + $s .= sprintf('%.2F %.2F m ', $xB, $yB); + $s .= sprintf('%.2F %.2F l ', $xL, $yL); + $s .= 'S '; + } + } else { // strlen($border) == 1 + if (strpos($border,'L') !== false) { // L + $s .= sprintf('%.2F %.2F m ', $xL, $yL); + $s .= sprintf('%.2F %.2F l ', $xT, $yT); + $s .= 'S '; + } elseif (strpos($border,'T') !== false) { // T + $s .= sprintf('%.2F %.2F m ', $xT, $yT); + $s .= sprintf('%.2F %.2F l ', $xR, $yR); + $s .= 'S '; + } elseif (strpos($border,'R') !== false) { // R + $s .= sprintf('%.2F %.2F m ', $xR, $yR); + $s .= sprintf('%.2F %.2F l ', $xB, $yB); + $s .= 'S '; + } elseif (strpos($border,'B') !== false) { // B + $s .= sprintf('%.2F %.2F m ', $xB, $yB); + $s .= sprintf('%.2F %.2F l ', $xL, $yL); + $s .= 'S '; + } + } + if (is_array($style) AND !empty($style)) { + // reset border style to previous value + $s .= "\n".$this->linestyleWidth.' '.$this->linestyleCap.' '.$this->linestyleJoin.' '.$this->linestyleDash.' '.$this->DrawColor."\n"; + } + } + return $s; + } + + /** + * This method allows printing text with line breaks. + * They can be automatic (as soon as the text reaches the right border of the cell) or explicit (via the \n character). As many cells as necessary are output, one below the other.
        + * Text can be aligned, centered or justified. The cell block can be framed and the background painted. + * @param $w (float) Width of cells. If 0, they extend up to the right margin of the page. + * @param $h (float) Cell minimum height. The cell extends automatically if needed. + * @param $txt (string) String to print + * @param $border (mixed) Indicates if borders must be drawn around the cell. The value can be a number:
        • 0: no border (default)
        • 1: frame
        or a string containing some or all of the following characters (in any order):
        • L: left
        • T: top
        • R: right
        • B: bottom
        or an array of line styles for each border group - for example: array('LTRB' => array('width' => 2, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0))) + * @param $align (string) Allows to center or align the text. Possible values are:
        • L or empty string: left align
        • C: center
        • R: right align
        • J: justification (default value when $ishtml=false)
        + * @param $fill (boolean) Indicates if the cell background must be painted (true) or transparent (false). + * @param $ln (int) Indicates where the current position should go after the call. Possible values are:
        • 0: to the right
        • 1: to the beginning of the next line [DEFAULT]
        • 2: below
        + * @param $x (float) x position in user units + * @param $y (float) y position in user units + * @param $reseth (boolean) if true reset the last cell height (default true). + * @param $stretch (int) font stretch mode:
        • 0 = disabled
        • 1 = horizontal scaling only if text is larger than cell width
        • 2 = forced horizontal scaling to fit cell width
        • 3 = character spacing only if text is larger than cell width
        • 4 = forced character spacing to fit cell width
        General font stretching and scaling values will be preserved when possible. + * @param $ishtml (boolean) set to true if $txt is HTML content (default = false). + * @param $autopadding (boolean) if true, uses internal padding and automatically adjust it to account for line width. + * @param $maxh (float) maximum height. It should be >= $h and less then remaining space to the bottom of the page, or 0 for disable this feature. This feature works only when $ishtml=false. + * @param $valign (string) Vertical alignment of text (requires $maxh = $h > 0). Possible values are:
        • T: TOP
        • M: middle
        • B: bottom
        . This feature works only when $ishtml=false. + * @param $fitcell (boolean) if true attempt to fit all the text within the cell by reducing the font size. + * @return int Return the number of cells or 1 for html mode. + * @public + * @since 1.3 + * @see SetFont(), SetDrawColor(), SetFillColor(), SetTextColor(), SetLineWidth(), Cell(), Write(), SetAutoPageBreak() + */ + public function MultiCell($w, $h, $txt, $border=0, $align='J', $fill=false, $ln=1, $x='', $y='', $reseth=true, $stretch=0, $ishtml=false, $autopadding=true, $maxh=0, $valign='T', $fitcell=false) { + $prev_cell_margin = $this->cell_margin; + $prev_cell_padding = $this->cell_padding; + // adjust internal padding + $this->adjustCellPadding($border); + $mc_padding = $this->cell_padding; + $mc_margin = $this->cell_margin; + $this->cell_padding['T'] = 0; + $this->cell_padding['B'] = 0; + $this->setCellMargins(0, 0, 0, 0); + if ($this->empty_string($this->lasth) OR $reseth) { + // reset row height + $this->resetLastH(); + } + if (!$this->empty_string($y)) { + $this->SetY($y); + } else { + $y = $this->GetY(); + } + $resth = 0; + if ((!$this->InFooter) AND (($y + $h + $mc_margin['T'] + $mc_margin['B']) > $this->PageBreakTrigger)) { + // spit cell in more pages/columns + $newh = $this->PageBreakTrigger - $y; + $resth = $h - $newh; // cell to be printed on the next page/column + $h = $newh; + } + // get current page number + $startpage = $this->page; + // get current column + $startcolumn = $this->current_column; + if (!$this->empty_string($x)) { + $this->SetX($x); + } else { + $x = $this->GetX(); + } + // check page for no-write regions and adapt page margins if necessary + $this->checkPageRegions(0, $x, $y); + // apply margins + $oy = $y + $mc_margin['T']; + if ($this->rtl) { + $ox = $this->w - $x - $mc_margin['R']; + } else { + $ox = $x + $mc_margin['L']; + } + $this->x = $ox; + $this->y = $oy; + // set width + if ($this->empty_string($w) OR ($w <= 0)) { + if ($this->rtl) { + $w = $this->x - $this->lMargin - $mc_margin['L']; + } else { + $w = $this->w - $this->x - $this->rMargin - $mc_margin['R']; + } + } + // store original margin values + $lMargin = $this->lMargin; + $rMargin = $this->rMargin; + if ($this->rtl) { + $this->rMargin = $this->w - $this->x; + $this->lMargin = $this->x - $w; + } else { + $this->lMargin = $this->x; + $this->rMargin = $this->w - $this->x - $w; + } + if ($autopadding) { + // add top padding + $this->y += $mc_padding['T']; + } + if ($ishtml) { // ******* Write HTML text + $this->writeHTML($txt, true, 0, $reseth, true, $align); + $nl = 1; + } else { // ******* Write simple text + // vertical alignment + if ($maxh > 0) { + // get text height + $text_height = $this->getStringHeight($w, $txt, $reseth, $autopadding, $mc_padding, $border); + if ($fitcell) { + $prev_FontSizePt = $this->FontSizePt; + // try to reduce font size to fit text on cell (use a quick search algorithm) + $fmin = 1; + $fmax = $this->FontSizePt; + $prev_text_height = $text_height; + $maxit = 100; // max number of iterations + while ($maxit > 0) { + $fmid = (($fmax + $fmin) / 2); + $this->SetFontSize($fmid, false); + $this->resetLastH(); + $text_height = $this->getStringHeight($w, $txt, $reseth, $autopadding, $mc_padding, $border); + if (($text_height == $maxh) OR (($text_height < $maxh) AND ($fmin >= ($fmax - 0.01)))) { + break; + } elseif ($text_height < $maxh) { + $fmin = $fmid; + } else { + $fmax = $fmid; + } + --$maxit; + } + $this->SetFontSize($this->FontSizePt); + } + if ($text_height < $maxh) { + if ($valign == 'M') { + // text vertically centered + $this->y += (($maxh - $text_height) / 2); + } elseif ($valign == 'B') { + // text vertically aligned on bottom + $this->y += ($maxh - $text_height); + } + } + } + $nl = $this->Write($this->lasth, $txt, '', 0, $align, true, $stretch, false, true, $maxh, 0, $mc_margin); + if ($fitcell) { + // restore font size + $this->SetFontSize($prev_FontSizePt); + } + } + if ($autopadding) { + // add bottom padding + $this->y += $mc_padding['B']; + } + // Get end-of-text Y position + $currentY = $this->y; + // get latest page number + $endpage = $this->page; + if ($resth > 0) { + $skip = ($endpage - $startpage); + $tmpresth = $resth; + while ($tmpresth > 0) { + if ($skip <= 0) { + // add a page (or trig AcceptPageBreak() for multicolumn mode) + $this->checkPageBreak($this->PageBreakTrigger + 1); + } + if ($this->num_columns > 1) { + $tmpresth -= ($this->h - $this->y - $this->bMargin); + } else { + $tmpresth -= ($this->h - $this->tMargin - $this->bMargin); + } + --$skip; + } + $currentY = $this->y; + $endpage = $this->page; + } + // get latest column + $endcolumn = $this->current_column; + if ($this->num_columns == 0) { + $this->num_columns = 1; + } + // get border modes + $border_start = $this->getBorderMode($border, $position='start'); + $border_end = $this->getBorderMode($border, $position='end'); + $border_middle = $this->getBorderMode($border, $position='middle'); + // design borders around HTML cells. + for ($page = $startpage; $page <= $endpage; ++$page) { // for each page + $ccode = ''; + $this->setPage($page); + if ($this->num_columns < 2) { + // single-column mode + $this->SetX($x); + $this->y = $this->tMargin; + } + // account for margin changes + if ($page > $startpage) { + if (($this->rtl) AND ($this->pagedim[$page]['orm'] != $this->pagedim[$startpage]['orm'])) { + $this->x -= ($this->pagedim[$page]['orm'] - $this->pagedim[$startpage]['orm']); + } elseif ((!$this->rtl) AND ($this->pagedim[$page]['olm'] != $this->pagedim[$startpage]['olm'])) { + $this->x += ($this->pagedim[$page]['olm'] - $this->pagedim[$startpage]['olm']); + } + } + if ($startpage == $endpage) { + // single page + for ($column = $startcolumn; $column <= $endcolumn; ++$column) { // for each column + $this->selectColumn($column); + if ($this->rtl) { + $this->x -= $mc_margin['R']; + } else { + $this->x += $mc_margin['L']; + } + if ($startcolumn == $endcolumn) { // single column + $cborder = $border; + $h = max($h, ($currentY - $oy)); + $this->y = $oy; + } elseif ($column == $startcolumn) { // first column + $cborder = $border_start; + $this->y = $oy; + $h = $this->h - $this->y - $this->bMargin; + } elseif ($column == $endcolumn) { // end column + $cborder = $border_end; + $h = $currentY - $this->y; + if ($resth > $h) { + $h = $resth; + } + } else { // middle column + $cborder = $border_middle; + $h = $this->h - $this->y - $this->bMargin; + $resth -= $h; + } + $ccode .= $this->getCellCode($w, $h, '', $cborder, 1, '', $fill, '', 0, true)."\n"; + } // end for each column + } elseif ($page == $startpage) { // first page + for ($column = $startcolumn; $column < $this->num_columns; ++$column) { // for each column + $this->selectColumn($column); + if ($this->rtl) { + $this->x -= $mc_margin['R']; + } else { + $this->x += $mc_margin['L']; + } + if ($column == $startcolumn) { // first column + $cborder = $border_start; + $this->y = $oy; + $h = $this->h - $this->y - $this->bMargin; + } else { // middle column + $cborder = $border_middle; + $h = $this->h - $this->y - $this->bMargin; + $resth -= $h; + } + $ccode .= $this->getCellCode($w, $h, '', $cborder, 1, '', $fill, '', 0, true)."\n"; + } // end for each column + } elseif ($page == $endpage) { // last page + for ($column = 0; $column <= $endcolumn; ++$column) { // for each column + $this->selectColumn($column); + if ($this->rtl) { + $this->x -= $mc_margin['R']; + } else { + $this->x += $mc_margin['L']; + } + if ($column == $endcolumn) { + // end column + $cborder = $border_end; + $h = $currentY - $this->y; + if ($resth > $h) { + $h = $resth; + } + } else { + // middle column + $cborder = $border_middle; + $h = $this->h - $this->y - $this->bMargin; + $resth -= $h; + } + $ccode .= $this->getCellCode($w, $h, '', $cborder, 1, '', $fill, '', 0, true)."\n"; + } // end for each column + } else { // middle page + for ($column = 0; $column < $this->num_columns; ++$column) { // for each column + $this->selectColumn($column); + if ($this->rtl) { + $this->x -= $mc_margin['R']; + } else { + $this->x += $mc_margin['L']; + } + $cborder = $border_middle; + $h = $this->h - $this->y - $this->bMargin; + $resth -= $h; + $ccode .= $this->getCellCode($w, $h, '', $cborder, 1, '', $fill, '', 0, true)."\n"; + } // end for each column + } + if ($cborder OR $fill) { + // draw border and fill + if ($this->inxobj) { + // we are inside an XObject template + if (end($this->xobjects[$this->xobjid]['transfmrk']) !== false) { + $pagemarkkey = key($this->xobjects[$this->xobjid]['transfmrk']); + $pagemark = &$this->xobjects[$this->xobjid]['transfmrk'][$pagemarkkey]; + } else { + $pagemark = &$this->xobjects[$this->xobjid]['intmrk']; + } + $pagebuff = $this->xobjects[$this->xobjid]['outdata']; + $pstart = substr($pagebuff, 0, $pagemark); + $pend = substr($pagebuff, $pagemark); + $this->xobjects[$this->xobjid]['outdata'] = $pstart.$ccode.$pend; + $pagemark += strlen($ccode); + } else { + if (end($this->transfmrk[$this->page]) !== false) { + $pagemarkkey = key($this->transfmrk[$this->page]); + $pagemark = &$this->transfmrk[$this->page][$pagemarkkey]; + } elseif ($this->InFooter) { + $pagemark = &$this->footerpos[$this->page]; + } else { + $pagemark = &$this->intmrk[$this->page]; + } + $pagebuff = $this->getPageBuffer($this->page); + $pstart = substr($pagebuff, 0, $pagemark); + $pend = substr($pagebuff, $pagemark); + $this->setPageBuffer($this->page, $pstart.$ccode.$pend); + $pagemark += strlen($ccode); + } + } + } // end for each page + // Get end-of-cell Y position + $currentY = $this->GetY(); + // restore original margin values + $this->SetLeftMargin($lMargin); + $this->SetRightMargin($rMargin); + if ($ln > 0) { + //Go to the beginning of the next line + $this->SetY($currentY + $mc_margin['B']); + if ($ln == 2) { + $this->SetX($x + $w + $mc_margin['L'] + $mc_margin['R']); + } + } else { + // go left or right by case + $this->setPage($startpage); + $this->y = $y; + $this->SetX($x + $w + $mc_margin['L'] + $mc_margin['R']); + } + $this->setContentMark(); + $this->cell_padding = $prev_cell_padding; + $this->cell_margin = $prev_cell_margin; + return $nl; + } + + /** + * Get the border mode accounting for multicell position (opens bottom side of multicell crossing pages) + * @param $brd (mixed) Indicates if borders must be drawn around the cell block. The value can be a number:
        • 0: no border (default)
        • 1: frame
        or a string containing some or all of the following characters (in any order):
        • L: left
        • T: top
        • R: right
        • B: bottom
        or an array of line styles for each border group: array('LTRB' => array('width' => 2, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0))) + * @param $position (string) multicell position: 'start', 'middle', 'end' + * @return border mode array + * @protected + * @since 4.4.002 (2008-12-09) + */ + protected function getBorderMode($brd, $position='start') { + if ((!$this->opencell) OR empty($brd)) { + return $brd; + } + if ($brd == 1) { + $brd = 'LTRB'; + } + if (is_string($brd)) { + // convert string to array + $slen = strlen($brd); + $newbrd = array(); + for ($i = 0; $i < $slen; ++$i) { + $newbrd[$brd{$i}] = array('cap' => 'square', 'join' => 'miter'); + } + $brd = $newbrd; + } + foreach ($brd as $border => $style) { + switch ($position) { + case 'start': { + if (strpos($border, 'B') !== false) { + // remove bottom line + $newkey = str_replace('B', '', $border); + if (strlen($newkey) > 0) { + $brd[$newkey] = $style; + } + unset($brd[$border]); + } + break; + } + case 'middle': { + if (strpos($border, 'B') !== false) { + // remove bottom line + $newkey = str_replace('B', '', $border); + if (strlen($newkey) > 0) { + $brd[$newkey] = $style; + } + unset($brd[$border]); + $border = $newkey; + } + if (strpos($border, 'T') !== false) { + // remove bottom line + $newkey = str_replace('T', '', $border); + if (strlen($newkey) > 0) { + $brd[$newkey] = $style; + } + unset($brd[$border]); + } + break; + } + case 'end': { + if (strpos($border, 'T') !== false) { + // remove bottom line + $newkey = str_replace('T', '', $border); + if (strlen($newkey) > 0) { + $brd[$newkey] = $style; + } + unset($brd[$border]); + } + break; + } + } + } + return $brd; + } + + /** + * This method return the estimated number of lines for print a simple text string using Multicell() method. + * @param $txt (string) String for calculating his height + * @param $w (float) Width of cells. If 0, they extend up to the right margin of the page. + * @param $reseth (boolean) if true reset the last cell height (default false). + * @param $autopadding (boolean) if true, uses internal padding and automatically adjust it to account for line width (default true). + * @param $cellpadding (float) Internal cell padding, if empty uses default cell padding. + * @param $border (mixed) Indicates if borders must be drawn around the cell. The value can be a number:
        • 0: no border (default)
        • 1: frame
        or a string containing some or all of the following characters (in any order):
        • L: left
        • T: top
        • R: right
        • B: bottom
        or an array of line styles for each border group - for example: array('LTRB' => array('width' => 2, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0))) + * @return float Return the minimal height needed for multicell method for printing the $txt param. + * @author Alexander Escalona Fernández, Nicola Asuni + * @public + * @since 4.5.011 + */ + public function getNumLines($txt, $w=0, $reseth=false, $autopadding=true, $cellpadding='', $border=0) { + if ($txt === '') { + // empty string + return 1; + } + // adjust internal padding + $prev_cell_padding = $this->cell_padding; + $prev_lasth = $this->lasth; + if (is_array($cellpadding)) { + $this->cell_padding = $cellpadding; + } + $this->adjustCellPadding($border); + if ($this->empty_string($w) OR ($w <= 0)) { + if ($this->rtl) { + $w = $this->x - $this->lMargin; + } else { + $w = $this->w - $this->rMargin - $this->x; + } + } + $wmax = $w - $this->cell_padding['L'] - $this->cell_padding['R']; + if ($reseth) { + // reset row height + $this->resetLastH(); + } + $lines = 1; + $sum = 0; + $chars = $this->utf8Bidi($this->UTF8StringToArray($txt), $txt, $this->tmprtl); + $charsWidth = $this->GetArrStringWidth($chars, '', '', 0, true); + $length = count($chars); + $lastSeparator = -1; + for ($i = 0; $i < $length; ++$i) { + $charWidth = $charsWidth[$i]; + if (preg_match($this->re_spaces, $this->unichr($chars[$i]))) { + $lastSeparator = $i; + } + if ((($sum + $charWidth) > $wmax) OR ($chars[$i] == 10)) { + ++$lines; + if ($lastSeparator != -1) { + $i = $lastSeparator; + $lastSeparator = -1; + $sum = 0; + } else { + $sum = $charWidth; + } + } else { + $sum += $charWidth; + } + } + if ($chars[($length - 1)] == 10) { + --$lines; + } + $this->cell_padding = $prev_cell_padding; + $this->lasth = $prev_lasth; + return $lines; + } + + /** + * This method return the estimated needed height for print a simple text string in Multicell() method. + * Generally, if you want to know the exact height for a block of content you can use the following alternative technique: + * @pre + * // store current object + * $pdf->startTransaction(); + * // store starting values + * $start_y = $pdf->GetY(); + * $start_page = $pdf->getPage(); + * // call your printing functions with your parameters + * // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + * $pdf->MultiCell($w=0, $h=0, $txt, $border=1, $align='L', $fill=false, $ln=1, $x='', $y='', $reseth=true, $stretch=0, $ishtml=false, $autopadding=true, $maxh=0); + * // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + * // get the new Y + * $end_y = $pdf->GetY(); + * $end_page = $pdf->getPage(); + * // calculate height + * $height = 0; + * if ($end_page == $start_page) { + * $height = $end_y - $start_y; + * } else { + * for ($page=$start_page; $page <= $end_page; ++$page) { + * $this->setPage($page); + * if ($page == $start_page) { + * // first page + * $height = $this->h - $start_y - $this->bMargin; + * } elseif ($page == $end_page) { + * // last page + * $height = $end_y - $this->tMargin; + * } else { + * $height = $this->h - $this->tMargin - $this->bMargin; + * } + * } + * } + * // restore previous object + * $pdf = $pdf->rollbackTransaction(); + * + * @param $w (float) Width of cells. If 0, they extend up to the right margin of the page. + * @param $txt (string) String for calculating his height + * @param $reseth (boolean) if true reset the last cell height (default false). + * @param $autopadding (boolean) if true, uses internal padding and automatically adjust it to account for line width (default true). + * @param $cellpadding (float) Internal cell padding, if empty uses default cell padding. + * @param $border (mixed) Indicates if borders must be drawn around the cell. The value can be a number:
        • 0: no border (default)
        • 1: frame
        or a string containing some or all of the following characters (in any order):
        • L: left
        • T: top
        • R: right
        • B: bottom
        or an array of line styles for each border group - for example: array('LTRB' => array('width' => 2, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0))) + * @return float Return the minimal height needed for multicell method for printing the $txt param. + * @author Nicola Asuni, Alexander Escalona Fernández + * @public + */ + public function getStringHeight($w, $txt, $reseth=false, $autopadding=true, $cellpadding='', $border=0) { + // adjust internal padding + $prev_cell_padding = $this->cell_padding; + $prev_lasth = $this->lasth; + if (is_array($cellpadding)) { + $this->cell_padding = $cellpadding; + } + $this->adjustCellPadding($border); + $lines = $this->getNumLines($txt, $w, $reseth, $autopadding, $cellpadding, $border); + $height = $lines * ($this->FontSize * $this->cell_height_ratio); + if ($autopadding) { + // add top and bottom padding + $height += ($this->cell_padding['T'] + $this->cell_padding['B']); + } + $this->cell_padding = $prev_cell_padding; + $this->lasth = $prev_lasth; + return $height; + } + + /** + * This method prints text from the current position.
        + * @param $h (float) Line height + * @param $txt (string) String to print + * @param $link (mixed) URL or identifier returned by AddLink() + * @param $fill (boolean) Indicates if the cell background must be painted (true) or transparent (false). + * @param $align (string) Allows to center or align the text. Possible values are:
        • L or empty string: left align (default value)
        • C: center
        • R: right align
        • J: justify
        + * @param $ln (boolean) if true set cursor at the bottom of the line, otherwise set cursor at the top of the line. + * @param $stretch (int) font stretch mode:
        • 0 = disabled
        • 1 = horizontal scaling only if text is larger than cell width
        • 2 = forced horizontal scaling to fit cell width
        • 3 = character spacing only if text is larger than cell width
        • 4 = forced character spacing to fit cell width
        General font stretching and scaling values will be preserved when possible. + * @param $firstline (boolean) if true prints only the first line and return the remaining string. + * @param $firstblock (boolean) if true the string is the starting of a line. + * @param $maxh (float) maximum height. The remaining unprinted text will be returned. It should be >= $h and less then remaining space to the bottom of the page, or 0 for disable this feature. + * @param $wadj (float) first line width will be reduced by this amount (used in HTML mode). + * @param $margin (array) margin array of the parent container + * @return mixed Return the number of cells or the remaining string if $firstline = true. + * @public + * @since 1.5 + */ + public function Write($h, $txt, $link='', $fill=false, $align='', $ln=false, $stretch=0, $firstline=false, $firstblock=false, $maxh=0, $wadj=0, $margin='') { + // check page for no-write regions and adapt page margins if necessary + $this->checkPageRegions($h, $this->x, $this->y); + if (strlen($txt) == 0) { + // fix empty text + $txt = ' '; + } + if ($margin === '') { + // set default margins + $margin = $this->cell_margin; + } + // remove carriage returns + $s = str_replace("\r", '', $txt); + // check if string contains arabic text + if (preg_match($this->unicode->uni_RE_PATTERN_ARABIC, $s)) { + $arabic = true; + } else { + $arabic = false; + } + // check if string contains RTL text + if ($arabic OR ($this->tmprtl == 'R') OR preg_match($this->unicode->uni_RE_PATTERN_RTL, $s)) { + $rtlmode = true; + } else { + $rtlmode = false; + } + // get a char width + $chrwidth = $this->GetCharWidth('.'); + // get array of unicode values + $chars = $this->UTF8StringToArray($s); + // get array of chars + $uchars = $this->UTF8ArrayToUniArray($chars); + // get the number of characters + $nb = count($chars); + // replacement for SHY character (minus symbol) + $shy_replacement = 45; + $shy_replacement_char = $this->unichr($shy_replacement); + // widht for SHY replacement + $shy_replacement_width = $this->GetCharWidth($shy_replacement); + // max Y + $maxy = $this->y + $maxh - $h - $this->cell_padding['T'] - $this->cell_padding['B']; + // calculate remaining line width ($w) + if ($this->rtl) { + $w = $this->x - $this->lMargin; + } else { + $w = $this->w - $this->rMargin - $this->x; + } + // max column width + $wmax = $w - $wadj; + if (!$firstline) { + $wmax -= ($this->cell_padding['L'] + $this->cell_padding['R']); + } + if ((!$firstline) AND (($chrwidth > $wmax) OR ($this->GetCharWidth($chars[0]) > $wmax))) { + // a single character do not fit on column + return ''; + } + // minimum row height + $row_height = max($h, $this->FontSize * $this->cell_height_ratio); + $start_page = $this->page; + $i = 0; // character position + $j = 0; // current starting position + $sep = -1; // position of the last blank space + $shy = false; // true if the last blank is a soft hypen (SHY) + $l = 0; // current string length + $nl = 0; //number of lines + $linebreak = false; + $pc = 0; // previous character + // for each character + while ($i < $nb) { + if (($maxh > 0) AND ($this->y >= $maxy) ) { + break; + } + //Get the current character + $c = $chars[$i]; + if ($c == 10) { // 10 = "\n" = new line + //Explicit line break + if ($align == 'J') { + if ($this->rtl) { + $talign = 'R'; + } else { + $talign = 'L'; + } + } else { + $talign = $align; + } + $tmpstr = $this->UniArrSubString($uchars, $j, $i); + if ($firstline) { + $startx = $this->x; + $tmparr = array_slice($chars, $j, ($i - $j)); + if ($rtlmode) { + $tmparr = $this->utf8Bidi($tmparr, $tmpstr, $this->tmprtl); + } + $linew = $this->GetArrStringWidth($tmparr); + unset($tmparr); + if ($this->rtl) { + $this->endlinex = $startx - $linew; + } else { + $this->endlinex = $startx + $linew; + } + $w = $linew; + $tmpcellpadding = $this->cell_padding; + if ($maxh == 0) { + $this->SetCellPadding(0); + } + } + if ($firstblock AND $this->isRTLTextDir()) { + $tmpstr = $this->stringRightTrim($tmpstr); + } + // Skip newlines at the begining of a page or column + if (!empty($tmpstr) OR ($this->y < ($this->PageBreakTrigger - $row_height))) { + $this->Cell($w, $h, $tmpstr, 0, 1, $talign, $fill, $link, $stretch); + } + unset($tmpstr); + if ($firstline) { + $this->cell_padding = $tmpcellpadding; + return ($this->UniArrSubString($uchars, $i)); + } + ++$nl; + $j = $i + 1; + $l = 0; + $sep = -1; + $shy = false; + // account for margin changes + if ((($this->y + $this->lasth) > $this->PageBreakTrigger) AND (!$this->InFooter)) { + $this->AcceptPageBreak(); + if ($this->rtl) { + $this->x -= $margin['R']; + } else { + $this->x += $margin['L']; + } + $this->lMargin += $margin['L']; + $this->rMargin += $margin['R']; + } + $w = $this->getRemainingWidth(); + $wmax = $w - $this->cell_padding['L'] - $this->cell_padding['R']; + } else { + // 160 is the non-breaking space. + // 173 is SHY (Soft Hypen). + // \p{Z} or \p{Separator}: any kind of Unicode whitespace or invisible separator. + // \p{Lo} or \p{Other_Letter}: a Unicode letter or ideograph that does not have lowercase and uppercase variants. + // \p{Lo} is needed because Chinese characters are packed next to each other without spaces in between. + if (($c != 160) AND (($c == 173) OR preg_match($this->re_spaces, $this->unichr($c)))) { + // update last blank space position + $sep = $i; + // check if is a SHY + if ($c == 173) { + $shy = true; + if ($pc == 45) { + $tmp_shy_replacement_width = 0; + $tmp_shy_replacement_char = ''; + } else { + $tmp_shy_replacement_width = $shy_replacement_width; + $tmp_shy_replacement_char = $shy_replacement_char; + } + } else { + $shy = false; + } + } + // update string length + if ($this->isUnicodeFont() AND ($arabic)) { + // with bidirectional algorithm some chars may be changed affecting the line length + // *** very slow *** + $l = $this->GetArrStringWidth($this->utf8Bidi(array_slice($chars, $j, ($i - $j)), '', $this->tmprtl)); + } else { + $l += $this->GetCharWidth($c); + } + if (($l > $wmax) OR (($c == 173) AND (($l + $tmp_shy_replacement_width) > $wmax)) ) { + // we have reached the end of column + if ($sep == -1) { + // check if the line was already started + if (($this->rtl AND ($this->x <= ($this->w - $this->rMargin - $chrwidth))) + OR ((!$this->rtl) AND ($this->x >= ($this->lMargin + $chrwidth)))) { + // print a void cell and go to next line + $this->Cell($w, $h, '', 0, 1); + $linebreak = true; + if ($firstline) { + return ($this->UniArrSubString($uchars, $j)); + } + } else { + // truncate the word because do not fit on column + $tmpstr = $this->UniArrSubString($uchars, $j, $i); + if ($firstline) { + $startx = $this->x; + $tmparr = array_slice($chars, $j, ($i - $j)); + if ($rtlmode) { + $tmparr = $this->utf8Bidi($tmparr, $tmpstr, $this->tmprtl); + } + $linew = $this->GetArrStringWidth($tmparr); + unset($tmparr); + if ($this->rtl) { + $this->endlinex = $startx - $linew; + } else { + $this->endlinex = $startx + $linew; + } + $w = $linew; + $tmpcellpadding = $this->cell_padding; + if ($maxh == 0) { + $this->SetCellPadding(0); + } + } + if ($firstblock AND $this->isRTLTextDir()) { + $tmpstr = $this->stringRightTrim($tmpstr); + } + $this->Cell($w, $h, $tmpstr, 0, 1, $align, $fill, $link, $stretch); + unset($tmpstr); + if ($firstline) { + $this->cell_padding = $tmpcellpadding; + return ($this->UniArrSubString($uchars, $i)); + } + $j = $i; + --$i; + } + } else { + // word wrapping + if ($this->rtl AND (!$firstblock) AND ($sep < $i)) { + $endspace = 1; + } else { + $endspace = 0; + } + if ($shy) { + // add hypen (minus symbol) at the end of the line + $shy_width = $tmp_shy_replacement_width; + if ($this->rtl) { + $shy_char_left = $tmp_shy_replacement_char; + $shy_char_right = ''; + } else { + $shy_char_left = ''; + $shy_char_right = $tmp_shy_replacement_char; + } + } else { + $shy_width = 0; + $shy_char_left = ''; + $shy_char_right = ''; + } + $tmpstr = $this->UniArrSubString($uchars, $j, ($sep + $endspace)); + if ($firstline) { + $startx = $this->x; + $tmparr = array_slice($chars, $j, (($sep + $endspace) - $j)); + if ($rtlmode) { + $tmparr = $this->utf8Bidi($tmparr, $tmpstr, $this->tmprtl); + } + $linew = $this->GetArrStringWidth($tmparr); + unset($tmparr); + if ($this->rtl) { + $this->endlinex = $startx - $linew - $shy_width; + } else { + $this->endlinex = $startx + $linew + $shy_width; + } + $w = $linew; + $tmpcellpadding = $this->cell_padding; + if ($maxh == 0) { + $this->SetCellPadding(0); + } + } + // print the line + if ($firstblock AND $this->isRTLTextDir()) { + $tmpstr = $this->stringRightTrim($tmpstr); + } + $this->Cell($w, $h, $shy_char_left.$tmpstr.$shy_char_right, 0, 1, $align, $fill, $link, $stretch); + unset($tmpstr); + if ($firstline) { + // return the remaining text + $this->cell_padding = $tmpcellpadding; + return ($this->UniArrSubString($uchars, ($sep + $endspace))); + } + $i = $sep; + $sep = -1; + $shy = false; + $j = ($i+1); + } + // account for margin changes + if ((($this->y + $this->lasth) > $this->PageBreakTrigger) AND (!$this->InFooter)) { + $this->AcceptPageBreak(); + if ($this->rtl) { + $this->x -= $margin['R']; + } else { + $this->x += $margin['L']; + } + $this->lMargin += $margin['L']; + $this->rMargin += $margin['R']; + } + $w = $this->getRemainingWidth(); + $wmax = $w - $this->cell_padding['L'] - $this->cell_padding['R']; + if ($linebreak) { + $linebreak = false; + } else { + ++$nl; + $l = 0; + } + } + } + // save last character + $pc = $c; + ++$i; + } // end while i < nb + // print last substring (if any) + if ($l > 0) { + switch ($align) { + case 'J': + case 'C': { + $w = $w; + break; + } + case 'L': { + if ($this->rtl) { + $w = $w; + } else { + $w = $l; + } + break; + } + case 'R': { + if ($this->rtl) { + $w = $l; + } else { + $w = $w; + } + break; + } + default: { + $w = $l; + break; + } + } + $tmpstr = $this->UniArrSubString($uchars, $j, $nb); + if ($firstline) { + $startx = $this->x; + $tmparr = array_slice($chars, $j, ($nb - $j)); + if ($rtlmode) { + $tmparr = $this->utf8Bidi($tmparr, $tmpstr, $this->tmprtl); + } + $linew = $this->GetArrStringWidth($tmparr); + unset($tmparr); + if ($this->rtl) { + $this->endlinex = $startx - $linew; + } else { + $this->endlinex = $startx + $linew; + } + $w = $linew; + $tmpcellpadding = $this->cell_padding; + if ($maxh == 0) { + $this->SetCellPadding(0); + } + } + if ($firstblock AND $this->isRTLTextDir()) { + $tmpstr = $this->stringRightTrim($tmpstr); + } + $this->Cell($w, $h, $tmpstr, 0, $ln, $align, $fill, $link, $stretch); + unset($tmpstr); + if ($firstline) { + $this->cell_padding = $tmpcellpadding; + return ($this->UniArrSubString($uchars, $nb)); + } + ++$nl; + } + if ($firstline) { + return ''; + } + return $nl; + } + + /** + * Returns the remaining width between the current position and margins. + * @return int Return the remaining width + * @protected + */ + protected function getRemainingWidth() { + $this->checkPageRegions(0, $this->x, $this->y); + if ($this->rtl) { + return ($this->x - $this->lMargin); + } else { + return ($this->w - $this->rMargin - $this->x); + } + } + + /** + * Extract a slice of the $strarr array and return it as string. + * @param $strarr (string) The input array of characters. + * @param $start (int) the starting element of $strarr. + * @param $end (int) first element that will not be returned. + * @return Return part of a string + * @public + */ + public function UTF8ArrSubString($strarr, $start='', $end='') { + if (strlen($start) == 0) { + $start = 0; + } + if (strlen($end) == 0) { + $end = count($strarr); + } + $string = ''; + for ($i=$start; $i < $end; ++$i) { + $string .= $this->unichr($strarr[$i]); + } + return $string; + } + + /** + * Extract a slice of the $uniarr array and return it as string. + * @param $uniarr (string) The input array of characters. + * @param $start (int) the starting element of $strarr. + * @param $end (int) first element that will not be returned. + * @return Return part of a string + * @public + * @since 4.5.037 (2009-04-07) + */ + public function UniArrSubString($uniarr, $start='', $end='') { + if (strlen($start) == 0) { + $start = 0; + } + if (strlen($end) == 0) { + $end = count($uniarr); + } + $string = ''; + for ($i=$start; $i < $end; ++$i) { + $string .= $uniarr[$i]; + } + return $string; + } + + /** + * Convert an array of UTF8 values to array of unicode characters + * @param $ta (string) The input array of UTF8 values. + * @return Return array of unicode characters + * @public + * @since 4.5.037 (2009-04-07) + */ + public function UTF8ArrayToUniArray($ta) { + return array_map(array($this, 'unichr'), $ta); + } + + /** + * Returns the unicode caracter specified by UTF-8 value + * @param $c (int) UTF-8 value + * @return Returns the specified character. + * @author Miguel Perez, Nicola Asuni + * @public + * @since 2.3.000 (2008-03-05) + */ + public function unichr($c) { + if (!$this->isunicode) { + return chr($c); + } elseif ($c <= 0x7F) { + // one byte + return chr($c); + } elseif ($c <= 0x7FF) { + // two bytes + return chr(0xC0 | $c >> 6).chr(0x80 | $c & 0x3F); + } elseif ($c <= 0xFFFF) { + // three bytes + return chr(0xE0 | $c >> 12).chr(0x80 | $c >> 6 & 0x3F).chr(0x80 | $c & 0x3F); + } elseif ($c <= 0x10FFFF) { + // four bytes + return chr(0xF0 | $c >> 18).chr(0x80 | $c >> 12 & 0x3F).chr(0x80 | $c >> 6 & 0x3F).chr(0x80 | $c & 0x3F); + } else { + return ''; + } + } + + /** + * Return the image type given the file name or array returned by getimagesize() function. + * @param $imgfile (string) image file name + * @param $iminfo (array) array of image information returned by getimagesize() function. + * @return string image type + * @since 4.8.017 (2009-11-27) + */ + public function getImageFileType($imgfile, $iminfo=array()) { + $type = ''; + if (isset($iminfo['mime']) AND !empty($iminfo['mime'])) { + $mime = explode('/', $iminfo['mime']); + if ((count($mime) > 1) AND ($mime[0] == 'image') AND (!empty($mime[1]))) { + $type = strtolower(trim($mime[1])); + } + } + if (empty($type)) { + $fileinfo = pathinfo($imgfile); + if (isset($fileinfo['extension']) AND (!$this->empty_string($fileinfo['extension']))) { + $type = strtolower(trim($fileinfo['extension'])); + } + } + if ($type == 'jpg') { + $type = 'jpeg'; + } + return $type; + } + + /** + * Set the block dimensions accounting for page breaks and page/column fitting + * @param $w (float) width + * @param $h (float) height + * @param $x (float) X coordinate + * @param $y (float) Y coodiante + * @param $fitonpage (boolean) if true the block is resized to not exceed page dimensions. + * @protected + * @since 5.5.009 (2010-07-05) + */ + protected function fitBlock(&$w, &$h, &$x, &$y, $fitonpage=false) { + if ($w <= 0) { + // set maximum width + $w = ($this->w - $this->lMargin - $this->rMargin); + } + if ($h <= 0) { + // set maximum height + $h = ($this->PageBreakTrigger - $this->tMargin); + } + // resize the block to be vertically contained on a single page or single column + if ($fitonpage OR $this->AutoPageBreak) { + $ratio_wh = ($w / $h); + if ($h > ($this->PageBreakTrigger - $this->tMargin)) { + $h = $this->PageBreakTrigger - $this->tMargin; + $w = ($h * $ratio_wh); + } + // resize the block to be horizontally contained on a single page or single column + if ($fitonpage) { + $maxw = ($this->w - $this->lMargin - $this->rMargin); + if ($w > $maxw) { + $w = $maxw; + $h = ($w / $ratio_wh); + } + } + } + // Check whether we need a new page or new column first as this does not fit + $prev_x = $this->x; + $prev_y = $this->y; + if ($this->checkPageBreak($h, $y) OR ($this->y < $prev_y)) { + $y = $this->y; + if ($this->rtl) { + $x += ($prev_x - $this->x); + } else { + $x += ($this->x - $prev_x); + } + } + // resize the block to be contained on the remaining available page or column space + if ($fitonpage) { + $ratio_wh = ($w / $h); + if (($y + $h) > $this->PageBreakTrigger) { + $h = $this->PageBreakTrigger - $y; + $w = ($h * $ratio_wh); + } + if ((!$this->rtl) AND (($x + $w) > ($this->w - $this->rMargin))) { + $w = $this->w - $this->rMargin - $x; + $h = ($w / $ratio_wh); + } elseif (($this->rtl) AND (($x - $w) < ($this->lMargin))) { + $w = $x - $this->lMargin; + $h = ($w / $ratio_wh); + } + } + } + + /** + * Puts an image in the page. + * The upper-left corner must be given. + * The dimensions can be specified in different ways:
          + *
        • explicit width and height (expressed in user unit)
        • + *
        • one explicit dimension, the other being calculated automatically in order to keep the original proportions
        • + *
        • no explicit dimension, in which case the image is put at 72 dpi
        + * Supported formats are JPEG and PNG images whitout GD library and all images supported by GD: GD, GD2, GD2PART, GIF, JPEG, PNG, BMP, XBM, XPM; + * The format can be specified explicitly or inferred from the file extension.
        + * It is possible to put a link on the image.
        + * Remark: if an image is used several times, only one copy will be embedded in the file.
        + * @param $file (string) Name of the file containing the image or a '@' character followed by the image data string. + * @param $x (float) Abscissa of the upper-left corner (LTR) or upper-right corner (RTL). + * @param $y (float) Ordinate of the upper-left corner (LTR) or upper-right corner (RTL). + * @param $w (float) Width of the image in the page. If not specified or equal to zero, it is automatically calculated. + * @param $h (float) Height of the image in the page. If not specified or equal to zero, it is automatically calculated. + * @param $type (string) Image format. Possible values are (case insensitive): JPEG and PNG (whitout GD library) and all images supported by GD: GD, GD2, GD2PART, GIF, JPEG, PNG, BMP, XBM, XPM;. If not specified, the type is inferred from the file extension. + * @param $link (mixed) URL or identifier returned by AddLink(). + * @param $align (string) Indicates the alignment of the pointer next to image insertion relative to image height. The value can be:
        • T: top-right for LTR or top-left for RTL
        • M: middle-right for LTR or middle-left for RTL
        • B: bottom-right for LTR or bottom-left for RTL
        • N: next line
        + * @param $resize (mixed) If true resize (reduce) the image to fit $w and $h (requires GD or ImageMagick library); if false do not resize; if 2 force resize in all cases (upscaling and downscaling). + * @param $dpi (int) dot-per-inch resolution used on resize + * @param $palign (string) Allows to center or align the image on the current line. Possible values are:
        • L : left align
        • C : center
        • R : right align
        • '' : empty string : left for LTR or right for RTL
        + * @param $ismask (boolean) true if this image is a mask, false otherwise + * @param $imgmask (mixed) image object returned by this function or false + * @param $border (mixed) Indicates if borders must be drawn around the cell. The value can be a number:
        • 0: no border (default)
        • 1: frame
        or a string containing some or all of the following characters (in any order):
        • L: left
        • T: top
        • R: right
        • B: bottom
        or an array of line styles for each border group - for example: array('LTRB' => array('width' => 2, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0))) + * @param $fitbox (mixed) If not false scale image dimensions proportionally to fit within the ($w, $h) box. $fitbox can be true or a 2 characters string indicating the image alignment inside the box. The first character indicate the horizontal alignment (L = left, C = center, R = right) the second character indicate the vertical algnment (T = top, M = middle, B = bottom). + * @param $hidden (boolean) if true do not display the image. + * @param $fitonpage (boolean) if true the image is resized to not exceed page dimensions. + * @return image information + * @public + * @since 1.1 + */ + public function Image($file, $x='', $y='', $w=0, $h=0, $type='', $link='', $align='', $resize=false, $dpi=300, $palign='', $ismask=false, $imgmask=false, $border=0, $fitbox=false, $hidden=false, $fitonpage=false) { + if ($x === '') { + $x = $this->x; + } + if ($y === '') { + $y = $this->y; + } + // check page for no-write regions and adapt page margins if necessary + $this->checkPageRegions($h, $x, $y); + $cached_file = false; // true when the file is cached + // check if we are passing an image as file or string + if ($file{0} === '@') { // image from string + $imgdata = substr($file, 1); + $file = tempnam(K_PATH_CACHE, 'img_'); + $fp = fopen($file, 'w'); + fwrite($fp, $imgdata); + fclose($fp); + unset($imgdata); + $cached_file = true; + $imsize = @getimagesize($file); + if ($imsize === FALSE) { + unlink($file); + $cached_file = false; + } + } else { // image file + // check if is local file + if (!@file_exists($file)) { + // encode spaces on filename (file is probably an URL) + $file = str_replace(' ', '%20', $file); + } + // get image dimensions + $imsize = @getimagesize($file); + if ($imsize === FALSE) { + if (function_exists('curl_init')) { + // try to get remote file data using cURL + $cs = curl_init(); // curl session + curl_setopt($cs, CURLOPT_URL, $file); + curl_setopt($cs, CURLOPT_BINARYTRANSFER, true); + curl_setopt($cs, CURLOPT_FAILONERROR, true); + curl_setopt($cs, CURLOPT_RETURNTRANSFER, true); + curl_setopt($cs, CURLOPT_CONNECTTIMEOUT, 5); + curl_setopt($cs, CURLOPT_TIMEOUT, 30); + $imgdata = curl_exec($cs); + curl_close($cs); + if($imgdata !== FALSE) { + // copy image to cache + $file = tempnam(K_PATH_CACHE, 'img_'); + $fp = fopen($file, 'w'); + fwrite($fp, $imgdata); + fclose($fp); + unset($imgdata); + $cached_file = true; + $imsize = @getimagesize($file); + if ($imsize === FALSE) { + unlink($file); + $cached_file = false; + } + } + } elseif (($w > 0) AND ($h > 0)) { + // get measures from specified data + $pw = $this->getHTMLUnitToUnits($w, 0, $this->pdfunit, true) * $this->imgscale * $this->k; + $ph = $this->getHTMLUnitToUnits($h, 0, $this->pdfunit, true) * $this->imgscale * $this->k; + $imsize = array($pw, $ph); + } + } + } + if ($imsize === FALSE) { + $this->Error('[Image] Unable to get image: '.$file); + } + // get original image width and height in pixels + list($pixw, $pixh) = $imsize; + // calculate image width and height on document + if (($w <= 0) AND ($h <= 0)) { + // convert image size to document unit + $w = $this->pixelsToUnits($pixw); + $h = $this->pixelsToUnits($pixh); + } elseif ($w <= 0) { + $w = $h * $pixw / $pixh; + } elseif ($h <= 0) { + $h = $w * $pixh / $pixw; + } elseif (($fitbox !== false) AND ($w > 0) AND ($h > 0)) { + if (strlen($fitbox) !== 2) { + // set default alignment + $fitbox = '--'; + } + // scale image dimensions proportionally to fit within the ($w, $h) box + if ((($w * $pixh) / ($h * $pixw)) < 1) { + // store current height + $oldh = $h; + // calculate new height + $h = $w * $pixh / $pixw; + // height difference + $hdiff = ($oldh - $h); + // vertical alignment + switch (strtoupper($fitbox{1})) { + case 'T': { + break; + } + case 'M': { + $y += ($hdiff / 2); + break; + } + case 'B': { + $y += $hdiff; + break; + } + } + } else { + // store current width + $oldw = $w; + // calculate new width + $w = $h * $pixw / $pixh; + // width difference + $wdiff = ($oldw - $w); + // horizontal alignment + switch (strtoupper($fitbox{0})) { + case 'L': { + if ($this->rtl) { + $x -= $wdiff; + } + break; + } + case 'C': { + if ($this->rtl) { + $x -= ($wdiff / 2); + } else { + $x += ($wdiff / 2); + } + break; + } + case 'R': { + if (!$this->rtl) { + $x += $wdiff; + } + break; + } + } + } + } + // fit the image on available space + $this->fitBlock($w, $h, $x, $y, $fitonpage); + // calculate new minimum dimensions in pixels + $neww = round($w * $this->k * $dpi / $this->dpi); + $newh = round($h * $this->k * $dpi / $this->dpi); + // check if resize is necessary (resize is used only to reduce the image) + $newsize = ($neww * $newh); + $pixsize = ($pixw * $pixh); + if (intval($resize) == 2) { + $resize = true; + } elseif ($newsize >= $pixsize) { + $resize = false; + } + // check if image has been already added on document + $newimage = true; + if (in_array($file, $this->imagekeys)) { + $newimage = false; + // get existing image data + $info = $this->getImageBuffer($file); + // check if the newer image is larger + $oldsize = ($info['w'] * $info['h']); + if ((($oldsize < $newsize) AND ($resize)) OR (($oldsize < $pixsize) AND (!$resize))) { + $newimage = true; + } + } + if ($newimage) { + //First use of image, get info + $type = strtolower($type); + if ($type == '') { + $type = $this->getImageFileType($file, $imsize); + } elseif ($type == 'jpg') { + $type = 'jpeg'; + } + $mqr = $this->get_mqr(); + $this->set_mqr(false); + // Specific image handlers + $mtd = '_parse'.$type; + // GD image handler function + $gdfunction = 'imagecreatefrom'.$type; + $info = false; + if ((method_exists($this, $mtd)) AND (!($resize AND function_exists($gdfunction)))) { + // TCPDF image functions + $info = $this->$mtd($file); + if ($info == 'pngalpha') { + return $this->ImagePngAlpha($file, $x, $y, $pixw, $pixh, $w, $h, 'PNG', $link, $align, $resize, $dpi, $palign); + } + } + if (!$info) { + if (function_exists($gdfunction)) { + // GD library + $img = $gdfunction($file); + if ($resize) { + $imgr = imagecreatetruecolor($neww, $newh); + if (($type == 'gif') OR ($type == 'png')) { + $imgr = $this->_setGDImageTransparency($imgr, $img); + } + imagecopyresampled($imgr, $img, 0, 0, 0, 0, $neww, $newh, $pixw, $pixh); + if (($type == 'gif') OR ($type == 'png')) { + $info = $this->_toPNG($imgr); + } else { + $info = $this->_toJPEG($imgr); + } + } else { + if (($type == 'gif') OR ($type == 'png')) { + $info = $this->_toPNG($img); + } else { + $info = $this->_toJPEG($img); + } + } + } elseif (extension_loaded('imagick')) { + // ImageMagick library + $img = new Imagick(); + if ($type == 'SVG') { + // get SVG file content + $svgimg = file_get_contents($file); + // get width and height + $regs = array(); + if (preg_match('/]*)>/si', $svgimg, $regs)) { + $svgtag = $regs[1]; + $tmp = array(); + if (preg_match('/[\s]+width[\s]*=[\s]*"([^"]*)"/si', $svgtag, $tmp)) { + $ow = $this->getHTMLUnitToUnits($tmp[1], 1, $this->svgunit, false); + $owu = sprintf('%.3F', ($ow * $dpi / 72)).$this->pdfunit; + $svgtag = preg_replace('/[\s]+width[\s]*=[\s]*"[^"]*"/si', ' width="'.$owu.'"', $svgtag, 1); + } else { + $ow = $w; + } + $tmp = array(); + if (preg_match('/[\s]+height[\s]*=[\s]*"([^"]*)"/si', $svgtag, $tmp)) { + $oh = $this->getHTMLUnitToUnits($tmp[1], 1, $this->svgunit, false); + $ohu = sprintf('%.3F', ($oh * $dpi / 72)).$this->pdfunit; + $svgtag = preg_replace('/[\s]+height[\s]*=[\s]*"[^"]*"/si', ' height="'.$ohu.'"', $svgtag, 1); + } else { + $oh = $h; + } + $tmp = array(); + if (!preg_match('/[\s]+viewBox[\s]*=[\s]*"[\s]*([0-9\.]+)[\s]+([0-9\.]+)[\s]+([0-9\.]+)[\s]+([0-9\.]+)[\s]*"/si', $svgtag, $tmp)) { + $vbw = ($ow * $this->imgscale * $this->k); + $vbh = ($oh * $this->imgscale * $this->k); + $vbox = sprintf(' viewBox="0 0 %.3F %.3F" ', $vbw, $vbh); + $svgtag = $vbox.$svgtag; + } + $svgimg = preg_replace('/]*)>/si', '', $svgimg, 1); + } + $img->readImageBlob($svgimg); + } else { + $img->readImage($file); + } + if ($resize) { + $img->resizeImage($neww, $newh, 10, 1, false); + } + $img->setCompressionQuality($this->jpeg_quality); + $img->setImageFormat('jpeg'); + $tempname = tempnam(K_PATH_CACHE, 'jpg_'); + $img->writeImage($tempname); + $info = $this->_parsejpeg($tempname); + unlink($tempname); + $img->destroy(); + } else { + return; + } + } + if ($info === false) { + //If false, we cannot process image + return; + } + $this->set_mqr($mqr); + if ($ismask) { + // force grayscale + $info['cs'] = 'DeviceGray'; + } + $info['i'] = $this->numimages; + if (!in_array($file, $this->imagekeys)) { + ++$info['i']; + } + if ($imgmask !== false) { + $info['masked'] = $imgmask; + } + // add image to document + $this->setImageBuffer($file, $info); + } + if ($cached_file) { + // remove cached file + unlink($file); + } + // set alignment + $this->img_rb_y = $y + $h; + // set alignment + if ($this->rtl) { + if ($palign == 'L') { + $ximg = $this->lMargin; + } elseif ($palign == 'C') { + $ximg = ($this->w + $this->lMargin - $this->rMargin - $w) / 2; + } elseif ($palign == 'R') { + $ximg = $this->w - $this->rMargin - $w; + } else { + $ximg = $x - $w; + } + $this->img_rb_x = $ximg; + } else { + if ($palign == 'L') { + $ximg = $this->lMargin; + } elseif ($palign == 'C') { + $ximg = ($this->w + $this->lMargin - $this->rMargin - $w) / 2; + } elseif ($palign == 'R') { + $ximg = $this->w - $this->rMargin - $w; + } else { + $ximg = $x; + } + $this->img_rb_x = $ximg + $w; + } + if ($ismask OR $hidden) { + // image is not displayed + return $info['i']; + } + $xkimg = $ximg * $this->k; + $this->_out(sprintf('q %.2F 0 0 %.2F %.2F %.2F cm /I%u Do Q', ($w * $this->k), ($h * $this->k), $xkimg, (($this->h - ($y + $h)) * $this->k), $info['i'])); + if (!empty($border)) { + $bx = $this->x; + $by = $this->y; + $this->x = $ximg; + if ($this->rtl) { + $this->x += $w; + } + $this->y = $y; + $this->Cell($w, $h, '', $border, 0, '', 0, '', 0, true); + $this->x = $bx; + $this->y = $by; + } + if ($link) { + $this->Link($ximg, $y, $w, $h, $link, 0); + } + // set pointer to align the next text/objects + switch($align) { + case 'T': { + $this->y = $y; + $this->x = $this->img_rb_x; + break; + } + case 'M': { + $this->y = $y + round($h/2); + $this->x = $this->img_rb_x; + break; + } + case 'B': { + $this->y = $this->img_rb_y; + $this->x = $this->img_rb_x; + break; + } + case 'N': { + $this->SetY($this->img_rb_y); + break; + } + default:{ + break; + } + } + $this->endlinex = $this->img_rb_x; + if ($this->inxobj) { + // we are inside an XObject template + $this->xobjects[$this->xobjid]['images'][] = $info['i']; + } + return $info['i']; + } + + /** + * Sets the current active configuration setting of magic_quotes_runtime (if the set_magic_quotes_runtime function exist) + * @param $mqr (boolean) FALSE for off, TRUE for on. + * @since 4.6.025 (2009-08-17) + */ + public function set_mqr($mqr) { + if(!defined('PHP_VERSION_ID')) { + $version = PHP_VERSION; + define('PHP_VERSION_ID', (($version{0} * 10000) + ($version{2} * 100) + $version{4})); + } + if (PHP_VERSION_ID < 50300) { + @set_magic_quotes_runtime($mqr); + } + } + + /** + * Gets the current active configuration setting of magic_quotes_runtime (if the get_magic_quotes_runtime function exist) + * @return Returns 0 if magic quotes runtime is off or get_magic_quotes_runtime doesn't exist, 1 otherwise. + * @since 4.6.025 (2009-08-17) + */ + public function get_mqr() { + if(!defined('PHP_VERSION_ID')) { + $version = PHP_VERSION; + define('PHP_VERSION_ID', (($version{0} * 10000) + ($version{2} * 100) + $version{4})); + } + if (PHP_VERSION_ID < 50300) { + return @get_magic_quotes_runtime(); + } + return 0; + } + + /** + * Convert the loaded image to a JPEG and then return a structure for the PDF creator. + * This function requires GD library and write access to the directory defined on K_PATH_CACHE constant. + * @param $image (image) Image object. + * return image JPEG image object. + * @protected + */ + protected function _toJPEG($image) { + $tempname = tempnam(K_PATH_CACHE, 'jpg_'); + imagejpeg($image, $tempname, $this->jpeg_quality); + imagedestroy($image); + $retvars = $this->_parsejpeg($tempname); + // tidy up by removing temporary image + unlink($tempname); + return $retvars; + } + + /** + * Convert the loaded image to a PNG and then return a structure for the PDF creator. + * This function requires GD library and write access to the directory defined on K_PATH_CACHE constant. + * @param $image (image) Image object. + * return image PNG image object. + * @protected + * @since 4.9.016 (2010-04-20) + */ + protected function _toPNG($image) { + // set temporary image file name + $tempname = tempnam(K_PATH_CACHE, 'jpg_'); + // turn off interlaced mode + imageinterlace($image, 0); + // create temporary PNG image + imagepng($image, $tempname); + // remove image from memory + imagedestroy($image); + // get PNG image data + $retvars = $this->_parsepng($tempname); + // tidy up by removing temporary image + unlink($tempname); + return $retvars; + } + + /** + * Set the transparency for the given GD image. + * @param $new_image (image) GD image object + * @param $image (image) GD image object. + * return GD image object. + * @protected + * @since 4.9.016 (2010-04-20) + */ + protected function _setGDImageTransparency($new_image, $image) { + // transparency index + $tid = imagecolortransparent($image); + // default transparency color + $tcol = array('red' => 255, 'green' => 255, 'blue' => 255); + if ($tid >= 0) { + // get the colors for the transparency index + $tcol = imagecolorsforindex($image, $tid); + } + $tid = imagecolorallocate($new_image, $tcol['red'], $tcol['green'], $tcol['blue']); + imagefill($new_image, 0, 0, $tid); + imagecolortransparent($new_image, $tid); + return $new_image; + } + + /** + * Extract info from a JPEG file without using the GD library. + * @param $file (string) image file to parse + * @return array structure containing the image data + * @protected + */ + protected function _parsejpeg($file) { + $a = getimagesize($file); + if (empty($a)) { + $this->Error('Missing or incorrect image file: '.$file); + } + if ($a[2] != 2) { + $this->Error('Not a JPEG file: '.$file); + } + if ((!isset($a['channels'])) OR ($a['channels'] == 3)) { + $colspace = 'DeviceRGB'; + } elseif ($a['channels'] == 4) { + $colspace = 'DeviceCMYK'; + } else { + $colspace = 'DeviceGray'; + } + $bpc = isset($a['bits']) ? $a['bits'] : 8; + $data = file_get_contents($file); + return array('w' => $a[0], 'h' => $a[1], 'cs' => $colspace, 'bpc' => $bpc, 'f' => 'DCTDecode', 'data' => $data); + } + + /** + * Extract info from a PNG file without using the GD library. + * @param $file (string) image file to parse + * @return array structure containing the image data + * @protected + */ + protected function _parsepng($file) { + $f = fopen($file, 'rb'); + if ($f === false) { + $this->Error('Can\'t open image file: '.$file); + } + //Check signature + if (fread($f, 8) != chr(137).'PNG'.chr(13).chr(10).chr(26).chr(10)) { + $this->Error('Not a PNG file: '.$file); + } + //Read header chunk + fread($f, 4); + if (fread($f, 4) != 'IHDR') { + $this->Error('Incorrect PNG file: '.$file); + } + $w = $this->_freadint($f); + $h = $this->_freadint($f); + $bpc = ord(fread($f, 1)); + if ($bpc > 8) { + //$this->Error('16-bit depth not supported: '.$file); + fclose($f); + return false; + } + $ct = ord(fread($f, 1)); + if ($ct == 0) { + $colspace = 'DeviceGray'; + } elseif ($ct == 2) { + $colspace = 'DeviceRGB'; + } elseif ($ct == 3) { + $colspace = 'Indexed'; + } else { + // alpha channel + fclose($f); + return 'pngalpha'; + } + if (ord(fread($f, 1)) != 0) { + //$this->Error('Unknown compression method: '.$file); + fclose($f); + return false; + } + if (ord(fread($f, 1)) != 0) { + //$this->Error('Unknown filter method: '.$file); + fclose($f); + return false; + } + if (ord(fread($f, 1)) != 0) { + //$this->Error('Interlacing not supported: '.$file); + fclose($f); + return false; + } + fread($f, 4); + $parms = '/DecodeParms << /Predictor 15 /Colors '.($ct == 2 ? 3 : 1).' /BitsPerComponent '.$bpc.' /Columns '.$w.' >>'; + //Scan chunks looking for palette, transparency and image data + $pal = ''; + $trns = ''; + $data = ''; + do { + $n = $this->_freadint($f); + $type = fread($f, 4); + if ($type == 'PLTE') { + //Read palette + $pal = $this->rfread($f, $n); + fread($f, 4); + } elseif ($type == 'tRNS') { + //Read transparency info + $t = $this->rfread($f, $n); + if ($ct == 0) { + $trns = array(ord(substr($t, 1, 1))); + } elseif ($ct == 2) { + $trns = array(ord(substr($t, 1, 1)), ord(substr($t, 3, 1)), ord(substr($t, 5, 1))); + } else { + $pos = strpos($t, chr(0)); + if ($pos !== false) { + $trns = array($pos); + } + } + fread($f, 4); + } elseif ($type == 'IDAT') { + //Read image data block + $data .= $this->rfread($f, $n); + fread($f, 4); + } elseif ($type == 'IEND') { + break; + } else { + $this->rfread($f, $n + 4); + } + } while ($n); + if (($colspace == 'Indexed') AND (empty($pal))) { + //$this->Error('Missing palette in '.$file); + fclose($f); + return false; + } + fclose($f); + return array('w' => $w, 'h' => $h, 'cs' => $colspace, 'bpc' => $bpc, 'f' => 'FlateDecode', 'parms' => $parms, 'pal' => $pal, 'trns' => $trns, 'data' => $data); + } + + /** + * Binary-safe and URL-safe file read. + * Reads up to length bytes from the file pointer referenced by handle. Reading stops as soon as one of the following conditions is met: length bytes have been read; EOF (end of file) is reached. + * @param $handle (resource) + * @param $length (int) + * @return Returns the read string or FALSE in case of error. + * @author Nicola Asuni + * @protected + * @since 4.5.027 (2009-03-16) + */ + protected function rfread($handle, $length) { + $data = fread($handle, $length); + if ($data === false) { + return false; + } + $rest = $length - strlen($data); + if ($rest > 0) { + $data .= $this->rfread($handle, $rest); + } + return $data; + } + + /** + * Extract info from a PNG image with alpha channel using the GD library. + * @param $file (string) Name of the file containing the image. + * @param $x (float) Abscissa of the upper-left corner. + * @param $y (float) Ordinate of the upper-left corner. + * @param $wpx (float) Original width of the image in pixels. + * @param $hpx (float) original height of the image in pixels. + * @param $w (float) Width of the image in the page. If not specified or equal to zero, it is automatically calculated. + * @param $h (float) Height of the image in the page. If not specified or equal to zero, it is automatically calculated. + * @param $type (string) Image format. Possible values are (case insensitive): JPEG and PNG (whitout GD library) and all images supported by GD: GD, GD2, GD2PART, GIF, JPEG, PNG, BMP, XBM, XPM;. If not specified, the type is inferred from the file extension. + * @param $link (mixed) URL or identifier returned by AddLink(). + * @param $align (string) Indicates the alignment of the pointer next to image insertion relative to image height. The value can be:
        • T: top-right for LTR or top-left for RTL
        • M: middle-right for LTR or middle-left for RTL
        • B: bottom-right for LTR or bottom-left for RTL
        • N: next line
        + * @param $resize (boolean) If true resize (reduce) the image to fit $w and $h (requires GD library). + * @param $dpi (int) dot-per-inch resolution used on resize + * @param $palign (string) Allows to center or align the image on the current line. Possible values are:
        • L : left align
        • C : center
        • R : right align
        • '' : empty string : left for LTR or right for RTL
        + * @author Nicola Asuni + * @protected + * @since 4.3.007 (2008-12-04) + * @see Image() + */ + protected function ImagePngAlpha($file, $x, $y, $wpx, $hpx, $w, $h, $type, $link, $align, $resize, $dpi, $palign) { + // create temp image file (without alpha channel) + $tempfile_plain = tempnam(K_PATH_CACHE, 'mskp_'); + // create temp alpha file + $tempfile_alpha = tempnam(K_PATH_CACHE, 'mska_'); + if (extension_loaded('imagick')) { // ImageMagick + // ImageMagick library + $img = new Imagick(); + $img->readImage($file); + // clone image object + $imga = $img->clone(); + // extract alpha channel + $img->separateImageChannel(8); // 8 = (imagick::CHANNEL_ALPHA | imagick::CHANNEL_OPACITY | imagick::CHANNEL_MATTE); + $img->negateImage(true); + $img->setImageFormat('png'); + $img->writeImage($tempfile_alpha); + // remove alpha channel + $imga->separateImageChannel(39); // 39 = (imagick::CHANNEL_ALL & ~(imagick::CHANNEL_ALPHA | imagick::CHANNEL_OPACITY | imagick::CHANNEL_MATTE)); + $imga->setImageFormat('png'); + $imga->writeImage($tempfile_plain); + } else { // GD library + // generate images + $img = imagecreatefrompng($file); + $imgalpha = imagecreate($wpx, $hpx); + // generate gray scale palette (0 -> 255) + for ($c = 0; $c < 256; ++$c) { + ImageColorAllocate($imgalpha, $c, $c, $c); + } + // extract alpha channel + for ($xpx = 0; $xpx < $wpx; ++$xpx) { + for ($ypx = 0; $ypx < $hpx; ++$ypx) { + $color = imagecolorat($img, $xpx, $ypx); + $alpha = ($color >> 24); // shifts off the first 24 bits (where 8x3 are used for each color), and returns the remaining 7 allocated bits (commonly used for alpha) + $alpha = (((127 - $alpha) / 127) * 255); // GD alpha is only 7 bit (0 -> 127) + $alpha = $this->getGDgamma($alpha); // correct gamma + imagesetpixel($imgalpha, $xpx, $ypx, $alpha); + } + } + imagepng($imgalpha, $tempfile_alpha); + imagedestroy($imgalpha); + // extract image without alpha channel + $imgplain = imagecreatetruecolor($wpx, $hpx); + imagecopy($imgplain, $img, 0, 0, 0, 0, $wpx, $hpx); + imagepng($imgplain, $tempfile_plain); + imagedestroy($imgplain); + } + // embed mask image + $imgmask = $this->Image($tempfile_alpha, $x, $y, $w, $h, 'PNG', '', '', $resize, $dpi, '', true, false); + // embed image, masked with previously embedded mask + $this->Image($tempfile_plain, $x, $y, $w, $h, $type, $link, $align, $resize, $dpi, $palign, false, $imgmask); + // remove temp files + unlink($tempfile_alpha); + unlink($tempfile_plain); + } + + /** + * Correct the gamma value to be used with GD library + * @param $v (float) the gamma value to be corrected + * @protected + * @since 4.3.007 (2008-12-04) + */ + protected function getGDgamma($v) { + return (pow(($v / 255), 2.2) * 255); + } + + /** + * Performs a line break. + * The current abscissa goes back to the left margin and the ordinate increases by the amount passed in parameter. + * @param $h (float) The height of the break. By default, the value equals the height of the last printed cell. + * @param $cell (boolean) if true add the current left (or right o for RTL) padding to the X coordinate + * @public + * @since 1.0 + * @see Cell() + */ + public function Ln($h='', $cell=false) { + if (($this->num_columns > 1) AND ($this->y == $this->columns[$this->current_column]['y']) AND isset($this->columns[$this->current_column]['x']) AND ($this->x == $this->columns[$this->current_column]['x'])) { + // revove vertical space from the top of the column + return; + } + if ($cell) { + if ($this->rtl) { + $cellpadding = $this->cell_padding['R']; + } else { + $cellpadding = $this->cell_padding['L']; + } + } else { + $cellpadding = 0; + } + if ($this->rtl) { + $this->x = $this->w - $this->rMargin - $cellpadding; + } else { + $this->x = $this->lMargin + $cellpadding; + } + if (is_string($h)) { + $this->y += $this->lasth; + } else { + $this->y += $h; + } + $this->newline = true; + } + + /** + * Returns the relative X value of current position. + * The value is relative to the left border for LTR languages and to the right border for RTL languages. + * @return float + * @public + * @since 1.2 + * @see SetX(), GetY(), SetY() + */ + public function GetX() { + //Get x position + if ($this->rtl) { + return ($this->w - $this->x); + } else { + return $this->x; + } + } + + /** + * Returns the absolute X value of current position. + * @return float + * @public + * @since 1.2 + * @see SetX(), GetY(), SetY() + */ + public function GetAbsX() { + return $this->x; + } + + /** + * Returns the ordinate of the current position. + * @return float + * @public + * @since 1.0 + * @see SetY(), GetX(), SetX() + */ + public function GetY() { + return $this->y; + } + + /** + * Defines the abscissa of the current position. + * If the passed value is negative, it is relative to the right of the page (or left if language is RTL). + * @param $x (float) The value of the abscissa. + * @param $rtloff (boolean) if true always uses the page top-left corner as origin of axis. + * @public + * @since 1.2 + * @see GetX(), GetY(), SetY(), SetXY() + */ + public function SetX($x, $rtloff=false) { + if (!$rtloff AND $this->rtl) { + if ($x >= 0) { + $this->x = $this->w - $x; + } else { + $this->x = abs($x); + } + } else { + if ($x >= 0) { + $this->x = $x; + } else { + $this->x = $this->w + $x; + } + } + if ($this->x < 0) { + $this->x = 0; + } + if ($this->x > $this->w) { + $this->x = $this->w; + } + } + + /** + * Moves the current abscissa back to the left margin and sets the ordinate. + * If the passed value is negative, it is relative to the bottom of the page. + * @param $y (float) The value of the ordinate. + * @param $resetx (bool) if true (default) reset the X position. + * @param $rtloff (boolean) if true always uses the page top-left corner as origin of axis. + * @public + * @since 1.0 + * @see GetX(), GetY(), SetY(), SetXY() + */ + public function SetY($y, $resetx=true, $rtloff=false) { + if ($resetx) { + //reset x + if (!$rtloff AND $this->rtl) { + $this->x = $this->w - $this->rMargin; + } else { + $this->x = $this->lMargin; + } + } + if ($y >= 0) { + $this->y = $y; + } else { + $this->y = $this->h + $y; + } + if ($this->y < 0) { + $this->y = 0; + } + if ($this->y > $this->h) { + $this->y = $this->h; + } + } + + /** + * Defines the abscissa and ordinate of the current position. + * If the passed values are negative, they are relative respectively to the right and bottom of the page. + * @param $x (float) The value of the abscissa. + * @param $y (float) The value of the ordinate. + * @param $rtloff (boolean) if true always uses the page top-left corner as origin of axis. + * @public + * @since 1.2 + * @see SetX(), SetY() + */ + public function SetXY($x, $y, $rtloff=false) { + $this->SetY($y, false, $rtloff); + $this->SetX($x, $rtloff); + } + + /** + * Send the document to a given destination: string, local file or browser. + * In the last case, the plug-in may be used (if present) or a download ("Save as" dialog box) may be forced.
        + * The method first calls Close() if necessary to terminate the document. + * @param $name (string) The name of the file when saved. Note that special characters are removed and blanks characters are replaced with the underscore character. + * @param $dest (string) Destination where to send the document. It can take one of the following values:
        • I: send the file inline to the browser (default). The plug-in is used if available. The name given by name is used when one selects the "Save as" option on the link generating the PDF.
        • D: send to the browser and force a file download with the name given by name.
        • F: save to a local server file with the name given by name.
        • S: return the document as a string (name is ignored).
        • FI: equivalent to F + I option
        • FD: equivalent to F + D option
        • E: return the document as base64 mime multi-part email attachment (RFC 2045)
        + * @public + * @since 1.0 + * @see Close() + */ + public function Output($name='doc.pdf', $dest='I') { + //Output PDF to some destination + //Finish document if necessary + if ($this->state < 3) { + $this->Close(); + } + //Normalize parameters + if (is_bool($dest)) { + $dest = $dest ? 'D' : 'F'; + } + $dest = strtoupper($dest); + if ($dest{0} != 'F') { + $name = preg_replace('/[\s]+/', '_', $name); + $name = preg_replace('/[^a-zA-Z0-9_\.-]/', '', $name); + } + if ($this->sign) { + // *** apply digital signature to the document *** + // get the document content + $pdfdoc = $this->getBuffer(); + // remove last newline + $pdfdoc = substr($pdfdoc, 0, -1); + // Remove the original buffer + if (isset($this->diskcache) AND $this->diskcache) { + // remove buffer file from cache + unlink($this->buffer); + } + unset($this->buffer); + // remove filler space + $byterange_string_len = strlen($this->byterange_string); + // define the ByteRange + $byte_range = array(); + $byte_range[0] = 0; + $byte_range[1] = strpos($pdfdoc, $this->byterange_string) + $byterange_string_len + 10; + $byte_range[2] = $byte_range[1] + $this->signature_max_length + 2; + $byte_range[3] = strlen($pdfdoc) - $byte_range[2]; + $pdfdoc = substr($pdfdoc, 0, $byte_range[1]).substr($pdfdoc, $byte_range[2]); + // replace the ByteRange + $byterange = sprintf('/ByteRange[0 %u %u %u]', $byte_range[1], $byte_range[2], $byte_range[3]); + $byterange .= str_repeat(' ', ($byterange_string_len - strlen($byterange))); + $pdfdoc = str_replace($this->byterange_string, $byterange, $pdfdoc); + // write the document to a temporary folder + $tempdoc = tempnam(K_PATH_CACHE, 'tmppdf_'); + $f = fopen($tempdoc, 'wb'); + if (!$f) { + $this->Error('Unable to create temporary file: '.$tempdoc); + } + $pdfdoc_length = strlen($pdfdoc); + fwrite($f, $pdfdoc, $pdfdoc_length); + fclose($f); + // get digital signature via openssl library + $tempsign = tempnam(K_PATH_CACHE, 'tmpsig_'); + if (empty($this->signature_data['extracerts'])) { + openssl_pkcs7_sign($tempdoc, $tempsign, $this->signature_data['signcert'], array($this->signature_data['privkey'], $this->signature_data['password']), array(), PKCS7_BINARY | PKCS7_DETACHED); + } else { + openssl_pkcs7_sign($tempdoc, $tempsign, $this->signature_data['signcert'], array($this->signature_data['privkey'], $this->signature_data['password']), array(), PKCS7_BINARY | PKCS7_DETACHED, $this->signature_data['extracerts']); + } + unlink($tempdoc); + // read signature + $signature = file_get_contents($tempsign); + unlink($tempsign); + // extract signature + $signature = substr($signature, $pdfdoc_length); + $signature = substr($signature, (strpos($signature, "%%EOF\n\n------") + 13)); + $tmparr = explode("\n\n", $signature); + $signature = $tmparr[1]; + unset($tmparr); + // decode signature + $signature = base64_decode(trim($signature)); + // convert signature to hex + $signature = current(unpack('H*', $signature)); + $signature = str_pad($signature, $this->signature_max_length, '0'); + // Add signature to the document + $pdfdoc = substr($pdfdoc, 0, $byte_range[1]).'<'.$signature.'>'.substr($pdfdoc, $byte_range[1]); + $this->diskcache = false; + $this->buffer = &$pdfdoc; + $this->bufferlen = strlen($pdfdoc); + } + switch($dest) { + case 'I': { + // Send PDF to the standard output + if (ob_get_contents()) { + $this->Error('Some data has already been output, can\'t send PDF file'); + } + if (php_sapi_name() != 'cli') { + //We send to a browser + header('Content-Type: application/pdf'); + if (headers_sent()) { + $this->Error('Some data has already been output to browser, can\'t send PDF file'); + } + header('Cache-Control: public, must-revalidate, max-age=0'); // HTTP/1.1 + header('Pragma: public'); + header('Expires: Sat, 26 Jul 1997 05:00:00 GMT'); // Date in the past + header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + header('Content-Length: '.$this->bufferlen); + header('Content-Disposition: inline; filename="'.basename($name).'";'); + } + echo $this->getBuffer(); + break; + } + case 'D': { + // Download PDF as file + if (ob_get_contents()) { + $this->Error('Some data has already been output, can\'t send PDF file'); + } + header('Content-Description: File Transfer'); + if (headers_sent()) { + $this->Error('Some data has already been output to browser, can\'t send PDF file'); + } + header('Cache-Control: public, must-revalidate, max-age=0'); // HTTP/1.1 + header('Pragma: public'); + header('Expires: Sat, 26 Jul 1997 05:00:00 GMT'); // Date in the past + header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + // force download dialog + if (strpos(php_sapi_name(), 'cgi') === false) { + header('Content-Type: application/force-download'); + header('Content-Type: application/octet-stream', false); + header('Content-Type: application/download', false); + header('Content-Type: application/pdf', false); + } else { + header('Content-Type: application/pdf'); + } + // use the Content-Disposition header to supply a recommended filename + header('Content-Disposition: attachment; filename="'.basename($name).'";'); + header('Content-Transfer-Encoding: binary'); + header('Content-Length: '.$this->bufferlen); + echo $this->getBuffer(); + break; + } + case 'F': + case 'FI': + case 'FD': { + // Save PDF to a local file + if ($this->diskcache) { + copy($this->buffer, $name); + } else { + $f = fopen($name, 'wb'); + if (!$f) { + $this->Error('Unable to create output file: '.$name); + } + fwrite($f, $this->getBuffer(), $this->bufferlen); + fclose($f); + } + if ($dest == 'FI') { + // send headers to browser + header('Content-Type: application/pdf'); + header('Cache-Control: public, must-revalidate, max-age=0'); // HTTP/1.1 + header('Pragma: public'); + header('Expires: Sat, 26 Jul 1997 05:00:00 GMT'); // Date in the past + header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + header('Content-Length: '.filesize($name)); + header('Content-Disposition: inline; filename="'.basename($name).'";'); + // send document to the browser + echo file_get_contents($name); + } elseif ($dest == 'FD') { + // send headers to browser + if (ob_get_contents()) { + $this->Error('Some data has already been output, can\'t send PDF file'); + } + header('Content-Description: File Transfer'); + if (headers_sent()) { + $this->Error('Some data has already been output to browser, can\'t send PDF file'); + } + header('Cache-Control: public, must-revalidate, max-age=0'); // HTTP/1.1 + header('Pragma: public'); + header('Expires: Sat, 26 Jul 1997 05:00:00 GMT'); // Date in the past + header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + // force download dialog + if (strpos(php_sapi_name(), 'cgi') === false) { + header('Content-Type: application/force-download'); + header('Content-Type: application/octet-stream', false); + header('Content-Type: application/download', false); + header('Content-Type: application/pdf', false); + } else { + header('Content-Type: application/pdf'); + } + // use the Content-Disposition header to supply a recommended filename + header('Content-Disposition: attachment; filename="'.basename($name).'";'); + header('Content-Transfer-Encoding: binary'); + header('Content-Length: '.filesize($name)); + // send document to the browser + echo file_get_contents($name); + } + break; + } + case 'E': { + // Return PDF as base64 mime multi-part email attachment (RFC 2045) + $retval = 'Content-Type: application/pdf;'."\r\n"; + $retval .= ' name="'.$name.'"'."\r\n"; + $retval .= 'Content-Transfer-Encoding: base64'."\r\n"; + $retval .= 'Content-Disposition: attachment;'."\r\n"; + $retval .= ' filename="'.$name.'"'."\r\n\r\n"; + $retval .= chunk_split(base64_encode($this->getBuffer()), 76, "\r\n"); + return $retval; + } + case 'S': { + // Returns PDF as a string + return $this->getBuffer(); + } + default: { + $this->Error('Incorrect output destination: '.$dest); + } + } + return ''; + } + + /** + * Unset all class variables except the following critical variables: internal_encoding, state, bufferlen, buffer and diskcache. + * @param $destroyall (boolean) if true destroys all class variables, otherwise preserves critical variables. + * @param $preserve_objcopy (boolean) if true preserves the objcopy variable + * @public + * @since 4.5.016 (2009-02-24) + */ + public function _destroy($destroyall=false, $preserve_objcopy=false) { + if ($destroyall AND isset($this->diskcache) AND $this->diskcache AND (!$preserve_objcopy) AND (!$this->empty_string($this->buffer))) { + // remove buffer file from cache + unlink($this->buffer); + } + foreach (array_keys(get_object_vars($this)) as $val) { + if ($destroyall OR ( + ($val != 'internal_encoding') + AND ($val != 'state') + AND ($val != 'bufferlen') + AND ($val != 'buffer') + AND ($val != 'diskcache') + AND ($val != 'sign') + AND ($val != 'signature_data') + AND ($val != 'signature_max_length') + AND ($val != 'byterange_string') + )) { + if ((!$preserve_objcopy OR ($val != 'objcopy')) AND isset($this->$val)) { + unset($this->$val); + } + } + } + } + + /** + * Check for locale-related bug + * @protected + */ + protected function _dochecks() { + //Check for locale-related bug + if (1.1 == 1) { + $this->Error('Don\'t alter the locale before including class file'); + } + //Check for decimal separator + if (sprintf('%.1F', 1.0) != '1.0') { + setlocale(LC_NUMERIC, 'C'); + } + } + + /** + * Return fonts path + * @return string + * @protected + */ + protected function _getfontpath() { + if (!defined('K_PATH_FONTS') AND is_dir(dirname(__FILE__).'/fonts')) { + define('K_PATH_FONTS', dirname(__FILE__).'/fonts/'); + } + return defined('K_PATH_FONTS') ? K_PATH_FONTS : ''; + } + + /** + * Output pages. + * @protected + */ + protected function _putpages() { + $nb = $this->numpages; + if (!empty($this->AliasNbPages)) { + $nbs = $this->formatPageNumber($nb); + $nbu = $this->UTF8ToUTF16BE($nbs, false); // replacement for unicode font + $alias_a = $this->_escape($this->AliasNbPages); + $alias_au = $this->_escape('{'.$this->AliasNbPages.'}'); + if ($this->isunicode) { + $alias_b = $this->_escape($this->UTF8ToLatin1($this->AliasNbPages)); + $alias_bu = $this->_escape($this->UTF8ToLatin1('{'.$this->AliasNbPages.'}')); + $alias_c = $this->_escape($this->utf8StrRev($this->AliasNbPages, false, $this->tmprtl)); + $alias_cu = $this->_escape($this->utf8StrRev('{'.$this->AliasNbPages.'}', false, $this->tmprtl)); + } + } + if (!empty($this->AliasNumPage)) { + $alias_pa = $this->_escape($this->AliasNumPage); + $alias_pau = $this->_escape('{'.$this->AliasNumPage.'}'); + if ($this->isunicode) { + $alias_pb = $this->_escape($this->UTF8ToLatin1($this->AliasNumPage)); + $alias_pbu = $this->_escape($this->UTF8ToLatin1('{'.$this->AliasNumPage.'}')); + $alias_pc = $this->_escape($this->utf8StrRev($this->AliasNumPage, false, $this->tmprtl)); + $alias_pcu = $this->_escape($this->utf8StrRev('{'.$this->AliasNumPage.'}', false, $this->tmprtl)); + } + } + $pagegroupnum = 0; + $filter = ($this->compress) ? '/Filter /FlateDecode ' : ''; + for ($n=1; $n <= $nb; ++$n) { + $temppage = $this->getPageBuffer($n); + if (!empty($this->pagegroups)) { + if(isset($this->newpagegroup[$n])) { + $pagegroupnum = 0; + } + ++$pagegroupnum; + foreach ($this->pagegroups as $k => $v) { + // replace total pages group numbers + $vs = $this->formatPageNumber($v); + $vu = $this->UTF8ToUTF16BE($vs, false); + $alias_ga = $this->_escape($k); + $alias_gau = $this->_escape('{'.$k.'}'); + if ($this->isunicode) { + $alias_gb = $this->_escape($this->UTF8ToLatin1($k)); + $alias_gbu = $this->_escape($this->UTF8ToLatin1('{'.$k.'}')); + $alias_gc = $this->_escape($this->utf8StrRev($k, false, $this->tmprtl)); + $alias_gcu = $this->_escape($this->utf8StrRev('{'.$k.'}', false, $this->tmprtl)); + } + $temppage = str_replace($alias_gau, $vu, $temppage); + if ($this->isunicode) { + $temppage = str_replace($alias_gbu, $vu, $temppage); + $temppage = str_replace($alias_gcu, $vu, $temppage); + $temppage = str_replace($alias_gb, $vs, $temppage); + $temppage = str_replace($alias_gc, $vs, $temppage); + } + $temppage = str_replace($alias_ga, $vs, $temppage); + // replace page group numbers + $pvs = $this->formatPageNumber($pagegroupnum); + $pvu = $this->UTF8ToUTF16BE($pvs, false); + $pk = str_replace('{nb', '{pnb', $k); + $alias_pga = $this->_escape($pk); + $alias_pgau = $this->_escape('{'.$pk.'}'); + if ($this->isunicode) { + $alias_pgb = $this->_escape($this->UTF8ToLatin1($pk)); + $alias_pgbu = $this->_escape($this->UTF8ToLatin1('{'.$pk.'}')); + $alias_pgc = $this->_escape($this->utf8StrRev($pk, false, $this->tmprtl)); + $alias_pgcu = $this->_escape($this->utf8StrRev('{'.$pk.'}', false, $this->tmprtl)); + } + $temppage = str_replace($alias_pgau, $pvu, $temppage); + if ($this->isunicode) { + $temppage = str_replace($alias_pgbu, $pvu, $temppage); + $temppage = str_replace($alias_pgcu, $pvu, $temppage); + $temppage = str_replace($alias_pgb, $pvs, $temppage); + $temppage = str_replace($alias_pgc, $pvs, $temppage); + } + $temppage = str_replace($alias_pga, $pvs, $temppage); + } + } + if (!empty($this->AliasNbPages)) { + // replace total pages number + $temppage = str_replace($alias_au, $nbu, $temppage); + if ($this->isunicode) { + $temppage = str_replace($alias_bu, $nbu, $temppage); + $temppage = str_replace($alias_cu, $nbu, $temppage); + $temppage = str_replace($alias_b, $nbs, $temppage); + $temppage = str_replace($alias_c, $nbs, $temppage); + } + $temppage = str_replace($alias_a, $nbs, $temppage); + } + if (!empty($this->AliasNumPage)) { + // replace page number + $pnbs = $this->formatPageNumber($n); + $pnbu = $this->UTF8ToUTF16BE($pnbs, false); // replacement for unicode font + $temppage = str_replace($alias_pau, $pnbu, $temppage); + if ($this->isunicode) { + $temppage = str_replace($alias_pbu, $pnbu, $temppage); + $temppage = str_replace($alias_pcu, $pnbu, $temppage); + $temppage = str_replace($alias_pb, $pnbs, $temppage); + $temppage = str_replace($alias_pc, $pnbs, $temppage); + } + $temppage = str_replace($alias_pa, $pnbs, $temppage); + } + $temppage = str_replace($this->epsmarker, '', $temppage); + //Page + $this->page_obj_id[$n] = $this->_newobj(); + $out = '<<'; + $out .= ' /Type /Page'; + $out .= ' /Parent 1 0 R'; + $out .= ' /LastModified '.$this->_datestring(); + $out .= ' /Resources 2 0 R'; + $boxes = array('MediaBox', 'CropBox', 'BleedBox', 'TrimBox', 'ArtBox'); + foreach ($boxes as $box) { + $out .= ' /'.$box; + $out .= sprintf(' [%.2F %.2F %.2F %.2F]', $this->pagedim[$n][$box]['llx'], $this->pagedim[$n][$box]['lly'], $this->pagedim[$n][$box]['urx'], $this->pagedim[$n][$box]['ury']); + } + if (isset($this->pagedim[$n]['BoxColorInfo']) AND !empty($this->pagedim[$n]['BoxColorInfo'])) { + $out .= ' /BoxColorInfo <<'; + foreach ($boxes as $box) { + if (isset($this->pagedim[$n]['BoxColorInfo'][$box])) { + $out .= ' /'.$box.' <<'; + if (isset($this->pagedim[$n]['BoxColorInfo'][$box]['C'])) { + $color = $this->pagedim[$n]['BoxColorInfo'][$box]['C']; + $out .= ' /C ['; + $out .= sprintf(' %.3F %.3F %.3F', $color[0]/255, $color[1]/255, $color[2]/255); + $out .= ' ]'; + } + if (isset($this->pagedim[$n]['BoxColorInfo'][$box]['W'])) { + $out .= ' /W '.($this->pagedim[$n]['BoxColorInfo'][$box]['W'] * $this->k); + } + if (isset($this->pagedim[$n]['BoxColorInfo'][$box]['S'])) { + $out .= ' /S /'.$this->pagedim[$n]['BoxColorInfo'][$box]['S']; + } + if (isset($this->pagedim[$n]['BoxColorInfo'][$box]['D'])) { + $dashes = $this->pagedim[$n]['BoxColorInfo'][$box]['D']; + $out .= ' /D ['; + foreach ($dashes as $dash) { + $out .= sprintf(' %.3F', ($dash * $this->k)); + } + $out .= ' ]'; + } + $out .= ' >>'; + } + } + $out .= ' >>'; + } + $out .= ' /Contents '.($this->n + 1).' 0 R'; + $out .= ' /Rotate '.$this->pagedim[$n]['Rotate']; + $out .= ' /Group << /Type /Group /S /Transparency /CS /DeviceRGB >>'; + if (isset($this->pagedim[$n]['trans']) AND !empty($this->pagedim[$n]['trans'])) { + // page transitions + if (isset($this->pagedim[$n]['trans']['Dur'])) { + $out .= ' /Dur '.$this->pagedim[$n]['trans']['Dur']; + } + $out .= ' /Trans <<'; + $out .= ' /Type /Trans'; + if (isset($this->pagedim[$n]['trans']['S'])) { + $out .= ' /S /'.$this->pagedim[$n]['trans']['S']; + } + if (isset($this->pagedim[$n]['trans']['D'])) { + $out .= ' /D '.$this->pagedim[$n]['trans']['D']; + } + if (isset($this->pagedim[$n]['trans']['Dm'])) { + $out .= ' /Dm /'.$this->pagedim[$n]['trans']['Dm']; + } + if (isset($this->pagedim[$n]['trans']['M'])) { + $out .= ' /M /'.$this->pagedim[$n]['trans']['M']; + } + if (isset($this->pagedim[$n]['trans']['Di'])) { + $out .= ' /Di '.$this->pagedim[$n]['trans']['Di']; + } + if (isset($this->pagedim[$n]['trans']['SS'])) { + $out .= ' /SS '.$this->pagedim[$n]['trans']['SS']; + } + if (isset($this->pagedim[$n]['trans']['B'])) { + $out .= ' /B '.$this->pagedim[$n]['trans']['B']; + } + $out .= ' >>'; + } + $out .= $this->_getannotsrefs($n); + $out .= ' /PZ '.$this->pagedim[$n]['PZ']; + $out .= ' >>'; + $out .= "\n".'endobj'; + $this->_out($out); + //Page content + $p = ($this->compress) ? gzcompress($temppage) : $temppage; + $this->_newobj(); + $p = $this->_getrawstream($p); + $this->_out('<<'.$filter.'/Length '.strlen($p).'>> stream'."\n".$p."\n".'endstream'."\n".'endobj'); + if ($this->diskcache) { + // remove temporary files + unlink($this->pages[$n]); + } + } + //Pages root + $out = $this->_getobj(1)."\n"; + $out .= '<< /Type /Pages /Kids ['; + foreach($this->page_obj_id as $page_obj) { + $out .= ' '.$page_obj.' 0 R'; + } + $out .= ' ] /Count '.$nb.' >>'; + $out .= "\n".'endobj'; + $this->_out($out); + } + + /** + * Output references to page annotations + * @param $n (int) page number + * @protected + * @author Nicola Asuni + * @since 4.7.000 (2008-08-29) + * @deprecated + */ + protected function _putannotsrefs($n) { + $this->_out($this->_getannotsrefs($n)); + } + + /** + * Get references to page annotations. + * @param $n (int) page number + * @return string + * @protected + * @author Nicola Asuni + * @since 5.0.010 (2010-05-17) + */ + protected function _getannotsrefs($n) { + if (!(isset($this->PageAnnots[$n]) OR ($this->sign AND isset($this->signature_data['cert_type'])))) { + return ''; + } + $out = ' /Annots ['; + if (isset($this->PageAnnots[$n])) { + foreach ($this->PageAnnots[$n] as $key => $val) { + if (!in_array($val['n'], $this->radio_groups)) { + $out .= ' '.$val['n'].' 0 R'; + } + } + // add radiobutton groups + if (isset($this->radiobutton_groups[$n])) { + foreach ($this->radiobutton_groups[$n] as $key => $data) { + if (isset($data['n'])) { + $out .= ' '.$data['n'].' 0 R'; + } + } + } + } + if ($this->sign AND ($n == $this->signature_appearance['page']) AND isset($this->signature_data['cert_type'])) { + // set reference for signature object + $out .= ' '.$this->sig_obj_id.' 0 R'; + } + $out .= ' ]'; + return $out; + } + + /** + * Output annotations objects for all pages. + * !!! THIS METHOD IS NOT YET COMPLETED !!! + * See section 12.5 of PDF 32000_2008 reference. + * @protected + * @author Nicola Asuni + * @since 4.0.018 (2008-08-06) + */ + protected function _putannotsobjs() { + // reset object counter + for ($n=1; $n <= $this->numpages; ++$n) { + if (isset($this->PageAnnots[$n])) { + // set page annotations + foreach ($this->PageAnnots[$n] as $key => $pl) { + $annot_obj_id = $this->PageAnnots[$n][$key]['n']; + // create annotation object for grouping radiobuttons + if (isset($this->radiobutton_groups[$n][$pl['txt']]) AND is_array($this->radiobutton_groups[$n][$pl['txt']])) { + $radio_button_obj_id = $this->radiobutton_groups[$n][$pl['txt']]['n']; + $annots = '<<'; + $annots .= ' /Type /Annot'; + $annots .= ' /Subtype /Widget'; + $annots .= ' /Rect [0 0 0 0]'; + $annots .= ' /T '.$this->_datastring($pl['txt'], $radio_button_obj_id); + $annots .= ' /FT /Btn'; + $annots .= ' /Ff 49152'; + $annots .= ' /Kids ['; + foreach ($this->radiobutton_groups[$n][$pl['txt']] as $key => $data) { + if ($key !== 'n') { + $annots .= ' '.$data['kid'].' 0 R'; + if ($data['def'] !== 'Off') { + $defval = $data['def']; + } + } + } + $annots .= ' ]'; + if (isset($defval)) { + $annots .= ' /V /'.$defval; + } + $annots .= ' >>'; + $this->_out($this->_getobj($radio_button_obj_id)."\n".$annots."\n".'endobj'); + $this->form_obj_id[] = $radio_button_obj_id; + // store object id to be used on Parent entry of Kids + $this->radiobutton_groups[$n][$pl['txt']] = $radio_button_obj_id; + } + $formfield = false; + $pl['opt'] = array_change_key_case($pl['opt'], CASE_LOWER); + $a = $pl['x'] * $this->k; + $b = $this->pagedim[$n]['h'] - (($pl['y'] + $pl['h']) * $this->k); + $c = $pl['w'] * $this->k; + $d = $pl['h'] * $this->k; + $rect = sprintf('%.2F %.2F %.2F %.2F', $a, $b, $a+$c, $b+$d); + // create new annotation object + $annots = '<_textstring($pl['txt'], $annot_obj_id); + $annots .= ' /P '.$this->page_obj_id[$n].' 0 R'; + $annots .= ' /NM '.$this->_datastring(sprintf('%04u-%04u', $n, $key), $annot_obj_id); + $annots .= ' /M '.$this->_datestring($annot_obj_id); + if (isset($pl['opt']['f'])) { + $val = 0; + if (is_array($pl['opt']['f'])) { + foreach ($pl['opt']['f'] as $f) { + switch (strtolower($f)) { + case 'invisible': { + $val += 1 << 0; + break; + } + case 'hidden': { + $val += 1 << 1; + break; + } + case 'print': { + $val += 1 << 2; + break; + } + case 'nozoom': { + $val += 1 << 3; + break; + } + case 'norotate': { + $val += 1 << 4; + break; + } + case 'noview': { + $val += 1 << 5; + break; + } + case 'readonly': { + $val += 1 << 6; + break; + } + case 'locked': { + $val += 1 << 8; + break; + } + case 'togglenoview': { + $val += 1 << 9; + break; + } + case 'lockedcontents': { + $val += 1 << 10; + break; + } + default: { + break; + } + } + } + } else { + $val = intval($pl['opt']['f']); + } + $annots .= ' /F '.intval($val); + } + if (isset($pl['opt']['as']) AND is_string($pl['opt']['as'])) { + $annots .= ' /AS /'.$pl['opt']['as']; + } + if (isset($pl['opt']['ap'])) { + // appearance stream + $annots .= ' /AP <<'; + if (is_array($pl['opt']['ap'])) { + foreach ($pl['opt']['ap'] as $apmode => $apdef) { + // $apmode can be: n = normal; r = rollover; d = down; + $annots .= ' /'.strtoupper($apmode); + if (is_array($apdef)) { + $annots .= ' <<'; + foreach ($apdef as $apstate => $stream) { + // reference to XObject that define the appearance for this mode-state + $apsobjid = $this->_putAPXObject($c, $d, $stream); + $annots .= ' /'.$apstate.' '.$apsobjid.' 0 R'; + } + $annots .= ' >>'; + } else { + // reference to XObject that define the appearance for this mode + $apsobjid = $this->_putAPXObject($c, $d, $apdef); + $annots .= ' '.$apsobjid.' 0 R'; + } + } + } else { + $annots .= $pl['opt']['ap']; + } + $annots .= ' >>'; + } + if (isset($pl['opt']['bs']) AND (is_array($pl['opt']['bs']))) { + $annots .= ' /BS <<'; + $annots .= ' /Type /Border'; + if (isset($pl['opt']['bs']['w'])) { + $annots .= ' /W '.intval($pl['opt']['bs']['w']); + } + $bstyles = array('S', 'D', 'B', 'I', 'U'); + if (isset($pl['opt']['bs']['s']) AND in_array($pl['opt']['bs']['s'], $bstyles)) { + $annots .= ' /S /'.$pl['opt']['bs']['s']; + } + if (isset($pl['opt']['bs']['d']) AND (is_array($pl['opt']['bs']['d']))) { + $annots .= ' /D ['; + foreach ($pl['opt']['bs']['d'] as $cord) { + $annots .= ' '.intval($cord); + } + $annots .= ']'; + } + $annots .= ' >>'; + } else { + $annots .= ' /Border ['; + if (isset($pl['opt']['border']) AND (count($pl['opt']['border']) >= 3)) { + $annots .= intval($pl['opt']['border'][0]).' '; + $annots .= intval($pl['opt']['border'][1]).' '; + $annots .= intval($pl['opt']['border'][2]); + if (isset($pl['opt']['border'][3]) AND is_array($pl['opt']['border'][3])) { + $annots .= ' ['; + foreach ($pl['opt']['border'][3] as $dash) { + $annots .= intval($dash).' '; + } + $annots .= ']'; + } + } else { + $annots .= '0 0 0'; + } + $annots .= ']'; + } + if (isset($pl['opt']['be']) AND (is_array($pl['opt']['be']))) { + $annots .= ' /BE <<'; + $bstyles = array('S', 'C'); + if (isset($pl['opt']['be']['s']) AND in_array($pl['opt']['be']['s'], $markups)) { + $annots .= ' /S /'.$pl['opt']['bs']['s']; + } else { + $annots .= ' /S /S'; + } + if (isset($pl['opt']['be']['i']) AND ($pl['opt']['be']['i'] >= 0) AND ($pl['opt']['be']['i'] <= 2)) { + $annots .= ' /I '.sprintf(' %.4F', $pl['opt']['be']['i']); + } + $annots .= '>>'; + } + if (isset($pl['opt']['c']) AND (is_array($pl['opt']['c'])) AND !empty($pl['opt']['c'])) { + $annots .= ' /C ['; + foreach ($pl['opt']['c'] as $col) { + $col = intval($col); + $color = $col <= 0 ? 0 : ($col >= 255 ? 1 : $col / 255); + $annots .= sprintf(' %.4F', $color); + } + $annots .= ']'; + } + //$annots .= ' /StructParent '; + //$annots .= ' /OC '; + $markups = array('text', 'freetext', 'line', 'square', 'circle', 'polygon', 'polyline', 'highlight', 'underline', 'squiggly', 'strikeout', 'stamp', 'caret', 'ink', 'fileattachment', 'sound'); + if (in_array(strtolower($pl['opt']['subtype']), $markups)) { + // this is a markup type + if (isset($pl['opt']['t']) AND is_string($pl['opt']['t'])) { + $annots .= ' /T '.$this->_textstring($pl['opt']['t'], $annot_obj_id); + } + //$annots .= ' /Popup '; + if (isset($pl['opt']['ca'])) { + $annots .= ' /CA '.sprintf('%.4F', floatval($pl['opt']['ca'])); + } + if (isset($pl['opt']['rc'])) { + $annots .= ' /RC '.$this->_textstring($pl['opt']['rc'], $annot_obj_id); + } + $annots .= ' /CreationDate '.$this->_datestring($annot_obj_id); + //$annots .= ' /IRT '; + if (isset($pl['opt']['subj'])) { + $annots .= ' /Subj '.$this->_textstring($pl['opt']['subj'], $annot_obj_id); + } + //$annots .= ' /RT '; + //$annots .= ' /IT '; + //$annots .= ' /ExData '; + } + $lineendings = array('Square', 'Circle', 'Diamond', 'OpenArrow', 'ClosedArrow', 'None', 'Butt', 'ROpenArrow', 'RClosedArrow', 'Slash'); + // Annotation types + switch (strtolower($pl['opt']['subtype'])) { + case 'text': { + if (isset($pl['opt']['open'])) { + $annots .= ' /Open '. (strtolower($pl['opt']['open']) == 'true' ? 'true' : 'false'); + } + $iconsapp = array('Comment', 'Help', 'Insert', 'Key', 'NewParagraph', 'Note', 'Paragraph'); + if (isset($pl['opt']['name']) AND in_array($pl['opt']['name'], $iconsapp)) { + $annots .= ' /Name /'.$pl['opt']['name']; + } else { + $annots .= ' /Name /Note'; + } + $statemodels = array('Marked', 'Review'); + if (isset($pl['opt']['statemodel']) AND in_array($pl['opt']['statemodel'], $statemodels)) { + $annots .= ' /StateModel /'.$pl['opt']['statemodel']; + } else { + $pl['opt']['statemodel'] = 'Marked'; + $annots .= ' /StateModel /'.$pl['opt']['statemodel']; + } + if ($pl['opt']['statemodel'] == 'Marked') { + $states = array('Accepted', 'Unmarked'); + } else { + $states = array('Accepted', 'Rejected', 'Cancelled', 'Completed', 'None'); + } + if (isset($pl['opt']['state']) AND in_array($pl['opt']['state'], $states)) { + $annots .= ' /State /'.$pl['opt']['state']; + } else { + if ($pl['opt']['statemodel'] == 'Marked') { + $annots .= ' /State /Unmarked'; + } else { + $annots .= ' /State /None'; + } + } + break; + } + case 'link': { + if(is_string($pl['txt'])) { + // external URI link + $annots .= ' /A <_datastring($this->unhtmlentities($pl['txt']), $annot_obj_id).'>>'; + } else { + // internal link + $l = $this->links[$pl['txt']]; + $annots .= sprintf(' /Dest [%u 0 R /XYZ 0 %.2F null]', $this->page_obj_id[($l[0])], ($this->pagedim[$l[0]]['h'] - ($l[1] * $this->k))); + } + $hmodes = array('N', 'I', 'O', 'P'); + if (isset($pl['opt']['h']) AND in_array($pl['opt']['h'], $hmodes)) { + $annots .= ' /H /'.$pl['opt']['h']; + } else { + $annots .= ' /H /I'; + } + //$annots .= ' /PA '; + //$annots .= ' /Quadpoints '; + break; + } + case 'freetext': { + if (isset($pl['opt']['da']) AND !empty($pl['opt']['da'])) { + $annots .= ' /DA ('.$pl['opt']['da'].')'; + } + if (isset($pl['opt']['q']) AND ($pl['opt']['q'] >= 0) AND ($pl['opt']['q'] <= 2)) { + $annots .= ' /Q '.intval($pl['opt']['q']); + } + if (isset($pl['opt']['rc'])) { + $annots .= ' /RC '.$this->_textstring($pl['opt']['rc'], $annot_obj_id); + } + if (isset($pl['opt']['ds'])) { + $annots .= ' /DS '.$this->_textstring($pl['opt']['ds'], $annot_obj_id); + } + if (isset($pl['opt']['cl']) AND is_array($pl['opt']['cl'])) { + $annots .= ' /CL ['; + foreach ($pl['opt']['cl'] as $cl) { + $annots .= sprintf('%.4F ', $cl * $this->k); + } + $annots .= ']'; + } + $tfit = array('FreeText', 'FreeTextCallout', 'FreeTextTypeWriter'); + if (isset($pl['opt']['it']) AND in_array($pl['opt']['it'], $tfit)) { + $annots .= ' /IT /'.$pl['opt']['it']; + } + if (isset($pl['opt']['rd']) AND is_array($pl['opt']['rd'])) { + $l = $pl['opt']['rd'][0] * $this->k; + $r = $pl['opt']['rd'][1] * $this->k; + $t = $pl['opt']['rd'][2] * $this->k; + $b = $pl['opt']['rd'][3] * $this->k; + $annots .= ' /RD ['.sprintf('%.2F %.2F %.2F %.2F', $l, $r, $t, $b).']'; + } + if (isset($pl['opt']['le']) AND in_array($pl['opt']['le'], $lineendings)) { + $annots .= ' /LE /'.$pl['opt']['le']; + } + break; + } + case 'line': { + break; + } + case 'square': { + break; + } + case 'circle': { + break; + } + case 'polygon': { + break; + } + case 'polyline': { + break; + } + case 'highlight': { + break; + } + case 'underline': { + break; + } + case 'squiggly': { + break; + } + case 'strikeout': { + break; + } + case 'stamp': { + break; + } + case 'caret': { + break; + } + case 'ink': { + break; + } + case 'popup': { + break; + } + case 'fileattachment': { + if (!isset($pl['opt']['fs'])) { + break; + } + $filename = basename($pl['opt']['fs']); + if (isset($this->embeddedfiles[$filename]['n'])) { + $annots .= ' /FS <_datastring($filename, $annot_obj_id).' /EF <embeddedfiles[$filename]['n'].' 0 R>> >>'; + $iconsapp = array('Graph', 'Paperclip', 'PushPin', 'Tag'); + if (isset($pl['opt']['name']) AND in_array($pl['opt']['name'], $iconsapp)) { + $annots .= ' /Name /'.$pl['opt']['name']; + } else { + $annots .= ' /Name /PushPin'; + } + } + break; + } + case 'sound': { + if (!isset($pl['opt']['fs'])) { + break; + } + $filename = basename($pl['opt']['fs']); + if (isset($this->embeddedfiles[$filename]['n'])) { + // ... TO BE COMPLETED ... + // /R /C /B /E /CO /CP + $annots .= ' /Sound <_datastring($filename, $annot_obj_id).' /EF <embeddedfiles[$filename]['n'].' 0 R>> >>'; + $iconsapp = array('Speaker', 'Mic'); + if (isset($pl['opt']['name']) AND in_array($pl['opt']['name'], $iconsapp)) { + $annots .= ' /Name /'.$pl['opt']['name']; + } else { + $annots .= ' /Name /Speaker'; + } + } + break; + } + case 'movie': { + break; + } + case 'widget': { + $hmode = array('N', 'I', 'O', 'P', 'T'); + if (isset($pl['opt']['h']) AND in_array($pl['opt']['h'], $hmode)) { + $annots .= ' /H /'.$pl['opt']['h']; + } + if (isset($pl['opt']['mk']) AND (is_array($pl['opt']['mk'])) AND !empty($pl['opt']['mk'])) { + $annots .= ' /MK <<'; + if (isset($pl['opt']['mk']['r'])) { + $annots .= ' /R '.$pl['opt']['mk']['r']; + } + if (isset($pl['opt']['mk']['bc']) AND (is_array($pl['opt']['mk']['bc']))) { + $annots .= ' /BC ['; + foreach($pl['opt']['mk']['bc'] AS $col) { + $col = intval($col); + $color = $col <= 0 ? 0 : ($col >= 255 ? 1 : $col / 255); + $annots .= sprintf(' %.2F', $color); + } + $annots .= ']'; + } + if (isset($pl['opt']['mk']['bg']) AND (is_array($pl['opt']['mk']['bg']))) { + $annots .= ' /BG ['; + foreach($pl['opt']['mk']['bg'] AS $col) { + $col = intval($col); + $color = $col <= 0 ? 0 : ($col >= 255 ? 1 : $col / 255); + $annots .= sprintf(' %.2F', $color); + } + $annots .= ']'; + } + if (isset($pl['opt']['mk']['ca'])) { + $annots .= ' /CA '.$pl['opt']['mk']['ca']; + } + if (isset($pl['opt']['mk']['rc'])) { + $annots .= ' /RC '.$pl['opt']['mk']['rc']; + } + if (isset($pl['opt']['mk']['ac'])) { + $annots .= ' /AC '.$pl['opt']['mk']['ac']; + } + if (isset($pl['opt']['mk']['i'])) { + $info = $this->getImageBuffer($pl['opt']['mk']['i']); + if ($info !== false) { + $annots .= ' /I '.$info['n'].' 0 R'; + } + } + if (isset($pl['opt']['mk']['ri'])) { + $info = $this->getImageBuffer($pl['opt']['mk']['ri']); + if ($info !== false) { + $annots .= ' /RI '.$info['n'].' 0 R'; + } + } + if (isset($pl['opt']['mk']['ix'])) { + $info = $this->getImageBuffer($pl['opt']['mk']['ix']); + if ($info !== false) { + $annots .= ' /IX '.$info['n'].' 0 R'; + } + } + if (isset($pl['opt']['mk']['if']) AND (is_array($pl['opt']['mk']['if'])) AND !empty($pl['opt']['mk']['if'])) { + $annots .= ' /IF <<'; + $if_sw = array('A', 'B', 'S', 'N'); + if (isset($pl['opt']['mk']['if']['sw']) AND in_array($pl['opt']['mk']['if']['sw'], $if_sw)) { + $annots .= ' /SW /'.$pl['opt']['mk']['if']['sw']; + } + $if_s = array('A', 'P'); + if (isset($pl['opt']['mk']['if']['s']) AND in_array($pl['opt']['mk']['if']['s'], $if_s)) { + $annots .= ' /S /'.$pl['opt']['mk']['if']['s']; + } + if (isset($pl['opt']['mk']['if']['a']) AND (is_array($pl['opt']['mk']['if']['a'])) AND !empty($pl['opt']['mk']['if']['a'])) { + $annots .= sprintf(' /A [%.2F %.2F]', $pl['opt']['mk']['if']['a'][0], $pl['opt']['mk']['if']['a'][1]); + } + if (isset($pl['opt']['mk']['if']['fb']) AND ($pl['opt']['mk']['if']['fb'])) { + $annots .= ' /FB true'; + } + $annots .= '>>'; + } + if (isset($pl['opt']['mk']['tp']) AND ($pl['opt']['mk']['tp'] >= 0) AND ($pl['opt']['mk']['tp'] <= 6)) { + $annots .= ' /TP '.intval($pl['opt']['mk']['tp']); + } else { + $annots .= ' /TP 0'; + } + $annots .= '>>'; + } // end MK + // --- Entries for field dictionaries --- + if (isset($this->radiobutton_groups[$n][$pl['txt']])) { + // set parent + $annots .= ' /Parent '.$this->radiobutton_groups[$n][$pl['txt']].' 0 R'; + } + if (isset($pl['opt']['t']) AND is_string($pl['opt']['t'])) { + $annots .= ' /T '.$this->_datastring($pl['opt']['t'], $annot_obj_id); + } + if (isset($pl['opt']['tu']) AND is_string($pl['opt']['tu'])) { + $annots .= ' /TU '.$this->_datastring($pl['opt']['tu'], $annot_obj_id); + } + if (isset($pl['opt']['tm']) AND is_string($pl['opt']['tm'])) { + $annots .= ' /TM '.$this->_datastring($pl['opt']['tm'], $annot_obj_id); + } + if (isset($pl['opt']['ff'])) { + if (is_array($pl['opt']['ff'])) { + // array of bit settings + $flag = 0; + foreach($pl['opt']['ff'] as $val) { + $flag += 1 << ($val - 1); + } + } else { + $flag = intval($pl['opt']['ff']); + } + $annots .= ' /Ff '.$flag; + } + if (isset($pl['opt']['maxlen'])) { + $annots .= ' /MaxLen '.intval($pl['opt']['maxlen']); + } + if (isset($pl['opt']['v'])) { + $annots .= ' /V'; + if (is_array($pl['opt']['v'])) { + foreach ($pl['opt']['v'] AS $optval) { + if (is_float($optval)) { + $optval = sprintf('%.2F', $optval); + } + $annots .= ' '.$optval; + } + } else { + $annots .= ' '.$this->_textstring($pl['opt']['v'], $annot_obj_id); + } + } + if (isset($pl['opt']['dv'])) { + $annots .= ' /DV'; + if (is_array($pl['opt']['dv'])) { + foreach ($pl['opt']['dv'] AS $optval) { + if (is_float($optval)) { + $optval = sprintf('%.2F', $optval); + } + $annots .= ' '.$optval; + } + } else { + $annots .= ' '.$this->_textstring($pl['opt']['dv'], $annot_obj_id); + } + } + if (isset($pl['opt']['rv'])) { + $annots .= ' /RV'; + if (is_array($pl['opt']['rv'])) { + foreach ($pl['opt']['rv'] AS $optval) { + if (is_float($optval)) { + $optval = sprintf('%.2F', $optval); + } + $annots .= ' '.$optval; + } + } else { + $annots .= ' '.$this->_textstring($pl['opt']['rv'], $annot_obj_id); + } + } + if (isset($pl['opt']['a']) AND !empty($pl['opt']['a'])) { + $annots .= ' /A << '.$pl['opt']['a'].' >>'; + } + if (isset($pl['opt']['aa']) AND !empty($pl['opt']['aa'])) { + $annots .= ' /AA << '.$pl['opt']['aa'].' >>'; + } + if (isset($pl['opt']['da']) AND !empty($pl['opt']['da'])) { + $annots .= ' /DA ('.$pl['opt']['da'].')'; + } + if (isset($pl['opt']['q']) AND ($pl['opt']['q'] >= 0) AND ($pl['opt']['q'] <= 2)) { + $annots .= ' /Q '.intval($pl['opt']['q']); + } + if (isset($pl['opt']['opt']) AND (is_array($pl['opt']['opt'])) AND !empty($pl['opt']['opt'])) { + $annots .= ' /Opt ['; + foreach($pl['opt']['opt'] AS $copt) { + if (is_array($copt)) { + $annots .= ' ['.$this->_textstring($copt[0], $annot_obj_id).' '.$this->_textstring($copt[1], $annot_obj_id).']'; + } else { + $annots .= ' '.$this->_textstring($copt, $annot_obj_id); + } + } + $annots .= ']'; + } + if (isset($pl['opt']['ti'])) { + $annots .= ' /TI '.intval($pl['opt']['ti']); + } + if (isset($pl['opt']['i']) AND (is_array($pl['opt']['i'])) AND !empty($pl['opt']['i'])) { + $annots .= ' /I ['; + foreach($pl['opt']['i'] AS $copt) { + $annots .= intval($copt).' '; + } + $annots .= ']'; + } + break; + } + case 'screen': { + break; + } + case 'printermark': { + break; + } + case 'trapnet': { + break; + } + case 'watermark': { + break; + } + case '3d': { + break; + } + default: { + break; + } + } + $annots .= '>>'; + // create new annotation object + $this->_out($this->_getobj($annot_obj_id)."\n".$annots."\n".'endobj'); + if ($formfield AND !isset($this->radiobutton_groups[$n][$pl['txt']])) { + // store reference of form object + $this->form_obj_id[] = $annot_obj_id; + } + } + } + } // end for each page + } + + /** + * Put appearance streams XObject used to define annotation's appearance states + * @param $w (int) annotation width + * @param $h (int) annotation height + * @param $stream (string) appearance stream + * @return int object ID + * @protected + * @since 4.8.001 (2009-09-09) + */ + protected function _putAPXObject($w=0, $h=0, $stream='') { + $stream = trim($stream); + $out = $this->_getobj()."\n"; + $this->xobjects['AX'.$this->n] = array('n' => $this->n); + $out .= '<<'; + $out .= ' /Type /XObject'; + $out .= ' /Subtype /Form'; + $out .= ' /FormType 1'; + if ($this->compress) { + $stream = gzcompress($stream); + $out .= ' /Filter /FlateDecode'; + } + $rect = sprintf('%.2F %.2F', $w, $h); + $out .= ' /BBox [0 0 '.$rect.']'; + $out .= ' /Matrix [1 0 0 1 0 0]'; + $out .= ' /Resources <<'; + $out .= ' /ProcSet [/PDF /Text]'; + $out .= ' /Font <<'; + foreach ($this->annotation_fonts as $fontkey => $fontid) { + $out .= ' /F'.$fontid.' '.$this->font_obj_ids[$fontkey].' 0 R'; + } + $out .= ' >>'; + $out .= ' >>'; + $stream = $this->_getrawstream($stream); + $out .= ' /Length '.strlen($stream); + $out .= ' >>'; + $out .= ' stream'."\n".$stream."\n".'endstream'; + $out .= "\n".'endobj'; + $this->_out($out); + return $this->n; + } + + /** + * Get ULONG from string (Big Endian 32-bit unsigned integer). + * @param $str (string) string from where to extract value + * @param $offset (int) point from where to read the data + * @return int 32 bit value + * @author Nicola Asuni + * @protected + * @since 5.2.000 (2010-06-02) + */ + protected function _getULONG(&$str, &$offset) { + $v = unpack('Ni', substr($str, $offset, 4)); + $offset += 4; + return $v['i']; + } + + /** + * Get USHORT from string (Big Endian 16-bit unsigned integer). + * @param $str (string) string from where to extract value + * @param $offset (int) point from where to read the data + * @return int 16 bit value + * @author Nicola Asuni + * @protected + * @since 5.2.000 (2010-06-02) + */ + protected function _getUSHORT(&$str, &$offset) { + $v = unpack('ni', substr($str, $offset, 2)); + $offset += 2; + return $v['i']; + } + + /** + * Get SHORT from string (Big Endian 16-bit signed integer). + * @param $str (string) string from where to extract value + * @param $offset (int) point from where to read the data + * @return int 16 bit value + * @author Nicola Asuni + * @protected + * @since 5.2.000 (2010-06-02) + */ + protected function _getSHORT(&$str, &$offset) { + $v = unpack('si', substr($str, $offset, 2)); + $offset += 2; + return $v['i']; + } + + /** + * Get BYTE from string (8-bit unsigned integer). + * @param $str (string) string from where to extract value + * @param $offset (int) point from where to read the data + * @return int 8 bit value + * @author Nicola Asuni + * @protected + * @since 5.2.000 (2010-06-02) + */ + protected function _getBYTE(&$str, &$offset) { + $v = unpack('Ci', substr($str, $offset, 1)); + ++$offset; + return $v['i']; + } + + /** + * Returns a subset of the TrueType font data without the unused glyphs. + * @param $font (string) TrueType font data + * @param $subsetchars (array) array of used characters (the glyphs to keep) + * @return string a subset of TrueType font data without the unused glyphs + * @author Nicola Asuni + * @protected + * @since 5.2.000 (2010-06-02) + */ + protected function _getTrueTypeFontSubset($font, $subsetchars) { + ksort($subsetchars); + $offset = 0; // offset position of the font data + if ($this->_getULONG($font, $offset) != 0x10000) { + // sfnt version must be 0x00010000 for TrueType version 1.0. + return $font; + } + // get number of tables + $numTables = $this->_getUSHORT($font, $offset); + // skip searchRange, entrySelector and rangeShift + $offset += 6; + // tables array + $table = array(); + // for each table + for ($i = 0; $i < $numTables; ++$i) { + // get table info + $tag = substr($font, $offset, 4); + $offset += 4; + $table[$tag] = array(); + $table[$tag]['checkSum'] = $this->_getULONG($font, $offset); + $table[$tag]['offset'] = $this->_getULONG($font, $offset); + $table[$tag]['length'] = $this->_getULONG($font, $offset); + } + // check magicNumber + $offset = $table['head']['offset'] + 12; + if ($this->_getULONG($font, $offset) != 0x5F0F3CF5) { + // magicNumber must be 0x5F0F3CF5 + return $font; + } + // get offset mode (indexToLocFormat : 0 = short, 1 = long) + $offset = $table['head']['offset'] + 50; + $short_offset = ($this->_getSHORT($font, $offset) == 0); + // get the offsets to the locations of the glyphs in the font, relative to the beginning of the glyphData table + $indexToLoc = array(); + $offset = $table['loca']['offset']; + if ($short_offset) { + // short version + $n = $table['loca']['length'] / 2; // numGlyphs + 1 + for ($i = 0; $i < $n; ++$i) { + $indexToLoc[$i] = $this->_getUSHORT($font, $offset) * 2; + } + } else { + // long version + $n = $table['loca']['length'] / 4; // numGlyphs + 1 + for ($i = 0; $i < $n; ++$i) { + $indexToLoc[$i] = $this->_getULONG($font, $offset); + } + } + // get glyphs indexes of chars from cmap table + $subsetglyphs = array(); // glyph IDs on key + $subsetglyphs[0] = true; // character codes that do not correspond to any glyph in the font should be mapped to glyph index 0 + $offset = $table['cmap']['offset'] + 2; + $numEncodingTables = $this->_getUSHORT($font, $offset); + $encodingTables = array(); + for ($i = 0; $i < $numEncodingTables; ++$i) { + $encodingTables[$i]['platformID'] = $this->_getUSHORT($font, $offset); + $encodingTables[$i]['encodingID'] = $this->_getUSHORT($font, $offset); + $encodingTables[$i]['offset'] = $this->_getULONG($font, $offset); + } + foreach ($encodingTables as $enctable) { + if (($enctable['platformID'] == 3) AND ($enctable['encodingID'] == 0)) { + $modesymbol = true; + } else { + $modesymbol = false; + } + $offset = $table['cmap']['offset'] + $enctable['offset']; + $format = $this->_getUSHORT($font, $offset); + switch ($format) { + case 0: { // Format 0: Byte encoding table + $offset += 4; // skip length and version/language + for ($k = 0; $k < 256; ++$k) { + if (isset($subsetchars[$k])) { + $g = $this->_getBYTE($font, $offset); + $subsetglyphs[$g] = $k; + } else { + ++$offset; + } + } + break; + } + case 2: { // Format 2: High-byte mapping through table + $offset += 4; // skip length and version + // to be implemented ... + break; + } + case 4: { // Format 4: Segment mapping to delta values + $length = $this->_getUSHORT($font, $offset); + $offset += 2; // skip version/language + $segCount = ($this->_getUSHORT($font, $offset) / 2); + $offset += 6; // skip searchRange, entrySelector, rangeShift + $endCount = array(); // array of end character codes for each segment + for ($k = 0; $k < $segCount; ++$k) { + $endCount[$k] = $this->_getUSHORT($font, $offset); + } + $offset += 2; // skip reservedPad + $startCount = array(); // array of start character codes for each segment + for ($k = 0; $k < $segCount; ++$k) { + $startCount[$k] = $this->_getUSHORT($font, $offset); + } + $idDelta = array(); // delta for all character codes in segment + for ($k = 0; $k < $segCount; ++$k) { + $idDelta[$k] = $this->_getUSHORT($font, $offset); + } + $idRangeOffset = array(); // Offsets into glyphIdArray or 0 + for ($k = 0; $k < $segCount; ++$k) { + $idRangeOffset[$k] = $this->_getUSHORT($font, $offset); + } + $gidlen = ($length / 2) - 8 - (4 * $segCount); + $glyphIdArray = array(); // glyph index array + for ($k = 0; $k < $gidlen; ++$k) { + $glyphIdArray[$k] = $this->_getUSHORT($font, $offset); + } + for ($k = 0; $k < $segCount; ++$k) { + for ($c = $startCount[$k]; $c <= $endCount[$k]; ++$c) { + if (isset($subsetchars[$c])) { + if ($idRangeOffset[$k] == 0) { + $g = $c; + } else { + $gid = (($idRangeOffset[$k] / 2) + ($c - $startCount[$k]) - ($segCount - $k)); + $g = $glyphIdArray[$gid]; + } + $g += ($idDelta[$k] - 65536); + if ($g < 0) { + $g = 0; + } + $subsetglyphs[$g] = $c; + } + } + } + break; + } + case 6: { // Format 6: Trimmed table mapping + $offset += 4; // skip length and version/language + $firstCode = $this->_getUSHORT($font, $offset); + $entryCount = $this->_getUSHORT($font, $offset); + for ($k = 0; $k < $entryCount; ++$k) { + $c = ($k + $firstCode); + if (isset($subsetchars[$c])) { + $g = $this->_getUSHORT($font, $offset); + $subsetglyphs[$g] = $c; + } else { + $offset += 2; + } + } + break; + } + case 8: { // Format 8: Mixed 16-bit and 32-bit coverage + $offset += 10; // skip length and version + // to be implemented ... + break; + } + case 10: { // Format 10: Trimmed array + $offset += 10; // skip length and version/language + $startCharCode = $this->_getULONG($font, $offset); + $numChars = $this->_getULONG($font, $offset); + for ($k = 0; $k < $numChars; ++$k) { + $c = ($k + $startCharCode); + if (isset($subsetchars[$c])) { + $g = $this->_getUSHORT($font, $offset); + $subsetglyphs[$g] = $c; + } else { + $offset += 2; + } + } + break; + } + case 12: { // Format 12: Segmented coverage + $offset += 10; // skip length and version/language + $nGroups = $this->_getULONG($font, $offset); + for ($k = 0; $k < $nGroups; ++$k) { + $startCharCode = $this->_getULONG($font, $offset); + $endCharCode = $this->_getULONG($font, $offset); + $startGlyphCode = $this->_getULONG($font, $offset); + for ($c = $startCharCode; $c <= $endCharCode; ++$c) { + if (isset($subsetchars[$c])) { + $subsetglyphs[$startGlyphCode] = $c; + } + ++$startGlyphCode; + } + } + break; + } + } + } + // sort glyphs by key + ksort($subsetglyphs); + // add composite glyps to $subsetglyphs and remove missing glyphs + foreach ($subsetglyphs as $key => $val) { + if (isset($indexToLoc[$key])) { + $offset = $table['glyf']['offset'] + $indexToLoc[$key]; + $numberOfContours = $this->_getSHORT($font, $offset); + if ($numberOfContours < 0) { // composite glyph + $offset += 8; // skip xMin, yMin, xMax, yMax + do { + $flags = $this->_getUSHORT($font, $offset); + $glyphIndex = $this->_getUSHORT($font, $offset); + if (!isset($subsetglyphs[$glyphIndex]) AND isset($indexToLoc[$glyphIndex])) { + // add missing glyphs + $subsetglyphs[$glyphIndex] = true; + } + // skip some bytes by case + if ($flags & 1) { + $offset += 4; + } else { + $offset += 2; + } + if ($flags & 8) { + $offset += 2; + } elseif ($flags & 64) { + $offset += 4; + } elseif ($flags & 128) { + $offset += 8; + } + } while ($flags & 32); + } + } else { + unset($subsetglyphs[$key]); + } + } + // build new glyf table with only used glyphs + $glyf = ''; + $glyfSize = 0; + // create new empty indexToLoc table + $newIndexToLoc = array_fill(0, count($indexToLoc), 0); + $goffset = 0; + foreach ($subsetglyphs as $glyphID => $char) { + if (isset($indexToLoc[$glyphID]) AND isset($indexToLoc[($glyphID + 1)])) { + $start = $indexToLoc[$glyphID]; + $length = ($indexToLoc[($glyphID + 1)] - $start); + $glyf .= substr($font, ($table['glyf']['offset'] + $start), $length); + $newIndexToLoc[$glyphID] = $goffset; + $goffset += $length; + } + } + // build new loca table + $loca = ''; + if ($short_offset) { + foreach ($newIndexToLoc as $glyphID => $offset) { + $loca .= pack('n', ($offset / 2)); + } + } else { + foreach ($newIndexToLoc as $glyphID => $offset) { + $loca .= pack('N', $offset); + } + } + // array of table names to preserve (loca and glyf tables will be added later) + //$table_names = array ('cmap', 'head', 'hhea', 'hmtx', 'maxp', 'name', 'OS/2', 'post', 'cvt ', 'fpgm', 'prep'); + // the cmap table is not needed and shall not be present, since the mapping from character codes to glyph descriptions is provided separately + $table_names = array ('head', 'hhea', 'hmtx', 'maxp', 'cvt ', 'fpgm', 'prep'); // minimum required table names + // get the tables to preserve + $offset = 12; + foreach ($table as $tag => $val) { + if (in_array($tag, $table_names)) { + $table[$tag]['data'] = substr($font, $table[$tag]['offset'], $table[$tag]['length']); + if ($tag == 'head') { + // set the checkSumAdjustment to 0 + $table[$tag]['data'] = substr($table[$tag]['data'], 0, 8)."\x0\x0\x0\x0".substr($table[$tag]['data'], 12); + } + $pad = 4 - ($table[$tag]['length'] % 4); + if ($pad != 4) { + // the length of a table must be a multiple of four bytes + $table[$tag]['length'] += $pad; + $table[$tag]['data'] .= str_repeat("\x0", $pad); + } + $table[$tag]['offset'] = $offset; + $offset += $table[$tag]['length']; + // check sum is not changed (so keep the following line commented) + //$table[$tag]['checkSum'] = $this->_getTTFtableChecksum($table[$tag]['data'], $table[$tag]['length']); + } else { + unset($table[$tag]); + } + } + // add loca + $table['loca']['data'] = $loca; + $table['loca']['length'] = strlen($loca); + $pad = 4 - ($table['loca']['length'] % 4); + if ($pad != 4) { + // the length of a table must be a multiple of four bytes + $table['loca']['length'] += $pad; + $table['loca']['data'] .= str_repeat("\x0", $pad); + } + $table['loca']['offset'] = $offset; + $table['loca']['checkSum'] = $this->_getTTFtableChecksum($table['loca']['data'], $table['loca']['length']); + $offset += $table['loca']['length']; + // add glyf + $table['glyf']['data'] = $glyf; + $table['glyf']['length'] = strlen($glyf); + $pad = 4 - ($table['glyf']['length'] % 4); + if ($pad != 4) { + // the length of a table must be a multiple of four bytes + $table['glyf']['length'] += $pad; + $table['glyf']['data'] .= str_repeat("\x0", $pad); + } + $table['glyf']['offset'] = $offset; + $table['glyf']['checkSum'] = $this->_getTTFtableChecksum($table['glyf']['data'], $table['glyf']['length']); + // rebuild font + $font = ''; + $font .= pack('N', 0x10000); // sfnt version + $numTables = count($table); + $font .= pack('n', $numTables); // numTables + $entrySelector = floor(log($numTables, 2)); + $searchRange = pow(2, $entrySelector) * 16; + $rangeShift = ($numTables * 16) - $searchRange; + $font .= pack('n', $searchRange); // searchRange + $font .= pack('n', $entrySelector); // entrySelector + $font .= pack('n', $rangeShift); // rangeShift + $offset = ($numTables * 16); + foreach ($table as $tag => $data) { + $font .= $tag; // tag + $font .= pack('N', $data['checkSum']); // checkSum + $font .= pack('N', ($data['offset'] + $offset)); // offset + $font .= pack('N', $data['length']); // length + } + foreach ($table as $data) { + $font .= $data['data']; + } + // set checkSumAdjustment on head table + $checkSumAdjustment = 0xB1B0AFBA - $this->_getTTFtableChecksum($font, strlen($font)); + $font = substr($font, 0, $table['head']['offset'] + 8).pack('N', $checkSumAdjustment).substr($font, $table['head']['offset'] + 12); + return $font; + } + + /** + * Returs the checksum of a TTF table. + * @param $table (string) table to check + * @param $length (int) lenght of table in bytes + * @return int checksum + * @author Nicola Asuni + * @protected + * @since 5.2.000 (2010-06-02) + */ + protected function _getTTFtableChecksum($table, $length) { + $sum = 0; + $tlen = ($length / 4); + $offset = 0; + for ($i = 0; $i < $tlen; ++$i) { + $v = unpack('Ni', substr($table, $offset, 4)); + $sum += $v['i']; + $offset += 4; + } + $sum = unpack('Ni', pack('N', $sum)); + return $sum['i']; + } + + /** + * Outputs font widths + * @param $font (array) font data + * @param $cidoffset (int) offset for CID values + * @return PDF command string for font widths + * @author Nicola Asuni + * @protected + * @since 4.4.000 (2008-12-07) + */ + protected function _putfontwidths($font, $cidoffset=0) { + ksort($font['cw']); + $rangeid = 0; + $range = array(); + $prevcid = -2; + $prevwidth = -1; + $interval = false; + // for each character + foreach ($font['cw'] as $cid => $width) { + $cid -= $cidoffset; + if ($font['subset'] AND ($cid > 255) AND (!isset($font['subsetchars'][$cid]))) { + // ignore the unused characters (font subsetting) + continue; + } + if ($width != $font['dw']) { + if ($cid == ($prevcid + 1)) { + // consecutive CID + if ($width == $prevwidth) { + if ($width == $range[$rangeid][0]) { + $range[$rangeid][] = $width; + } else { + array_pop($range[$rangeid]); + // new range + $rangeid = $prevcid; + $range[$rangeid] = array(); + $range[$rangeid][] = $prevwidth; + $range[$rangeid][] = $width; + } + $interval = true; + $range[$rangeid]['interval'] = true; + } else { + if ($interval) { + // new range + $rangeid = $cid; + $range[$rangeid] = array(); + $range[$rangeid][] = $width; + } else { + $range[$rangeid][] = $width; + } + $interval = false; + } + } else { + // new range + $rangeid = $cid; + $range[$rangeid] = array(); + $range[$rangeid][] = $width; + $interval = false; + } + $prevcid = $cid; + $prevwidth = $width; + } + } + // optimize ranges + $prevk = -1; + $nextk = -1; + $prevint = false; + foreach ($range as $k => $ws) { + $cws = count($ws); + if (($k == $nextk) AND (!$prevint) AND ((!isset($ws['interval'])) OR ($cws < 4))) { + if (isset($range[$k]['interval'])) { + unset($range[$k]['interval']); + } + $range[$prevk] = array_merge($range[$prevk], $range[$k]); + unset($range[$k]); + } else { + $prevk = $k; + } + $nextk = $k + $cws; + if (isset($ws['interval'])) { + if ($cws > 3) { + $prevint = true; + } else { + $prevint = false; + } + unset($range[$k]['interval']); + --$nextk; + } else { + $prevint = false; + } + } + // output data + $w = ''; + foreach ($range as $k => $ws) { + if (count(array_count_values($ws)) == 1) { + // interval mode is more compact + $w .= ' '.$k.' '.($k + count($ws) - 1).' '.$ws[0]; + } else { + // range mode + $w .= ' '.$k.' [ '.implode(' ', $ws).' ]'; + } + } + return '/W ['.$w.' ]'; + } + + /** + * Output fonts. + * @author Nicola Asuni + * @protected + */ + protected function _putfonts() { + $nf = $this->n; + foreach ($this->diffs as $diff) { + //Encodings + $this->_newobj(); + $this->_out('<< /Type /Encoding /BaseEncoding /WinAnsiEncoding /Differences ['.$diff.'] >>'."\n".'endobj'); + } + $mqr = $this->get_mqr(); + $this->set_mqr(false); + foreach ($this->FontFiles as $file => $info) { + // search and get font file to embedd + $fontdir = $info['fontdir']; + $file = strtolower($file); + $fontfile = ''; + // search files on various directories + if (($fontdir !== false) AND file_exists($fontdir.$file)) { + $fontfile = $fontdir.$file; + } elseif (file_exists($this->_getfontpath().$file)) { + $fontfile = $this->_getfontpath().$file; + } elseif (file_exists($file)) { + $fontfile = $file; + } + if (!$this->empty_string($fontfile)) { + $font = file_get_contents($fontfile); + $compressed = (substr($file, -2) == '.z'); + if ((!$compressed) AND (isset($info['length2']))) { + $header = (ord($font{0}) == 128); + if ($header) { + //Strip first binary header + $font = substr($font, 6); + } + if ($header AND (ord($font{$info['length1']}) == 128)) { + //Strip second binary header + $font = substr($font, 0, $info['length1']).substr($font, ($info['length1'] + 6)); + } + } elseif ($info['subset'] AND ((!$compressed) OR ($compressed AND function_exists('gzcompress')))) { + if ($compressed) { + // uncompress font + $font = gzuncompress($font); + } + // merge subset characters + $subsetchars = array(); // used chars + foreach ($info['fontkeys'] as $fontkey) { + $fontinfo = $this->getFontBuffer($fontkey); + $subsetchars += $fontinfo['subsetchars']; + } + $font = $this->_getTrueTypeFontSubset($font, $subsetchars); + if ($compressed) { + // recompress font + $font = gzcompress($font); + } + } + $this->_newobj(); + $this->FontFiles[$file]['n'] = $this->n; + $stream = $this->_getrawstream($font); + $out = '<< /Length '.strlen($stream); + if ($compressed) { + $out .= ' /Filter /FlateDecode'; + } + $out .= ' /Length1 '.$info['length1']; + if (isset($info['length2'])) { + $out .= ' /Length2 '.$info['length2'].' /Length3 0'; + } + $out .= ' >>'; + $out .= ' stream'."\n".$stream."\n".'endstream'; + $out .= "\n".'endobj'; + $this->_out($out); + } + } + $this->set_mqr($mqr); + foreach ($this->fontkeys as $k) { + //Font objects + $font = $this->getFontBuffer($k); + $type = $font['type']; + $name = $font['name']; + if ($type == 'core') { + // standard core font + $out = $this->_getobj($this->font_obj_ids[$k])."\n"; + $out .= '<annotation_fonts[$k] = $font['i']; + } + $out .= ' >>'; + $out .= "\n".'endobj'; + $this->_out($out); + } elseif (($type == 'Type1') OR ($type == 'TrueType')) { + // additional Type1 or TrueType font + $out = $this->_getobj($this->font_obj_ids[$k])."\n"; + $out .= '<n + 1).' 0 R'; + $out .= ' /FontDescriptor '.($this->n + 2).' 0 R'; + if ($font['enc']) { + if (isset($font['diff'])) { + $out .= ' /Encoding '.($nf + $font['diff']).' 0 R'; + } else { + $out .= ' /Encoding /WinAnsiEncoding'; + } + } + $out .= ' >>'; + $out .= "\n".'endobj'; + $this->_out($out); + // Widths + $this->_newobj(); + $cw = &$font['cw']; + $s = '['; + for ($i = 32; $i < 256; ++$i) { + $s .= $cw[$i].' '; + } + $s .= ']'; + $s .= "\n".'endobj'; + $this->_out($s); + //Descriptor + $this->_newobj(); + $s = '< $fdv) { + if(is_float($fdv)) { + $fdv = sprintf('%.3F', $fdv); + } + $s .= ' /'.$fdk.' '.$fdv.''; + } + if (!$this->empty_string($font['file'])) { + $s .= ' /FontFile'.($type == 'Type1' ? '' : '2').' '.$this->FontFiles[$font['file']]['n'].' 0 R'; + } + $s .= '>>'; + $s .= "\n".'endobj'; + $this->_out($s); + } else { + // additional types + $mtd = '_put'.strtolower($type); + if (!method_exists($this, $mtd)) { + $this->Error('Unsupported font type: '.$type); + } + $this->$mtd($font); + } + } + } + + /** + * Adds unicode fonts.
        + * Based on PDF Reference 1.3 (section 5) + * @param $font (array) font data + * @protected + * @author Nicola Asuni + * @since 1.52.0.TC005 (2005-01-05) + */ + protected function _puttruetypeunicode($font) { + $fontname = ''; + if ($font['subset']) { + // change name for font subsetting + $subtag = sprintf('%06u', $font['i']); + $subtag = strtr($subtag, '0123456789', 'ABCDEFGHIJ'); + $fontname .= $subtag.'+'; + } + $fontname .= $font['name']; + // Type0 Font + // A composite font composed of other fonts, organized hierarchically + $out = $this->_getobj($this->font_obj_ids[$font['fontkey']])."\n"; + $out .= '<< /Type /Font'; + $out .= ' /Subtype /Type0'; + $out .= ' /BaseFont /'.$fontname; + $out .= ' /Name /F'.$font['i']; + $out .= ' /Encoding /'.$font['enc']; + $out .= ' /ToUnicode '.($this->n + 1).' 0 R'; + $out .= ' /DescendantFonts ['.($this->n + 2).' 0 R]'; + $out .= ' >>'; + $out .= "\n".'endobj'; + $this->_out($out); + // ToUnicode map for Identity-H + $stream = "/CIDInit /ProcSet findresource begin\n"; + $stream .= "12 dict begin\n"; + $stream .= "begincmap\n"; + $stream .= "/CIDSystemInfo << /Registry (Adobe) /Ordering (UCS) /Supplement 0 >> def\n"; + $stream .= "/CMapName /Adobe-Identity-UCS def\n"; + $stream .= "/CMapType 2 def\n"; + $stream .= "/WMode 0 def\n"; + $stream .= "1 begincodespacerange\n"; + $stream .= "<0000> \n"; + $stream .= "endcodespacerange\n"; + $stream .= "100 beginbfrange\n"; + $stream .= "<0000> <00ff> <0000>\n"; + $stream .= "<0100> <01ff> <0100>\n"; + $stream .= "<0200> <02ff> <0200>\n"; + $stream .= "<0300> <03ff> <0300>\n"; + $stream .= "<0400> <04ff> <0400>\n"; + $stream .= "<0500> <05ff> <0500>\n"; + $stream .= "<0600> <06ff> <0600>\n"; + $stream .= "<0700> <07ff> <0700>\n"; + $stream .= "<0800> <08ff> <0800>\n"; + $stream .= "<0900> <09ff> <0900>\n"; + $stream .= "<0a00> <0aff> <0a00>\n"; + $stream .= "<0b00> <0bff> <0b00>\n"; + $stream .= "<0c00> <0cff> <0c00>\n"; + $stream .= "<0d00> <0dff> <0d00>\n"; + $stream .= "<0e00> <0eff> <0e00>\n"; + $stream .= "<0f00> <0fff> <0f00>\n"; + $stream .= "<1000> <10ff> <1000>\n"; + $stream .= "<1100> <11ff> <1100>\n"; + $stream .= "<1200> <12ff> <1200>\n"; + $stream .= "<1300> <13ff> <1300>\n"; + $stream .= "<1400> <14ff> <1400>\n"; + $stream .= "<1500> <15ff> <1500>\n"; + $stream .= "<1600> <16ff> <1600>\n"; + $stream .= "<1700> <17ff> <1700>\n"; + $stream .= "<1800> <18ff> <1800>\n"; + $stream .= "<1900> <19ff> <1900>\n"; + $stream .= "<1a00> <1aff> <1a00>\n"; + $stream .= "<1b00> <1bff> <1b00>\n"; + $stream .= "<1c00> <1cff> <1c00>\n"; + $stream .= "<1d00> <1dff> <1d00>\n"; + $stream .= "<1e00> <1eff> <1e00>\n"; + $stream .= "<1f00> <1fff> <1f00>\n"; + $stream .= "<2000> <20ff> <2000>\n"; + $stream .= "<2100> <21ff> <2100>\n"; + $stream .= "<2200> <22ff> <2200>\n"; + $stream .= "<2300> <23ff> <2300>\n"; + $stream .= "<2400> <24ff> <2400>\n"; + $stream .= "<2500> <25ff> <2500>\n"; + $stream .= "<2600> <26ff> <2600>\n"; + $stream .= "<2700> <27ff> <2700>\n"; + $stream .= "<2800> <28ff> <2800>\n"; + $stream .= "<2900> <29ff> <2900>\n"; + $stream .= "<2a00> <2aff> <2a00>\n"; + $stream .= "<2b00> <2bff> <2b00>\n"; + $stream .= "<2c00> <2cff> <2c00>\n"; + $stream .= "<2d00> <2dff> <2d00>\n"; + $stream .= "<2e00> <2eff> <2e00>\n"; + $stream .= "<2f00> <2fff> <2f00>\n"; + $stream .= "<3000> <30ff> <3000>\n"; + $stream .= "<3100> <31ff> <3100>\n"; + $stream .= "<3200> <32ff> <3200>\n"; + $stream .= "<3300> <33ff> <3300>\n"; + $stream .= "<3400> <34ff> <3400>\n"; + $stream .= "<3500> <35ff> <3500>\n"; + $stream .= "<3600> <36ff> <3600>\n"; + $stream .= "<3700> <37ff> <3700>\n"; + $stream .= "<3800> <38ff> <3800>\n"; + $stream .= "<3900> <39ff> <3900>\n"; + $stream .= "<3a00> <3aff> <3a00>\n"; + $stream .= "<3b00> <3bff> <3b00>\n"; + $stream .= "<3c00> <3cff> <3c00>\n"; + $stream .= "<3d00> <3dff> <3d00>\n"; + $stream .= "<3e00> <3eff> <3e00>\n"; + $stream .= "<3f00> <3fff> <3f00>\n"; + $stream .= "<4000> <40ff> <4000>\n"; + $stream .= "<4100> <41ff> <4100>\n"; + $stream .= "<4200> <42ff> <4200>\n"; + $stream .= "<4300> <43ff> <4300>\n"; + $stream .= "<4400> <44ff> <4400>\n"; + $stream .= "<4500> <45ff> <4500>\n"; + $stream .= "<4600> <46ff> <4600>\n"; + $stream .= "<4700> <47ff> <4700>\n"; + $stream .= "<4800> <48ff> <4800>\n"; + $stream .= "<4900> <49ff> <4900>\n"; + $stream .= "<4a00> <4aff> <4a00>\n"; + $stream .= "<4b00> <4bff> <4b00>\n"; + $stream .= "<4c00> <4cff> <4c00>\n"; + $stream .= "<4d00> <4dff> <4d00>\n"; + $stream .= "<4e00> <4eff> <4e00>\n"; + $stream .= "<4f00> <4fff> <4f00>\n"; + $stream .= "<5000> <50ff> <5000>\n"; + $stream .= "<5100> <51ff> <5100>\n"; + $stream .= "<5200> <52ff> <5200>\n"; + $stream .= "<5300> <53ff> <5300>\n"; + $stream .= "<5400> <54ff> <5400>\n"; + $stream .= "<5500> <55ff> <5500>\n"; + $stream .= "<5600> <56ff> <5600>\n"; + $stream .= "<5700> <57ff> <5700>\n"; + $stream .= "<5800> <58ff> <5800>\n"; + $stream .= "<5900> <59ff> <5900>\n"; + $stream .= "<5a00> <5aff> <5a00>\n"; + $stream .= "<5b00> <5bff> <5b00>\n"; + $stream .= "<5c00> <5cff> <5c00>\n"; + $stream .= "<5d00> <5dff> <5d00>\n"; + $stream .= "<5e00> <5eff> <5e00>\n"; + $stream .= "<5f00> <5fff> <5f00>\n"; + $stream .= "<6000> <60ff> <6000>\n"; + $stream .= "<6100> <61ff> <6100>\n"; + $stream .= "<6200> <62ff> <6200>\n"; + $stream .= "<6300> <63ff> <6300>\n"; + $stream .= "endbfrange\n"; + $stream .= "100 beginbfrange\n"; + $stream .= "<6400> <64ff> <6400>\n"; + $stream .= "<6500> <65ff> <6500>\n"; + $stream .= "<6600> <66ff> <6600>\n"; + $stream .= "<6700> <67ff> <6700>\n"; + $stream .= "<6800> <68ff> <6800>\n"; + $stream .= "<6900> <69ff> <6900>\n"; + $stream .= "<6a00> <6aff> <6a00>\n"; + $stream .= "<6b00> <6bff> <6b00>\n"; + $stream .= "<6c00> <6cff> <6c00>\n"; + $stream .= "<6d00> <6dff> <6d00>\n"; + $stream .= "<6e00> <6eff> <6e00>\n"; + $stream .= "<6f00> <6fff> <6f00>\n"; + $stream .= "<7000> <70ff> <7000>\n"; + $stream .= "<7100> <71ff> <7100>\n"; + $stream .= "<7200> <72ff> <7200>\n"; + $stream .= "<7300> <73ff> <7300>\n"; + $stream .= "<7400> <74ff> <7400>\n"; + $stream .= "<7500> <75ff> <7500>\n"; + $stream .= "<7600> <76ff> <7600>\n"; + $stream .= "<7700> <77ff> <7700>\n"; + $stream .= "<7800> <78ff> <7800>\n"; + $stream .= "<7900> <79ff> <7900>\n"; + $stream .= "<7a00> <7aff> <7a00>\n"; + $stream .= "<7b00> <7bff> <7b00>\n"; + $stream .= "<7c00> <7cff> <7c00>\n"; + $stream .= "<7d00> <7dff> <7d00>\n"; + $stream .= "<7e00> <7eff> <7e00>\n"; + $stream .= "<7f00> <7fff> <7f00>\n"; + $stream .= "<8000> <80ff> <8000>\n"; + $stream .= "<8100> <81ff> <8100>\n"; + $stream .= "<8200> <82ff> <8200>\n"; + $stream .= "<8300> <83ff> <8300>\n"; + $stream .= "<8400> <84ff> <8400>\n"; + $stream .= "<8500> <85ff> <8500>\n"; + $stream .= "<8600> <86ff> <8600>\n"; + $stream .= "<8700> <87ff> <8700>\n"; + $stream .= "<8800> <88ff> <8800>\n"; + $stream .= "<8900> <89ff> <8900>\n"; + $stream .= "<8a00> <8aff> <8a00>\n"; + $stream .= "<8b00> <8bff> <8b00>\n"; + $stream .= "<8c00> <8cff> <8c00>\n"; + $stream .= "<8d00> <8dff> <8d00>\n"; + $stream .= "<8e00> <8eff> <8e00>\n"; + $stream .= "<8f00> <8fff> <8f00>\n"; + $stream .= "<9000> <90ff> <9000>\n"; + $stream .= "<9100> <91ff> <9100>\n"; + $stream .= "<9200> <92ff> <9200>\n"; + $stream .= "<9300> <93ff> <9300>\n"; + $stream .= "<9400> <94ff> <9400>\n"; + $stream .= "<9500> <95ff> <9500>\n"; + $stream .= "<9600> <96ff> <9600>\n"; + $stream .= "<9700> <97ff> <9700>\n"; + $stream .= "<9800> <98ff> <9800>\n"; + $stream .= "<9900> <99ff> <9900>\n"; + $stream .= "<9a00> <9aff> <9a00>\n"; + $stream .= "<9b00> <9bff> <9b00>\n"; + $stream .= "<9c00> <9cff> <9c00>\n"; + $stream .= "<9d00> <9dff> <9d00>\n"; + $stream .= "<9e00> <9eff> <9e00>\n"; + $stream .= "<9f00> <9fff> <9f00>\n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= "endbfrange\n"; + $stream .= "56 beginbfrange\n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= " \n"; + $stream .= "endbfrange\n"; + $stream .= "endcmap\n"; + $stream .= "CMapName currentdict /CMap defineresource pop\n"; + $stream .= "end\n"; + $stream .= "end"; + // ToUnicode Object + $this->_newobj(); + $stream = ($this->compress) ? gzcompress($stream) : $stream; + $filter = ($this->compress) ? '/Filter /FlateDecode ' : ''; + $stream = $this->_getrawstream($stream); + $this->_out('<<'.$filter.'/Length '.strlen($stream).'>> stream'."\n".$stream."\n".'endstream'."\n".'endobj'); + // CIDFontType2 + // A CIDFont whose glyph descriptions are based on TrueType font technology + $oid = $this->_newobj(); + $out = '<< /Type /Font'; + $out .= ' /Subtype /CIDFontType2'; + $out .= ' /BaseFont /'.$fontname; + // A dictionary containing entries that define the character collection of the CIDFont. + $cidinfo = '/Registry '.$this->_datastring($font['cidinfo']['Registry'], $oid); + $cidinfo .= ' /Ordering '.$this->_datastring($font['cidinfo']['Ordering'], $oid); + $cidinfo .= ' /Supplement '.$font['cidinfo']['Supplement']; + $out .= ' /CIDSystemInfo << '.$cidinfo.' >>'; + $out .= ' /FontDescriptor '.($this->n + 1).' 0 R'; + $out .= ' /DW '.$font['dw']; // default width + $out .= "\n".$this->_putfontwidths($font, 0); + if (isset($font['ctg']) AND (!$this->empty_string($font['ctg']))) { + $out .= "\n".'/CIDToGIDMap '.($this->n + 2).' 0 R'; + } + $out .= ' >>'; + $out .= "\n".'endobj'; + $this->_out($out); + // Font descriptor + // A font descriptor describing the CIDFont default metrics other than its glyph widths + $this->_newobj(); + $out = '<< /Type /FontDescriptor'; + $out .= ' /FontName /'.$fontname; + foreach ($font['desc'] as $key => $value) { + if(is_float($value)) { + $value = sprintf('%.3F', $value); + } + $out .= ' /'.$key.' '.$value; + } + $fontdir = false; + if (!$this->empty_string($font['file'])) { + // A stream containing a TrueType font + $out .= ' /FontFile2 '.$this->FontFiles[$font['file']]['n'].' 0 R'; + $fontdir = $this->FontFiles[$font['file']]['fontdir']; + } + $out .= ' >>'; + $out .= "\n".'endobj'; + $this->_out($out); + if (isset($font['ctg']) AND (!$this->empty_string($font['ctg']))) { + $this->_newobj(); + // Embed CIDToGIDMap + // A specification of the mapping from CIDs to glyph indices + // search and get CTG font file to embedd + $ctgfile = strtolower($font['ctg']); + // search and get ctg font file to embedd + $fontfile = ''; + // search files on various directories + if (($fontdir !== false) AND file_exists($fontdir.$ctgfile)) { + $fontfile = $fontdir.$ctgfile; + } elseif (file_exists($this->_getfontpath().$ctgfile)) { + $fontfile = $this->_getfontpath().$ctgfile; + } elseif (file_exists($ctgfile)) { + $fontfile = $ctgfile; + } + if ($this->empty_string($fontfile)) { + $this->Error('Font file not found: '.$ctgfile); + } + $stream = $this->_getrawstream(file_get_contents($fontfile)); + $out = '<< /Length '.strlen($stream).''; + if (substr($fontfile, -2) == '.z') { // check file extension + // Decompresses data encoded using the public-domain + // zlib/deflate compression method, reproducing the + // original text or binary data + $out .= ' /Filter /FlateDecode'; + } + $out .= ' >>'; + $out .= ' stream'."\n".$stream."\n".'endstream'; + $out .= "\n".'endobj'; + $this->_out($out); + } + } + + /** + * Output CID-0 fonts. + * A Type 0 CIDFont contains glyph descriptions based on the Adobe Type 1 font format + * @param $font (array) font data + * @protected + * @author Andrew Whitehead, Nicola Asuni, Yukihiro Nakadaira + * @since 3.2.000 (2008-06-23) + */ + protected function _putcidfont0($font) { + $cidoffset = 0; + if (!isset($font['cw'][1])) { + $cidoffset = 31; + } + if (isset($font['cidinfo']['uni2cid'])) { + // convert unicode to cid. + $uni2cid = $font['cidinfo']['uni2cid']; + $cw = array(); + foreach ($font['cw'] as $uni => $width) { + if (isset($uni2cid[$uni])) { + $cw[($uni2cid[$uni] + $cidoffset)] = $width; + } elseif ($uni < 256) { + $cw[$uni] = $width; + } // else unknown character + } + $font = array_merge($font, array('cw' => $cw)); + } + $name = $font['name']; + $enc = $font['enc']; + if ($enc) { + $longname = $name.'-'.$enc; + } else { + $longname = $name; + } + $out = $this->_getobj($this->font_obj_ids[$font['fontkey']])."\n"; + $out .= '<n + 1).' 0 R]'; + $out .= ' >>'; + $out .= "\n".'endobj'; + $this->_out($out); + $oid = $this->_newobj(); + $out = '<_datastring($font['cidinfo']['Registry'], $oid); + $cidinfo .= ' /Ordering '.$this->_datastring($font['cidinfo']['Ordering'], $oid); + $cidinfo .= ' /Supplement '.$font['cidinfo']['Supplement']; + $out .= ' /CIDSystemInfo <<'.$cidinfo.'>>'; + $out .= ' /FontDescriptor '.($this->n + 1).' 0 R'; + $out .= ' /DW '.$font['dw']; + $out .= "\n".$this->_putfontwidths($font, $cidoffset); + $out .= ' >>'; + $out .= "\n".'endobj'; + $this->_out($out); + $this->_newobj(); + $s = '< $v) { + if ($k != 'Style') { + if(is_float($v)) { + $v = sprintf('%.3F', $v); + } + $s .= ' /'.$k.' '.$v.''; + } + } + $s .= '>>'; + $s .= "\n".'endobj'; + $this->_out($s); + } + + /** + * Output images. + * @protected + */ + protected function _putimages() { + $filter = ($this->compress) ? '/Filter /FlateDecode ' : ''; + foreach ($this->imagekeys as $file) { + $info = $this->getImageBuffer($file); + $oid = $this->_newobj(); + $this->xobjects['I'.$info['i']] = array('n' => $oid); + $this->setImageSubBuffer($file, 'n', $this->n); + $out = '<n - 1).' 0 R'; + } + if ($info['cs'] == 'Indexed') { + $out .= ' /ColorSpace [/Indexed /DeviceRGB '.((strlen($info['pal']) / 3) - 1).' '.($this->n + 1).' 0 R]'; + } else { + $out .= ' /ColorSpace /'.$info['cs']; + if ($info['cs'] == 'DeviceCMYK') { + $out .= ' /Decode [1 0 1 0 1 0 1 0]'; + } + } + $out .= ' /BitsPerComponent '.$info['bpc']; + if (isset($info['f'])) { + $out .= ' /Filter /'.$info['f']; + } + if (isset($info['parms'])) { + $out .= ' '.$info['parms']; + } + if (isset($info['trns']) AND is_array($info['trns'])) { + $trns=''; + $count_info = count($info['trns']); + for ($i=0; $i < $count_info; ++$i) { + $trns .= $info['trns'][$i].' '.$info['trns'][$i].' '; + } + $out .= ' /Mask ['.$trns.']'; + } + $stream = $this->_getrawstream($info['data']); + $out .= ' /Length '.strlen($stream).' >>'; + $out .= ' stream'."\n".$stream."\n".'endstream'; + $out .= "\n".'endobj'; + $this->_out($out); + //Palette + if ($info['cs'] == 'Indexed') { + $this->_newobj(); + $pal = ($this->compress) ? gzcompress($info['pal']) : $info['pal']; + $pal = $this->_getrawstream($pal); + $this->_out('<<'.$filter.'/Length '.strlen($pal).'>> stream'."\n".$pal."\n".'endstream'."\n".'endobj'); + } + } + } + + /** + * Output Form XObjects Templates. + * @author Nicola Asuni + * @since 5.8.017 (2010-08-24) + * @protected + * @see startTemplate(), endTemplate(), printTemplate() + */ + protected function _putxobjects() { + foreach ($this->xobjects as $key => $data) { + if (isset($data['outdata'])) { + $stream = trim($data['outdata']); + $out = $this->_getobj($data['n'])."\n"; + $out .= '<<'; + $out .= ' /Type /XObject'; + $out .= ' /Subtype /Form'; + $out .= ' /FormType 1'; + if ($this->compress) { + $stream = gzcompress($stream); + $out .= ' /Filter /FlateDecode'; + } + $out .= sprintf(' /BBox [%.2F %.2F %.2F %.2F]', ($data['x'] * $this->k), (-$data['y'] * $this->k), (($data['w'] + $data['x']) * $this->k), (($data['h'] - $data['y']) * $this->k)); + $out .= ' /Matrix [1 0 0 1 0 0]'; + $out .= ' /Resources <<'; + $out .= ' /ProcSet [/PDF /Text /ImageB /ImageC /ImageI]'; + // fonts + if (!empty($data['fonts'])) { + $out .= ' /Font <<'; + foreach ($data['fonts'] as $fontkey => $fontid) { + $out .= ' /F'.$fontid.' '.$this->font_obj_ids[$fontkey].' 0 R'; + } + $out .= ' >>'; + } + // images or nested xobjects + if (!empty($data['images']) OR !empty($data['xobjects'])) { + $out .= ' /XObject <<'; + foreach ($data['images'] as $imgid) { + $out .= ' /I'.$imgid.' '.$this->xobjects['I'.$imgid]['n'].' 0 R'; + } + foreach ($data['xobjects'] as $sub_id => $sub_objid) { + $out .= ' /'.$sub_id.' '.$sub_objid['n'].' 0 R'; + } + $out .= ' >>'; + } + $out .= ' >>'; + $stream = $this->_getrawstream($stream); + $out .= ' /Length '.strlen($stream); + $out .= ' >>'; + $out .= ' stream'."\n".$stream."\n".'endstream'; + $out .= "\n".'endobj'; + $this->_out($out); + } + } + } + + /** + * Output Spot Colors Resources. + * @protected + * @since 4.0.024 (2008-09-12) + */ + protected function _putspotcolors() { + foreach ($this->spot_colors as $name => $color) { + $this->_newobj(); + $this->spot_colors[$name]['n'] = $this->n; + $out = '[/Separation /'.str_replace(' ', '#20', $name); + $out .= ' /DeviceCMYK <<'; + $out .= ' /Range [0 1 0 1 0 1 0 1] /C0 [0 0 0 0]'; + $out .= ' '.sprintf('/C1 [%.4F %.4F %.4F %.4F] ', ($color['c'] / 100), ($color['m'] / 100), ($color['y'] / 100), ($color['k'] / 100)); + $out .= ' /FunctionType 2 /Domain [0 1] /N 1>>]'; + $out .= "\n".'endobj'; + $this->_out($out); + } + } + + /** + * Return XObjects Dictionary. + * @return string XObjects dictionary + * @protected + * @since 5.8.014 (2010-08-23) + */ + protected function _getxobjectdict() { + $out = ''; + foreach ($this->xobjects as $id => $objid) { + $out .= ' /'.$id.' '.$objid['n'].' 0 R'; + } + return $out; + } + + /** + * Output Resources Dictionary. + * @protected + */ + protected function _putresourcedict() { + $out = $this->_getobj(2)."\n"; + $out .= '<< /ProcSet [/PDF /Text /ImageB /ImageC /ImageI]'; + $out .= ' /Font <<'; + foreach ($this->fontkeys as $fontkey) { + $font = $this->getFontBuffer($fontkey); + $out .= ' /F'.$font['i'].' '.$font['n'].' 0 R'; + } + $out .= ' >>'; + $out .= ' /XObject <<'; + $out .= $this->_getxobjectdict(); + $out .= ' >>'; + // visibility + $out .= ' /Properties <n_ocg_print.' 0 R /OC2 '.$this->n_ocg_view.' 0 R>>'; + // transparency + $out .= ' /ExtGState <<'; + foreach ($this->extgstates as $k => $extgstate) { + if (isset($extgstate['name'])) { + $out .= ' /'.$extgstate['name']; + } else { + $out .= ' /GS'.$k; + } + $out .= ' '.$extgstate['n'].' 0 R'; + } + $out .= ' >>'; + // gradient patterns + if (isset($this->gradients) AND (count($this->gradients) > 0)) { + $out .= ' /Pattern <<'; + foreach ($this->gradients as $id => $grad) { + $out .= ' /p'.$id.' '.$grad['pattern'].' 0 R'; + } + $out .= ' >>'; + } + // gradient shadings + if (isset($this->gradients) AND (count($this->gradients) > 0)) { + $out .= ' /Shading <<'; + foreach ($this->gradients as $id => $grad) { + $out .= ' /Sh'.$id.' '.$grad['id'].' 0 R'; + } + $out .= ' >>'; + } + // spot colors + if (isset($this->spot_colors) AND (count($this->spot_colors) > 0)) { + $out .= ' /ColorSpace <<'; + foreach ($this->spot_colors as $color) { + $out .= ' /CS'.$color['i'].' '.$color['n'].' 0 R'; + } + $out .= ' >>'; + } + $out .= ' >>'; + $out .= "\n".'endobj'; + $this->_out($out); + } + + /** + * Output Resources. + * @protected + */ + protected function _putresources() { + $this->_putextgstates(); + $this->_putocg(); + $this->_putfonts(); + $this->_putimages(); + $this->_putxobjects(); + $this->_putspotcolors(); + $this->_putshaders(); + $this->_putresourcedict(); + $this->_putbookmarks(); + $this->_putEmbeddedFiles(); + $this->_putannotsobjs(); + $this->_putjavascript(); + $this->_putencryption(); + } + + /** + * Adds some Metadata information (Document Information Dictionary) + * (see Chapter 14.3.3 Document Information Dictionary of PDF32000_2008.pdf Reference) + * @return int object id + * @protected + */ + protected function _putinfo() { + $oid = $this->_newobj(); + $out = '<<'; + // store current isunicode value + $prev_isunicode = $this->isunicode; + if ($this->docinfounicode) { + $this->isunicode = true; + } + if (!$this->empty_string($this->title)) { + // The document's title. + $out .= ' /Title '.$this->_textstring($this->title, $oid); + } + if (!$this->empty_string($this->author)) { + // The name of the person who created the document. + $out .= ' /Author '.$this->_textstring($this->author, $oid); + } + if (!$this->empty_string($this->subject)) { + // The subject of the document. + $out .= ' /Subject '.$this->_textstring($this->subject, $oid); + } + if (!$this->empty_string($this->keywords)) { + // Keywords associated with the document. + $out .= ' /Keywords '.$this->_textstring($this->keywords.' TCPDF', $oid); + } + if (!$this->empty_string($this->creator)) { + // If the document was converted to PDF from another format, the name of the conforming product that created the original document from which it was converted. + $out .= ' /Creator '.$this->_textstring($this->creator, $oid); + } + // restore previous isunicode value + $this->isunicode = $prev_isunicode; + // default producer + $out .= ' /Producer '.$this->_textstring("\x54\x43\x50\x44\x46\x20".$this->tcpdf_version."\x20\x28\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\x74\x63\x70\x64\x66\x2e\x6f\x72\x67\x29", $oid); + // The date and time the document was created, in human-readable form + $out .= ' /CreationDate '.$this->_datestring(); + // The date and time the document was most recently modified, in human-readable form + $out .= ' /ModDate '.$this->_datestring(); + // A name object indicating whether the document has been modified to include trapping information + $out .= ' /Trapped /False'; + $out .= ' >>'; + $out .= "\n".'endobj'; + $this->_out($out); + return $oid; + } + + /** + * Output Catalog. + * @return int object id + * @protected + */ + protected function _putcatalog() { + $oid = $this->_newobj(); + $out = '<< /Type /Catalog'; + $out .= ' /Pages 1 0 R'; + if ($this->ZoomMode == 'fullpage') { + $out .= ' /OpenAction ['.$this->page_obj_id[1].' 0 R /Fit]'; + } elseif ($this->ZoomMode == 'fullwidth') { + $out .= ' /OpenAction ['.$this->page_obj_id[1].' 0 R /FitH null]'; + } elseif ($this->ZoomMode == 'real') { + $out .= ' /OpenAction ['.$this->page_obj_id[1].' 0 R /XYZ null null 1]'; + } elseif (!is_string($this->ZoomMode)) { + $out .= sprintf(' /OpenAction ['.$this->page_obj_id[1].' 0 R /XYZ null null %.2F]',($this->ZoomMode / 100)); + } + if (isset($this->LayoutMode) AND (!$this->empty_string($this->LayoutMode))) { + $out .= ' /PageLayout /'.$this->LayoutMode; + } + if (isset($this->PageMode) AND (!$this->empty_string($this->PageMode))) { + $out .= ' /PageMode /'.$this->PageMode; + } + if (isset($this->l['a_meta_language'])) { + $out .= ' /Lang '.$this->_textstring($this->l['a_meta_language'], $oid); + } + $out .= ' /Names <<'; + if ((!empty($this->javascript)) OR (!empty($this->js_objects))) { + $out .= ' /JavaScript '.($this->n_js).' 0 R'; + } + $out .= ' >>'; + if (count($this->outlines) > 0) { + $out .= ' /Outlines '.$this->OutlineRoot.' 0 R'; + $out .= ' /PageMode /UseOutlines'; + } + $out .= ' '.$this->_putviewerpreferences(); + $p = $this->n_ocg_print.' 0 R'; + $v = $this->n_ocg_view.' 0 R'; + $as = '<< /Event /Print /OCGs ['.$p.' '.$v.'] /Category [/Print] >> << /Event /View /OCGs ['.$p.' '.$v.'] /Category [/View] >>'; + $out .= ' /OCProperties << /OCGs ['.$p.' '.$v.'] /D << /ON ['.$p.'] /OFF ['.$v.'] /AS ['.$as.'] >> >>'; + // AcroForm + if (!empty($this->form_obj_id) OR ($this->sign AND isset($this->signature_data['cert_type']))) { + $out .= ' /AcroForm <<'; + $objrefs = ''; + if ($this->sign AND isset($this->signature_data['cert_type'])) { + $objrefs .= $this->sig_obj_id.' 0 R'; + } + if (!empty($this->form_obj_id)) { + foreach($this->form_obj_id as $objid) { + $objrefs .= ' '.$objid.' 0 R'; + } + } + $out .= ' /Fields ['.$objrefs.']'; + if (!empty($this->form_obj_id) AND !$this->sign) { + // It's better to turn off this value and set the appearance stream for each annotation (/AP) to avoid conflicts with signature fields. + $out .= ' /NeedAppearances true'; + } + if ($this->sign AND isset($this->signature_data['cert_type'])) { + if ($this->signature_data['cert_type'] > 0) { + $out .= ' /SigFlags 3'; + } else { + $out .= ' /SigFlags 1'; + } + } + //$out .= ' /CO '; + if (isset($this->annotation_fonts) AND !empty($this->annotation_fonts)) { + $out .= ' /DR <<'; + $out .= ' /Font <<'; + foreach ($this->annotation_fonts as $fontkey => $fontid) { + $out .= ' /F'.$fontid.' '.$this->font_obj_ids[$fontkey].' 0 R'; + } + $out .= ' >> >>'; + } + $font = $this->getFontBuffer('helvetica'); + $out .= ' /DA (/F'.$font['i'].' 0 Tf 0 g)'; + $out .= ' /Q '.(($this->rtl)?'2':'0'); + //$out .= ' /XFA '; + $out .= ' >>'; + // signatures + if ($this->sign AND isset($this->signature_data['cert_type'])) { + if ($this->signature_data['cert_type'] > 0) { + $out .= ' /Perms << /DocMDP '.($this->sig_obj_id + 1).' 0 R >>'; + } else { + $out .= ' /Perms << /UR3 '.($this->sig_obj_id + 1).' 0 R >>'; + } + } + } + $out .= ' >>'; + $out .= "\n".'endobj'; + $this->_out($out); + return $oid; + } + + /** + * Output viewer preferences. + * @return string for viewer preferences + * @author Nicola asuni + * @since 3.1.000 (2008-06-09) + * @protected + */ + protected function _putviewerpreferences() { + $out = '/ViewerPreferences <<'; + if ($this->rtl) { + $out .= ' /Direction /R2L'; + } else { + $out .= ' /Direction /L2R'; + } + if (isset($this->viewer_preferences['HideToolbar']) AND ($this->viewer_preferences['HideToolbar'])) { + $out .= ' /HideToolbar true'; + } + if (isset($this->viewer_preferences['HideMenubar']) AND ($this->viewer_preferences['HideMenubar'])) { + $out .= ' /HideMenubar true'; + } + if (isset($this->viewer_preferences['HideWindowUI']) AND ($this->viewer_preferences['HideWindowUI'])) { + $out .= ' /HideWindowUI true'; + } + if (isset($this->viewer_preferences['FitWindow']) AND ($this->viewer_preferences['FitWindow'])) { + $out .= ' /FitWindow true'; + } + if (isset($this->viewer_preferences['CenterWindow']) AND ($this->viewer_preferences['CenterWindow'])) { + $out .= ' /CenterWindow true'; + } + if (isset($this->viewer_preferences['DisplayDocTitle']) AND ($this->viewer_preferences['DisplayDocTitle'])) { + $out .= ' /DisplayDocTitle true'; + } + if (isset($this->viewer_preferences['NonFullScreenPageMode'])) { + $out .= ' /NonFullScreenPageMode /'.$this->viewer_preferences['NonFullScreenPageMode']; + } + if (isset($this->viewer_preferences['ViewArea'])) { + $out .= ' /ViewArea /'.$this->viewer_preferences['ViewArea']; + } + if (isset($this->viewer_preferences['ViewClip'])) { + $out .= ' /ViewClip /'.$this->viewer_preferences['ViewClip']; + } + if (isset($this->viewer_preferences['PrintArea'])) { + $out .= ' /PrintArea /'.$this->viewer_preferences['PrintArea']; + } + if (isset($this->viewer_preferences['PrintClip'])) { + $out .= ' /PrintClip /'.$this->viewer_preferences['PrintClip']; + } + if (isset($this->viewer_preferences['PrintScaling'])) { + $out .= ' /PrintScaling /'.$this->viewer_preferences['PrintScaling']; + } + if (isset($this->viewer_preferences['Duplex']) AND (!$this->empty_string($this->viewer_preferences['Duplex']))) { + $out .= ' /Duplex /'.$this->viewer_preferences['Duplex']; + } + if (isset($this->viewer_preferences['PickTrayByPDFSize'])) { + if ($this->viewer_preferences['PickTrayByPDFSize']) { + $out .= ' /PickTrayByPDFSize true'; + } else { + $out .= ' /PickTrayByPDFSize false'; + } + } + if (isset($this->viewer_preferences['PrintPageRange'])) { + $PrintPageRangeNum = ''; + foreach ($this->viewer_preferences['PrintPageRange'] as $k => $v) { + $PrintPageRangeNum .= ' '.($v - 1).''; + } + $out .= ' /PrintPageRange ['.substr($PrintPageRangeNum,1).']'; + } + if (isset($this->viewer_preferences['NumCopies'])) { + $out .= ' /NumCopies '.intval($this->viewer_preferences['NumCopies']); + } + $out .= ' >>'; + return $out; + } + + /** + * Output PDF header. + * @protected + */ + protected function _putheader() { + $this->_out('%PDF-'.$this->PDFVersion); + } + + /** + * Output end of document (EOF). + * @protected + */ + protected function _enddoc() { + $this->state = 1; + $this->_putheader(); + $this->_putpages(); + $this->_putresources(); + // Signature + if ($this->sign AND isset($this->signature_data['cert_type'])) { + // widget annotation for signature + $out = $this->_getobj($this->sig_obj_id)."\n"; + $out .= '<< /Type /Annot'; + $out .= ' /Subtype /Widget'; + $out .= ' /Rect ['.$this->signature_appearance['rect'].']'; + $out .= ' /P '.$this->page_obj_id[($this->signature_appearance['page'])].' 0 R'; // link to signature appearance page + $out .= ' /F 4'; + $out .= ' /FT /Sig'; + $out .= ' /T '.$this->_textstring('Signature', $this->sig_obj_id); + $out .= ' /Ff 0'; + $out .= ' /V '.($this->sig_obj_id + 1).' 0 R'; + $out .= ' >>'; + $out .= "\n".'endobj'; + $this->_out($out); + // signature + $this->_putsignature(); + } + // Info + $objid_info = $this->_putinfo(); + // Catalog + $objid_catalog = $this->_putcatalog(); + // Cross-ref + $o = $this->bufferlen; + // XREF section + $this->_out('xref'); + $this->_out('0 '.($this->n + 1)); + $this->_out('0000000000 65535 f '); + for ($i=1; $i <= $this->n; ++$i) { + $this->_out(sprintf('%010d 00000 n ', $this->offsets[$i])); + } + // TRAILER + $out = 'trailer <<'; + $out .= ' /Size '.($this->n + 1); + $out .= ' /Root '.$objid_catalog.' 0 R'; + $out .= ' /Info '.$objid_info.' 0 R'; + if ($this->encrypted) { + $out .= ' /Encrypt '.$this->encryptdata['objid'].' 0 R'; + } + $out .= ' /ID [ <'.$this->file_id.'> <'.$this->file_id.'> ]'; + $out .= ' >>'; + $this->_out($out); + $this->_out('startxref'); + $this->_out($o); + $this->_out('%%EOF'); + $this->state = 3; // end-of-doc + if ($this->diskcache) { + // remove temporary files used for images + foreach ($this->imagekeys as $key) { + // remove temporary files + unlink($this->images[$key]); + } + foreach ($this->fontkeys as $key) { + // remove temporary files + unlink($this->fonts[$key]); + } + } + } + + /** + * Initialize a new page. + * @param $orientation (string) page orientation. Possible values are (case insensitive):
        • P or PORTRAIT (default)
        • L or LANDSCAPE
        + * @param $format (mixed) The format used for pages. It can be either: one of the string values specified at getPageSizeFromFormat() or an array of parameters specified at setPageFormat(). + * @protected + * @see getPageSizeFromFormat(), setPageFormat() + */ + protected function _beginpage($orientation='', $format='') { + ++$this->page; + $this->setPageBuffer($this->page, ''); + // initialize array for graphics tranformation positions inside a page buffer + $this->transfmrk[$this->page] = array(); + $this->state = 2; + if ($this->empty_string($orientation)) { + if (isset($this->CurOrientation)) { + $orientation = $this->CurOrientation; + } elseif ($this->fwPt > $this->fhPt) { + // landscape + $orientation = 'L'; + } else { + // portrait + $orientation = 'P'; + } + } + if ($this->empty_string($format)) { + $this->pagedim[$this->page] = $this->pagedim[($this->page - 1)]; + $this->setPageOrientation($orientation); + } else { + $this->setPageFormat($format, $orientation); + } + if ($this->rtl) { + $this->x = $this->w - $this->rMargin; + } else { + $this->x = $this->lMargin; + } + $this->y = $this->tMargin; + if (isset($this->newpagegroup[$this->page])) { + // start a new group + $n = sizeof($this->pagegroups) + 1; + $alias = '{nb'.$n.'}'; + $this->pagegroups[$alias] = 1; + $this->currpagegroup = $alias; + } elseif ($this->currpagegroup) { + ++$this->pagegroups[$this->currpagegroup]; + } + } + + /** + * Mark end of page. + * @protected + */ + protected function _endpage() { + $this->setVisibility('all'); + $this->state = 1; + } + + /** + * Begin a new object and return the object number. + * @return int object number + * @protected + */ + protected function _newobj() { + $this->_out($this->_getobj()); + return $this->n; + } + + /** + * Return the starting object string for the selected object ID. + * @param $objid (int) Object ID (leave empty to get a new ID). + * @return string the starting object string + * @protected + * @since 5.8.009 (2010-08-20) + */ + protected function _getobj($objid='') { + if ($objid === '') { + ++$this->n; + $objid = $this->n; + } + $this->offsets[$objid] = $this->bufferlen; + return $objid.' 0 obj'; + } + + /** + * Underline text. + * @param $x (int) X coordinate + * @param $y (int) Y coordinate + * @param $txt (string) text to underline + * @protected + */ + protected function _dounderline($x, $y, $txt) { + $w = $this->GetStringWidth($txt); + return $this->_dounderlinew($x, $y, $w); + } + + /** + * Underline for rectangular text area. + * @param $x (int) X coordinate + * @param $y (int) Y coordinate + * @param $w (int) width to underline + * @protected + * @since 4.8.008 (2009-09-29) + */ + protected function _dounderlinew($x, $y, $w) { + $linew = - $this->CurrentFont['ut'] / 1000 * $this->FontSizePt; + return sprintf('%.2F %.2F %.2F %.2F re f', $x * $this->k, ((($this->h - $y) * $this->k) + $linew), $w * $this->k, $linew); + } + + /** + * Line through text. + * @param $x (int) X coordinate + * @param $y (int) Y coordinate + * @param $txt (string) text to linethrough + * @protected + */ + protected function _dolinethrough($x, $y, $txt) { + $w = $this->GetStringWidth($txt); + return $this->_dolinethroughw($x, $y, $w); + } + + /** + * Line through for rectangular text area. + * @param $x (int) X coordinate + * @param $y (int) Y coordinate + * @param $w (int) line lenght (width) + * @protected + * @since 4.9.008 (2009-09-29) + */ + protected function _dolinethroughw($x, $y, $w) { + $linew = - $this->CurrentFont['ut'] / 1000 * $this->FontSizePt; + return sprintf('%.2F %.2F %.2F %.2F re f', $x * $this->k, ((($this->h - $y) * $this->k) + $linew + ($this->FontSizePt / 3)), $w * $this->k, $linew); + } + + /** + * Overline text. + * @param $x (int) X coordinate + * @param $y (int) Y coordinate + * @param $txt (string) text to overline + * @protected + * @since 4.9.015 (2010-04-19) + */ + protected function _dooverline($x, $y, $txt) { + $w = $this->GetStringWidth($txt); + return $this->_dooverlinew($x, $y, $w); + } + + /** + * Overline for rectangular text area. + * @param $x (int) X coordinate + * @param $y (int) Y coordinate + * @param $w (int) width to overline + * @protected + * @since 4.9.015 (2010-04-19) + */ + protected function _dooverlinew($x, $y, $w) { + $linew = - $this->CurrentFont['ut'] / 1000 * $this->FontSizePt; + return sprintf('%.2F %.2F %.2F %.2F re f', $x * $this->k, (($this->h - $y + $this->FontAscent) * $this->k) - $linew, $w * $this->k, $linew); + + } + + /** + * Read a 4-byte (32 bit) integer from file. + * @param $f (string) file name. + * @return 4-byte integer + * @protected + */ + protected function _freadint($f) { + $a = unpack('Ni', fread($f, 4)); + return $a['i']; + } + + /** + * Add "\" before "\", "(" and ")" + * @param $s (string) string to escape. + * @return string escaped string. + * @protected + */ + protected function _escape($s) { + // the chr(13) substitution fixes the Bugs item #1421290. + return strtr($s, array(')' => '\\)', '(' => '\\(', '\\' => '\\\\', chr(13) => '\r')); + } + + /** + * Format a data string for meta information + * @param $s (string) data string to escape. + * @param $n (int) object ID + * @return string escaped string. + * @protected + */ + protected function _datastring($s, $n=0) { + if ($n == 0) { + $n = $this->n; + } + $s = $this->_encrypt_data($n, $s); + return '('. $this->_escape($s).')'; + } + + /** + * Returns a formatted date for meta information + * @param $n (int) object ID + * @return string escaped date string. + * @protected + * @since 4.6.028 (2009-08-25) + */ + protected function _datestring($n=0) { + $current_time = substr_replace(date('YmdHisO'), '\'', (0 - 2), 0).'\''; + return $this->_datastring('D:'.$current_time, $n); + } + + /** + * Format a text string for meta information + * @param $s (string) string to escape. + * @param $n (int) object ID + * @return string escaped string. + * @protected + */ + protected function _textstring($s, $n=0) { + if ($this->isunicode) { + //Convert string to UTF-16BE + $s = $this->UTF8ToUTF16BE($s, true); + } + return $this->_datastring($s, $n); + } + + /** + * THIS METHOD IS DEPRECATED + * Format a text string + * @param $s (string) string to escape. + * @return string escaped string. + * @protected + * @deprecated + */ + protected function _escapetext($s) { + if ($this->isunicode) { + if (($this->CurrentFont['type'] == 'core') OR ($this->CurrentFont['type'] == 'TrueType') OR ($this->CurrentFont['type'] == 'Type1')) { + $s = $this->UTF8ToLatin1($s); + } else { + //Convert string to UTF-16BE and reverse RTL language + $s = $this->utf8StrRev($s, false, $this->tmprtl); + } + } + return $this->_escape($s); + } + + /** + * get raw output stream. + * @param $s (string) string to output. + * @param $n (int) object reference for encryption mode + * @protected + * @author Nicola Asuni + * @since 5.5.000 (2010-06-22) + */ + protected function _getrawstream($s, $n=0) { + if ($n <= 0) { + // default to current object + $n = $this->n; + } + return $this->_encrypt_data($n, $s); + } + + /** + * Format output stream (DEPRECATED). + * @param $s (string) string to output. + * @param $n (int) object reference for encryption mode + * @protected + * @deprecated + */ + protected function _getstream($s, $n=0) { + return 'stream'."\n".$this->_getrawstream($s, $n)."\n".'endstream'; + } + + /** + * Output a stream (DEPRECATED). + * @param $s (string) string to output. + * @param $n (int) object reference for encryption mode + * @protected + * @deprecated + */ + protected function _putstream($s, $n=0) { + $this->_out($this->_getstream($s, $n)); + } + + /** + * Output a string to the document. + * @param $s (string) string to output. + * @protected + */ + protected function _out($s) { + if ($this->state == 2) { + if ($this->inxobj) { + // we are inside an XObject template + $this->xobjects[$this->xobjid]['outdata'] .= $s."\n"; + } elseif ((!$this->InFooter) AND isset($this->footerlen[$this->page]) AND ($this->footerlen[$this->page] > 0)) { + // puts data before page footer + $pagebuff = $this->getPageBuffer($this->page); + $page = substr($pagebuff, 0, -$this->footerlen[$this->page]); + $footer = substr($pagebuff, -$this->footerlen[$this->page]); + $this->setPageBuffer($this->page, $page.$s."\n".$footer); + // update footer position + $this->footerpos[$this->page] += strlen($s."\n"); + } else { + $this->setPageBuffer($this->page, $s."\n", true); + } + } else { + $this->setBuffer($s."\n"); + } + } + + /** + * Converts UTF-8 strings to codepoints array.
        + * Invalid byte sequences will be replaced with 0xFFFD (replacement character)
        + * Based on: http://www.faqs.org/rfcs/rfc3629.html + *
        +     *    Char. number range  |        UTF-8 octet sequence
        +     *       (hexadecimal)    |              (binary)
        +     *    --------------------+-----------------------------------------------
        +     *    0000 0000-0000 007F | 0xxxxxxx
        +     *    0000 0080-0000 07FF | 110xxxxx 10xxxxxx
        +     *    0000 0800-0000 FFFF | 1110xxxx 10xxxxxx 10xxxxxx
        +     *    0001 0000-0010 FFFF | 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx
        +     *    ---------------------------------------------------------------------
        +     *
        +     *   ABFN notation:
        +     *   ---------------------------------------------------------------------
        +     *   UTF8-octets = *( UTF8-char )
        +     *   UTF8-char   = UTF8-1 / UTF8-2 / UTF8-3 / UTF8-4
        +     *   UTF8-1      = %x00-7F
        +     *   UTF8-2      = %xC2-DF UTF8-tail
        +     *
        +     *   UTF8-3      = %xE0 %xA0-BF UTF8-tail / %xE1-EC 2( UTF8-tail ) /
        +     *                 %xED %x80-9F UTF8-tail / %xEE-EF 2( UTF8-tail )
        +     *   UTF8-4      = %xF0 %x90-BF 2( UTF8-tail ) / %xF1-F3 3( UTF8-tail ) /
        +     *                 %xF4 %x80-8F 2( UTF8-tail )
        +     *   UTF8-tail   = %x80-BF
        +     *   ---------------------------------------------------------------------
        +     * 
        + * @param $str (string) string to process. + * @return array containing codepoints (UTF-8 characters values) + * @protected + * @author Nicola Asuni + * @since 1.53.0.TC005 (2005-01-05) + */ + protected function UTF8StringToArray($str) { + // build a unique string key + $strkey = md5($str); + if (isset($this->cache_UTF8StringToArray[$strkey])) { + // return cached value + $chrarray = $this->cache_UTF8StringToArray[$strkey]['s']; + if (!isset($this->cache_UTF8StringToArray[$strkey]['f'][$this->CurrentFont['fontkey']])) { + if ($this->isunicode) { + foreach ($chrarray as $chr) { + // store this char for font subsetting + $this->CurrentFont['subsetchars'][$chr] = true; + } + // update font subsetchars + $this->setFontSubBuffer($this->CurrentFont['fontkey'], 'subsetchars', $this->CurrentFont['subsetchars']); + } + $this->cache_UTF8StringToArray[$strkey]['f'][$this->CurrentFont['fontkey']] = true; + } + return $chrarray; + } + // check cache size + if ($this->cache_size_UTF8StringToArray >= $this->cache_maxsize_UTF8StringToArray) { + // remove first element + array_shift($this->cache_UTF8StringToArray); + } + // new cache array for selected string + $this->cache_UTF8StringToArray[$strkey] = array('s' => array(), 'f' => array()); + ++$this->cache_size_UTF8StringToArray; + if (!$this->isunicode) { + // split string into array of equivalent codes + $strarr = array(); + $strlen = strlen($str); + for ($i=0; $i < $strlen; ++$i) { + $strarr[] = ord($str{$i}); + } + // insert new value on cache + $this->cache_UTF8StringToArray[$strkey]['s'] = $strarr; + $this->cache_UTF8StringToArray[$strkey]['f'][$this->CurrentFont['fontkey']] = true; + return $strarr; + } + $unichar = -1; // last unicode char + $unicode = array(); // array containing unicode values + $bytes = array(); // array containing single character byte sequences + $numbytes = 1; // number of octetc needed to represent the UTF-8 character + $str .= ''; // force $str to be a string + $length = strlen($str); + for ($i = 0; $i < $length; ++$i) { + $char = ord($str{$i}); // get one string character at time + if (count($bytes) == 0) { // get starting octect + if ($char <= 0x7F) { + $unichar = $char; // use the character "as is" because is ASCII + $numbytes = 1; + } elseif (($char >> 0x05) == 0x06) { // 2 bytes character (0x06 = 110 BIN) + $bytes[] = ($char - 0xC0) << 0x06; + $numbytes = 2; + } elseif (($char >> 0x04) == 0x0E) { // 3 bytes character (0x0E = 1110 BIN) + $bytes[] = ($char - 0xE0) << 0x0C; + $numbytes = 3; + } elseif (($char >> 0x03) == 0x1E) { // 4 bytes character (0x1E = 11110 BIN) + $bytes[] = ($char - 0xF0) << 0x12; + $numbytes = 4; + } else { + // use replacement character for other invalid sequences + $unichar = 0xFFFD; + $bytes = array(); + $numbytes = 1; + } + } elseif (($char >> 0x06) == 0x02) { // bytes 2, 3 and 4 must start with 0x02 = 10 BIN + $bytes[] = $char - 0x80; + if (count($bytes) == $numbytes) { + // compose UTF-8 bytes to a single unicode value + $char = $bytes[0]; + for ($j = 1; $j < $numbytes; ++$j) { + $char += ($bytes[$j] << (($numbytes - $j - 1) * 0x06)); + } + if ((($char >= 0xD800) AND ($char <= 0xDFFF)) OR ($char >= 0x10FFFF)) { + /* The definition of UTF-8 prohibits encoding character numbers between + U+D800 and U+DFFF, which are reserved for use with the UTF-16 + encoding form (as surrogate pairs) and do not directly represent + characters. */ + $unichar = 0xFFFD; // use replacement character + } else { + $unichar = $char; // add char to array + } + // reset data for next char + $bytes = array(); + $numbytes = 1; + } + } else { + // use replacement character for other invalid sequences + $unichar = 0xFFFD; + $bytes = array(); + $numbytes = 1; + } + if ($unichar >= 0) { + // insert unicode value into array + $unicode[] = $unichar; + // store this char for font subsetting + $this->CurrentFont['subsetchars'][$unichar] = true; + $unichar = -1; + } + } + // update font subsetchars + $this->setFontSubBuffer($this->CurrentFont['fontkey'], 'subsetchars', $this->CurrentFont['subsetchars']); + // insert new value on cache + $this->cache_UTF8StringToArray[$strkey]['s'] = $unicode; + $this->cache_UTF8StringToArray[$strkey]['f'][$this->CurrentFont['fontkey']] = true; + return $unicode; + } + + /** + * Converts UTF-8 strings to UTF16-BE.
        + * @param $str (string) string to process. + * @param $setbom (boolean) if true set the Byte Order Mark (BOM = 0xFEFF) + * @return string + * @author Nicola Asuni + * @since 1.53.0.TC005 (2005-01-05) + * @see UTF8StringToArray(), arrUTF8ToUTF16BE() + * @protected + */ + protected function UTF8ToUTF16BE($str, $setbom=true) { + if (!$this->isunicode) { + return $str; // string is not in unicode + } + $unicode = $this->UTF8StringToArray($str); // array containing UTF-8 unicode values + return $this->arrUTF8ToUTF16BE($unicode, $setbom); + } + + /** + * Converts UTF-8 strings to Latin1 when using the standard 14 core fonts.
        + * @param $str (string) string to process. + * @return string + * @author Andrew Whitehead, Nicola Asuni + * @protected + * @since 3.2.000 (2008-06-23) + */ + protected function UTF8ToLatin1($str) { + if (!$this->isunicode) { + return $str; // string is not in unicode + } + $outstr = ''; // string to be returned + $unicode = $this->UTF8StringToArray($str); // array containing UTF-8 unicode values + foreach ($unicode as $char) { + if ($char < 256) { + $outstr .= chr($char); + } elseif (array_key_exists($char, $this->unicode->uni_utf8tolatin)) { + // map from UTF-8 + $outstr .= chr($this->unicode->uni_utf8tolatin[$char]); + } elseif ($char == 0xFFFD) { + // skip + } else { + $outstr .= '?'; + } + } + return $outstr; + } + + /** + * Converts UTF-8 characters array to array of Latin1 characters
        + * @param $unicode (array) array containing UTF-8 unicode values + * @return array + * @author Nicola Asuni + * @protected + * @since 4.8.023 (2010-01-15) + */ + protected function UTF8ArrToLatin1($unicode) { + if ((!$this->isunicode) OR $this->isUnicodeFont()) { + return $unicode; + } + $outarr = array(); // array to be returned + foreach ($unicode as $char) { + if ($char < 256) { + $outarr[] = $char; + } elseif (array_key_exists($char, $this->unicode->uni_utf8tolatin)) { + // map from UTF-8 + $outarr[] = $this->unicode->uni_utf8tolatin[$char]; + } elseif ($char == 0xFFFD) { + // skip + } else { + $outarr[] = 63; // '?' character + } + } + return $outarr; + } + + /** + * Converts array of UTF-8 characters to UTF16-BE string.
        + * Based on: http://www.faqs.org/rfcs/rfc2781.html + *
        +     *   Encoding UTF-16:
        +     *
        +     *   Encoding of a single character from an ISO 10646 character value to
        +     *    UTF-16 proceeds as follows. Let U be the character number, no greater
        +     *    than 0x10FFFF.
        +     *
        +     *    1) If U < 0x10000, encode U as a 16-bit unsigned integer and
        +     *       terminate.
        +     *
        +     *    2) Let U' = U - 0x10000. Because U is less than or equal to 0x10FFFF,
        +     *       U' must be less than or equal to 0xFFFFF. That is, U' can be
        +     *       represented in 20 bits.
        +     *
        +     *    3) Initialize two 16-bit unsigned integers, W1 and W2, to 0xD800 and
        +     *       0xDC00, respectively. These integers each have 10 bits free to
        +     *       encode the character value, for a total of 20 bits.
        +     *
        +     *    4) Assign the 10 high-order bits of the 20-bit U' to the 10 low-order
        +     *       bits of W1 and the 10 low-order bits of U' to the 10 low-order
        +     *       bits of W2. Terminate.
        +     *
        +     *    Graphically, steps 2 through 4 look like:
        +     *    U' = yyyyyyyyyyxxxxxxxxxx
        +     *    W1 = 110110yyyyyyyyyy
        +     *    W2 = 110111xxxxxxxxxx
        +     * 
        + * @param $unicode (array) array containing UTF-8 unicode values + * @param $setbom (boolean) if true set the Byte Order Mark (BOM = 0xFEFF) + * @return string + * @protected + * @author Nicola Asuni + * @since 2.1.000 (2008-01-08) + * @see UTF8ToUTF16BE() + */ + protected function arrUTF8ToUTF16BE($unicode, $setbom=true) { + $outstr = ''; // string to be returned + if ($setbom) { + $outstr .= "\xFE\xFF"; // Byte Order Mark (BOM) + } + foreach ($unicode as $char) { + if ($char == 0x200b) { + // skip Unicode Character 'ZERO WIDTH SPACE' (DEC:8203, U+200B) + } elseif ($char == 0xFFFD) { + $outstr .= "\xFF\xFD"; // replacement character + } elseif ($char < 0x10000) { + $outstr .= chr($char >> 0x08); + $outstr .= chr($char & 0xFF); + } else { + $char -= 0x10000; + $w1 = 0xD800 | ($char >> 0x10); + $w2 = 0xDC00 | ($char & 0x3FF); + $outstr .= chr($w1 >> 0x08); + $outstr .= chr($w1 & 0xFF); + $outstr .= chr($w2 >> 0x08); + $outstr .= chr($w2 & 0xFF); + } + } + return $outstr; + } + // ==================================================== + + /** + * Set header font. + * @param $font (array) font + * @public + * @since 1.1 + */ + public function setHeaderFont($font) { + $this->header_font = $font; + } + + /** + * Get header font. + * @return array() + * @public + * @since 4.0.012 (2008-07-24) + */ + public function getHeaderFont() { + return $this->header_font; + } + + /** + * Set footer font. + * @param $font (array) font + * @public + * @since 1.1 + */ + public function setFooterFont($font) { + $this->footer_font = $font; + } + + /** + * Get Footer font. + * @return array() + * @public + * @since 4.0.012 (2008-07-24) + */ + public function getFooterFont() { + return $this->footer_font; + } + + /** + * Set language array. + * @param $language (array) + * @public + * @since 1.1 + */ + public function setLanguageArray($language) { + $this->l = $language; + if (isset($this->l['a_meta_dir'])) { + $this->rtl = $this->l['a_meta_dir']=='rtl' ? true : false; + } else { + $this->rtl = false; + } + } + + /** + * Returns the PDF data. + * @public + */ + public function getPDFData() { + if ($this->state < 3) { + $this->Close(); + } + return $this->buffer; + } + + /** + * Output anchor link. + * @param $url (string) link URL or internal link (i.e.: <a href="#23,4.5">link to page 23 at 4.5 Y position</a>) + * @param $name (string) link name + * @param $fill (boolean) Indicates if the cell background must be painted (true) or transparent (false). + * @param $firstline (boolean) if true prints only the first line and return the remaining string. + * @param $color (array) array of RGB text color + * @param $style (string) font style (U, D, B, I) + * @param $firstblock (boolean) if true the string is the starting of a line. + * @return the number of cells used or the remaining text if $firstline = true; + * @public + */ + public function addHtmlLink($url, $name, $fill=false, $firstline=false, $color='', $style=-1, $firstblock=false) { + if (!$this->empty_string($url) AND ($url{0} == '#')) { + // convert url to internal link + $lnkdata = explode(',', $url); + if (isset($lnkdata[0])) { + $page = intval(substr($lnkdata[0], 1)); + if (empty($page) OR ($page <= 0)) { + $page = $this->page; + } + if (isset($lnkdata[1]) AND (strlen($lnkdata[1]) > 0)) { + $lnky = floatval($lnkdata[1]); + } else { + $lnky = 0; + } + $url = $this->AddLink(); + $this->SetLink($url, $lnky, $page); + } + } + // store current settings + $prevcolor = $this->fgcolor; + $prevstyle = $this->FontStyle; + if (empty($color)) { + $this->SetTextColorArray($this->htmlLinkColorArray); + } else { + $this->SetTextColorArray($color); + } + if ($style == -1) { + $this->SetFont('', $this->FontStyle.$this->htmlLinkFontStyle); + } else { + $this->SetFont('', $this->FontStyle.$style); + } + $ret = $this->Write($this->lasth, $name, $url, $fill, '', false, 0, $firstline, $firstblock, 0); + // restore settings + $this->SetFont('', $prevstyle); + $this->SetTextColorArray($prevcolor); + return $ret; + } + + /** + * Returns an array (RGB or CMYK) from an html color name or a six-digit (i.e. #3FE5AA) or three-digit (i.e. #7FF) hexadecimal color representation. + * @param $hcolor (string) html color + * @return array RGB or CMYK color, or false in case of error. + * @public + */ + public function convertHTMLColorToDec($hcolor='#FFFFFF') { + $returncolor = false; + $color = preg_replace('/[\s]*/', '', $hcolor); // remove extra spaces + $color = strtolower($color); + if (($dotpos = strpos($color, '.')) !== false) { + // remove class parent (i.e.: color.red) + $color = substr($color, ($dotpos + 1)); + } + if (strlen($color) == 0) { + return false; + } + // RGB ARRAY + if (substr($color, 0, 3) == 'rgb') { + $codes = substr($color, 4); + $codes = str_replace(')', '', $codes); + $returncolor = explode(',', $codes); + foreach ($returncolor as $key => $val) { + if (strpos($val, '%') > 0) { + // percentage + $returncolor[$key] = (255 * intval($val) / 100); + } else { + $returncolor[$key] = intval($val); + } + // normalize value + $returncolor[$key] = max(0, min(255, $returncolor[$key])); + } + return $returncolor; + } + // CMYK ARRAY + if (substr($color, 0, 4) == 'cmyk') { + $codes = substr($color, 5); + $codes = str_replace(')', '', $codes); + $returncolor = explode(',', $codes); + foreach ($returncolor as $key => $val) { + if (strpos($val, '%') !== false) { + // percentage + $returncolor[$key] = (100 * intval($val) / 100); + } else { + $returncolor[$key] = intval($val); + } + // normalize value + $returncolor[$key] = max(0, min(100, $returncolor[$key])); + } + return $returncolor; + } + // COLOR NAME + if (substr($color, 0, 1) != '#') { + // decode color name + if (isset($this->webcolor[$color])) { + // web color + $color_code = $this->webcolor[$color]; + } elseif (isset($this->spot_colors[$hcolor])) { + // custom defined spot color + return array($this->spot_colors[$hcolor]['c'], $this->spot_colors[$hcolor]['m'], $this->spot_colors[$hcolor]['y'], $this->spot_colors[$hcolor]['k'], $hcolor); + } elseif (isset($this->spotcolor[$color])) { + // spot color from configuration file + return $this->spotcolor[$color]; + } else { + return false; + } + } else { + $color_code = substr($color, 1); + } + // RGB VALUE + switch (strlen($color_code)) { + case 3: { + // three-digit hexadecimal representation + $r = substr($color_code, 0, 1); + $g = substr($color_code, 1, 1); + $b = substr($color_code, 2, 1); + $returncolor = array(); + $returncolor['R'] = max(0, min(255, hexdec($r.$r))); + $returncolor['G'] = max(0, min(255, hexdec($g.$g))); + $returncolor['B'] = max(0, min(255, hexdec($b.$b))); + break; + } + case 6: { + // six-digit hexadecimal representation + $returncolor = array(); + $returncolor['R'] = max(0, min(255, hexdec(substr($color_code, 0, 2)))); + $returncolor['G'] = max(0, min(255, hexdec(substr($color_code, 2, 2)))); + $returncolor['B'] = max(0, min(255, hexdec(substr($color_code, 4, 2)))); + break; + } + } + return $returncolor; + } + + /** + * Converts pixels to User's Units. + * @param $px (int) pixels + * @return float value in user's unit + * @public + * @see setImageScale(), getImageScale() + */ + public function pixelsToUnits($px) { + return ($px / ($this->imgscale * $this->k)); + } + + /** + * Reverse function for htmlentities. + * Convert entities in UTF-8. + * @param $text_to_convert (string) Text to convert. + * @return string converted text string + * @public + */ + public function unhtmlentities($text_to_convert) { + return html_entity_decode($text_to_convert, ENT_QUOTES, $this->encoding); + } + + // ENCRYPTION METHODS ---------------------------------- + + /** + * Returns a string containing random data to be used as a seed for encryption methods. + * @param $seed (string) starting seed value + * @return string containing random data + * @author Nicola Asuni + * @since 5.9.006 (2010-10-19) + * @protected + */ + protected function getRandomSeed($seed='') { + $seed .= microtime(); + if (function_exists('openssl_random_pseudo_bytes') AND (strtoupper(substr(PHP_OS, 0, 3)) !== 'WIN')) { + // this is not used on windows systems because it is very slow for a know bug + $seed .= openssl_random_pseudo_bytes(512); + } else { + for ($i = 0; $i < 23; ++$i) { + $seed .= uniqid('', true); + } + } + $seed .= uniqid('', true); + $seed .= rand(); + $seed .= getmypid(); + $seed .= __FILE__; + $seed .= $this->bufferlen; + if (isset($_SERVER['REMOTE_ADDR'])) { + $seed .= $_SERVER['REMOTE_ADDR']; + } + if (isset($_SERVER['HTTP_USER_AGENT'])) { + $seed .= $_SERVER['HTTP_USER_AGENT']; + } + if (isset($_SERVER['HTTP_ACCEPT'])) { + $seed .= $_SERVER['HTTP_ACCEPT']; + } + if (isset($_SERVER['HTTP_ACCEPT_ENCODING'])) { + $seed .= $_SERVER['HTTP_ACCEPT_ENCODING']; + } + if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) { + $seed .= $_SERVER['HTTP_ACCEPT_LANGUAGE']; + } + if (isset($_SERVER['HTTP_ACCEPT_CHARSET'])) { + $seed .= $_SERVER['HTTP_ACCEPT_CHARSET']; + } + $seed .= rand(); + $seed .= uniqid('', true); + $seed .= microtime(); + return $seed; + } + + /** + * Compute encryption key depending on object number where the encrypted data is stored. + * This is used for all strings and streams without crypt filter specifier. + * @param $n (int) object number + * @return int object key + * @protected + * @author Nicola Asuni + * @since 2.0.000 (2008-01-02) + */ + protected function _objectkey($n) { + $objkey = $this->encryptdata['key'].pack('VXxx', $n); + if ($this->encryptdata['mode'] == 2) { // AES-128 + // AES padding + $objkey .= "\x73\x41\x6C\x54"; // sAlT + } + $objkey = substr($this->_md5_16($objkey), 0, (($this->encryptdata['Length'] / 8) + 5)); + $objkey = substr($objkey, 0, 16); + return $objkey; + } + + /** + * Encrypt the input string. + * @param $n (int) object number + * @param $s (string) data string to encrypt + * @return encrypted string + * @protected + * @author Nicola Asuni + * @since 5.0.005 (2010-05-11) + */ + protected function _encrypt_data($n, $s) { + if (!$this->encrypted) { + return $s; + } + switch ($this->encryptdata['mode']) { + case 0: // RC4-40 + case 1: { // RC4-128 + $s = $this->_RC4($this->_objectkey($n), $s); + break; + } + case 2: { // AES-128 + $s = $this->_AES($this->_objectkey($n), $s); + break; + } + case 3: { // AES-256 + $s = $this->_AES($this->encryptdata['key'], $s); + break; + } + } + return $s; + } + + /** + * Put encryption on PDF document. + * @protected + * @author Nicola Asuni + * @since 2.0.000 (2008-01-02) + */ + protected function _putencryption() { + if (!$this->encrypted) { + return; + } + $this->encryptdata['objid'] = $this->_newobj(); + $out = '<<'; + if (!isset($this->encryptdata['Filter']) OR empty($this->encryptdata['Filter'])) { + $this->encryptdata['Filter'] = 'Standard'; + } + $out .= ' /Filter /'.$this->encryptdata['Filter']; + if (isset($this->encryptdata['SubFilter']) AND !empty($this->encryptdata['SubFilter'])) { + $out .= ' /SubFilter /'.$this->encryptdata['SubFilter']; + } + if (!isset($this->encryptdata['V']) OR empty($this->encryptdata['V'])) { + $this->encryptdata['V'] = 1; + } + // V is a code specifying the algorithm to be used in encrypting and decrypting the document + $out .= ' /V '.$this->encryptdata['V']; + if (isset($this->encryptdata['Length']) AND !empty($this->encryptdata['Length'])) { + // The length of the encryption key, in bits. The value shall be a multiple of 8, in the range 40 to 256 + $out .= ' /Length '.$this->encryptdata['Length']; + } else { + $out .= ' /Length 40'; + } + if ($this->encryptdata['V'] >= 4) { + if (!isset($this->encryptdata['StmF']) OR empty($this->encryptdata['StmF'])) { + $this->encryptdata['StmF'] = 'Identity'; + } + if (!isset($this->encryptdata['StrF']) OR empty($this->encryptdata['StrF'])) { + // The name of the crypt filter that shall be used when decrypting all strings in the document. + $this->encryptdata['StrF'] = 'Identity'; + } + // A dictionary whose keys shall be crypt filter names and whose values shall be the corresponding crypt filter dictionaries. + if (isset($this->encryptdata['CF']) AND !empty($this->encryptdata['CF'])) { + $out .= ' /CF <<'; + $out .= ' /'.$this->encryptdata['StmF'].' <<'; + $out .= ' /Type /CryptFilter'; + if (isset($this->encryptdata['CF']['CFM']) AND !empty($this->encryptdata['CF']['CFM'])) { + // The method used + $out .= ' /CFM /'.$this->encryptdata['CF']['CFM']; + if ($this->encryptdata['pubkey']) { + $out .= ' /Recipients ['; + foreach ($this->encryptdata['Recipients'] as $rec) { + $out .= ' <'.$rec.'>'; + } + $out .= ' ]'; + if (isset($this->encryptdata['CF']['EncryptMetadata']) AND (!$this->encryptdata['CF']['EncryptMetadata'])) { + $out .= ' /EncryptMetadata false'; + } else { + $out .= ' /EncryptMetadata true'; + } + } + } else { + $out .= ' /CFM /None'; + } + if (isset($this->encryptdata['CF']['AuthEvent']) AND !empty($this->encryptdata['CF']['AuthEvent'])) { + // The event to be used to trigger the authorization that is required to access encryption keys used by this filter. + $out .= ' /AuthEvent /'.$this->encryptdata['CF']['AuthEvent']; + } else { + $out .= ' /AuthEvent /DocOpen'; + } + if (isset($this->encryptdata['CF']['Length']) AND !empty($this->encryptdata['CF']['Length'])) { + // The bit length of the encryption key. + $out .= ' /Length '.$this->encryptdata['CF']['Length']; + } + $out .= ' >> >>'; + } + // The name of the crypt filter that shall be used by default when decrypting streams. + $out .= ' /StmF /'.$this->encryptdata['StmF']; + // The name of the crypt filter that shall be used when decrypting all strings in the document. + $out .= ' /StrF /'.$this->encryptdata['StrF']; + if (isset($this->encryptdata['EFF']) AND !empty($this->encryptdata['EFF'])) { + // The name of the crypt filter that shall be used when encrypting embedded file streams that do not have their own crypt filter specifier. + $out .= ' /EFF /'.$this->encryptdata['']; + } + } + // Additional encryption dictionary entries for the standard security handler + if ($this->encryptdata['pubkey']) { + if (($this->encryptdata['V'] < 4) AND isset($this->encryptdata['Recipients']) AND !empty($this->encryptdata['Recipients'])) { + $out .= ' /Recipients ['; + foreach ($this->encryptdata['Recipients'] as $rec) { + $out .= ' <'.$rec.'>'; + } + $out .= ' ]'; + } + } else { + $out .= ' /R'; + if ($this->encryptdata['V'] == 5) { // AES-256 + $out .= ' 5'; + $out .= ' /OE ('.$this->_escape($this->encryptdata['OE']).')'; + $out .= ' /UE ('.$this->_escape($this->encryptdata['UE']).')'; + $out .= ' /Perms ('.$this->_escape($this->encryptdata['perms']).')'; + } elseif ($this->encryptdata['V'] == 4) { // AES-128 + $out .= ' 4'; + } elseif ($this->encryptdata['V'] < 2) { // RC-40 + $out .= ' 2'; + } else { // RC-128 + $out .= ' 3'; + } + $out .= ' /O ('.$this->_escape($this->encryptdata['O']).')'; + $out .= ' /U ('.$this->_escape($this->encryptdata['U']).')'; + $out .= ' /P '.$this->encryptdata['P']; + if (isset($this->encryptdata['EncryptMetadata']) AND (!$this->encryptdata['EncryptMetadata'])) { + $out .= ' /EncryptMetadata false'; + } else { + $out .= ' /EncryptMetadata true'; + } + } + $out .= ' >>'; + $out .= "\n".'endobj'; + $this->_out($out); + } + + /** + * Returns the input text encrypted using RC4 algorithm and the specified key. + * RC4 is the standard encryption algorithm used in PDF format + * @param $key (string) encryption key + * @param $text (String) input text to be encrypted + * @return String encrypted text + * @protected + * @since 2.0.000 (2008-01-02) + * @author Klemen Vodopivec, Nicola Asuni + */ + protected function _RC4($key, $text) { + if (function_exists('mcrypt_decrypt') AND ($out = @mcrypt_decrypt(MCRYPT_ARCFOUR, $key, $text, MCRYPT_MODE_STREAM, ''))) { + // try to use mcrypt function if exist + return $out; + } + if ($this->last_enc_key != $key) { + $k = str_repeat($key, ((256 / strlen($key)) + 1)); + $rc4 = range(0, 255); + $j = 0; + for ($i = 0; $i < 256; ++$i) { + $t = $rc4[$i]; + $j = ($j + $t + ord($k{$i})) % 256; + $rc4[$i] = $rc4[$j]; + $rc4[$j] = $t; + } + $this->last_enc_key = $key; + $this->last_enc_key_c = $rc4; + } else { + $rc4 = $this->last_enc_key_c; + } + $len = strlen($text); + $a = 0; + $b = 0; + $out = ''; + for ($i = 0; $i < $len; ++$i) { + $a = ($a + 1) % 256; + $t = $rc4[$a]; + $b = ($b + $t) % 256; + $rc4[$a] = $rc4[$b]; + $rc4[$b] = $t; + $k = $rc4[($rc4[$a] + $rc4[$b]) % 256]; + $out .= chr(ord($text{$i}) ^ $k); + } + return $out; + } + + /** + * Returns the input text exrypted using AES algorithm and the specified key. + * This method requires mcrypt. + * @param $key (string) encryption key + * @param $text (String) input text to be encrypted + * @return String encrypted text + * @protected + * @author Nicola Asuni + * @since 5.0.005 (2010-05-11) + */ + protected function _AES($key, $text) { + // padding (RFC 2898, PKCS #5: Password-Based Cryptography Specification Version 2.0) + $padding = 16 - (strlen($text) % 16); + $text .= str_repeat(chr($padding), $padding); + $iv = mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_CBC), MCRYPT_RAND); + $text = mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $key, $text, MCRYPT_MODE_CBC, $iv); + $text = $iv.$text; + return $text; + } + + /** + * Encrypts a string using MD5 and returns it's value as a binary string. + * @param $str (string) input string + * @return String MD5 encrypted binary string + * @protected + * @since 2.0.000 (2008-01-02) + * @author Klemen Vodopivec + */ + protected function _md5_16($str) { + return pack('H*', md5($str)); + } + + /** + * Compute U value (used for encryption) + * @return string U value + * @protected + * @since 2.0.000 (2008-01-02) + * @author Nicola Asuni + */ + protected function _Uvalue() { + if ($this->encryptdata['mode'] == 0) { // RC4-40 + return $this->_RC4($this->encryptdata['key'], $this->enc_padding); + } elseif ($this->encryptdata['mode'] < 3) { // RC4-128, AES-128 + $tmp = $this->_md5_16($this->enc_padding.$this->encryptdata['fileid']); + $enc = $this->_RC4($this->encryptdata['key'], $tmp); + $len = strlen($tmp); + for ($i = 1; $i <= 19; ++$i) { + $ek = ''; + for ($j = 0; $j < $len; ++$j) { + $ek .= chr(ord($this->encryptdata['key']{$j}) ^ $i); + } + $enc = $this->_RC4($ek, $enc); + } + $enc .= str_repeat("\x00", 16); + return substr($enc, 0, 32); + } elseif ($this->encryptdata['mode'] == 3) { // AES-256 + $seed = $this->_md5_16($this->getRandomSeed()); + // User Validation Salt + $this->encryptdata['UVS'] = substr($seed, 0, 8); + // User Key Salt + $this->encryptdata['UKS'] = substr($seed, 8, 16); + return hash('sha256', $this->encryptdata['user_password'].$this->encryptdata['UVS'], true).$this->encryptdata['UVS'].$this->encryptdata['UKS']; + } + } + + /** + * Compute UE value (used for encryption) + * @return string UE value + * @protected + * @since 5.9.006 (2010-10-19) + * @author Nicola Asuni + */ + protected function _UEvalue() { + $hashkey = hash('sha256', $this->encryptdata['user_password'].$this->encryptdata['UKS'], true); + $iv = str_repeat("\x00", mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_CBC)); + return mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $hashkey, $this->encryptdata['key'], MCRYPT_MODE_CBC, $iv); + } + + /** + * Compute O value (used for encryption) + * @return string O value + * @protected + * @since 2.0.000 (2008-01-02) + * @author Nicola Asuni + */ + protected function _Ovalue() { + if ($this->encryptdata['mode'] < 3) { // RC4-40, RC4-128, AES-128 + $tmp = $this->_md5_16($this->encryptdata['owner_password']); + if ($this->encryptdata['mode'] > 0) { + for ($i = 0; $i < 50; ++$i) { + $tmp = $this->_md5_16($tmp); + } + } + $owner_key = substr($tmp, 0, ($this->encryptdata['Length'] / 8)); + $enc = $this->_RC4($owner_key, $this->encryptdata['user_password']); + if ($this->encryptdata['mode'] > 0) { + $len = strlen($owner_key); + for ($i = 1; $i <= 19; ++$i) { + $ek = ''; + for ($j = 0; $j < $len; ++$j) { + $ek .= chr(ord($owner_key{$j}) ^ $i); + } + $enc = $this->_RC4($ek, $enc); + } + } + return $enc; + } elseif ($this->encryptdata['mode'] == 3) { // AES-256 + $seed = $this->_md5_16($this->getRandomSeed()); + // Owner Validation Salt + $this->encryptdata['OVS'] = substr($seed, 0, 8); + // Owner Key Salt + $this->encryptdata['OKS'] = substr($seed, 8, 16); + return hash('sha256', $this->encryptdata['owner_password'].$this->encryptdata['OVS'].$this->encryptdata['U'], true).$this->encryptdata['OVS'].$this->encryptdata['OKS']; + } + } + + /** + * Compute OE value (used for encryption) + * @return string OE value + * @protected + * @since 5.9.006 (2010-10-19) + * @author Nicola Asuni + */ + protected function _OEvalue() { + $hashkey = hash('sha256', $this->encryptdata['owner_password'].$this->encryptdata['OKS'].$this->encryptdata['U'], true); + $iv = str_repeat("\x00", mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_CBC)); + return mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $hashkey, $this->encryptdata['key'], MCRYPT_MODE_CBC, $iv); + } + + /** + * Convert password for AES-256 encryption mode + * @param $password (string) password + * @return string password + * @protected + * @since 5.9.006 (2010-10-19) + * @author Nicola Asuni + */ + protected function _fixAES256Password($password) { + $psw = ''; // password to be returned + $psw_array = $this->utf8Bidi($this->UTF8StringToArray($password), $password, $this->rtl); + foreach ($psw_array as $c) { + $psw .= $this->unichr($c); + } + return substr($psw, 0, 127); + } + + /** + * Compute encryption key + * @protected + * @since 2.0.000 (2008-01-02) + * @author Nicola Asuni + */ + protected function _generateencryptionkey() { + $keybytelen = ($this->encryptdata['Length'] / 8); + if (!$this->encryptdata['pubkey']) { // standard mode + if ($this->encryptdata['mode'] == 3) { // AES-256 + // generate 256 bit random key + $this->encryptdata['key'] = substr(hash('sha256', $this->getRandomSeed(), true), 0, $keybytelen); + // truncate passwords + $this->encryptdata['user_password'] = $this->_fixAES256Password($this->encryptdata['user_password']); + $this->encryptdata['owner_password'] = $this->_fixAES256Password($this->encryptdata['owner_password']); + // Compute U value + $this->encryptdata['U'] = $this->_Uvalue(); + // Compute UE value + $this->encryptdata['UE'] = $this->_UEvalue(); + // Compute O value + $this->encryptdata['O'] = $this->_Ovalue(); + // Compute OE value + $this->encryptdata['OE'] = $this->_OEvalue(); + // Compute P value + $this->encryptdata['P'] = $this->encryptdata['protection']; + // Computing the encryption dictionary's Perms (permissions) value + $perms = $this->getEncPermissionsString($this->encryptdata['protection']); // bytes 0-3 + $perms .= chr(255).chr(255).chr(255).chr(255); // bytes 4-7 + if (isset($this->encryptdata['CF']['EncryptMetadata']) AND (!$this->encryptdata['CF']['EncryptMetadata'])) { // byte 8 + $perms .= 'F'; + } else { + $perms .= 'T'; + } + $perms .= 'adb'; // bytes 9-11 + $perms .= 'nick'; // bytes 12-15 + $iv = str_repeat("\x00", mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_ECB)); + $this->encryptdata['perms'] = mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $this->encryptdata['key'], $perms, MCRYPT_MODE_ECB, $iv); + } else { // RC4-40, RC4-128, AES-128 + // Pad passwords + $this->encryptdata['user_password'] = substr($this->encryptdata['user_password'].$this->enc_padding, 0, 32); + $this->encryptdata['owner_password'] = substr($this->encryptdata['owner_password'].$this->enc_padding, 0, 32); + // Compute O value + $this->encryptdata['O'] = $this->_Ovalue(); + // get default permissions (reverse byte order) + $permissions = $this->getEncPermissionsString($this->encryptdata['protection']); + // Compute encryption key + $tmp = $this->_md5_16($this->encryptdata['user_password'].$this->encryptdata['O'].$permissions.$this->encryptdata['fileid']); + if ($this->encryptdata['mode'] > 0) { + for ($i = 0; $i < 50; ++$i) { + $tmp = $this->_md5_16(substr($tmp, 0, $keybytelen)); + } + } + $this->encryptdata['key'] = substr($tmp, 0, $keybytelen); + // Compute U value + $this->encryptdata['U'] = $this->_Uvalue(); + // Compute P value + $this->encryptdata['P'] = $this->encryptdata['protection']; + } + } else { // Public-Key mode + // random 20-byte seed + $seed = sha1($this->getRandomSeed(), true); + $recipient_bytes = ''; + foreach ($this->encryptdata['pubkeys'] as $pubkey) { + // for each public certificate + if (isset($pubkey['p'])) { + $pkprotection = $this->getUserPermissionCode($pubkey['p'], $this->encryptdata['mode']); + } else { + $pkprotection = $this->encryptdata['protection']; + } + // get default permissions (reverse byte order) + $pkpermissions = $this->getEncPermissionsString($pkprotection); + // envelope data + $envelope = $seed.$pkpermissions; + // write the envelope data to a temporary file + $tempkeyfile = tempnam(K_PATH_CACHE, 'tmpkey_'); + $f = fopen($tempkeyfile, 'wb'); + if (!$f) { + $this->Error('Unable to create temporary key file: '.$tempkeyfile); + } + $envelope_lenght = strlen($envelope); + fwrite($f, $envelope, $envelope_lenght); + fclose($f); + $tempencfile = tempnam(K_PATH_CACHE, 'tmpenc_'); + if (!openssl_pkcs7_encrypt($tempkeyfile, $tempencfile, $pubkey['c'], array(), PKCS7_DETACHED | PKCS7_BINARY)) { + $this->Error('Unable to encrypt the file: '.$tempkeyfile); + } + unlink($tempkeyfile); + // read encryption signature + $signature = file_get_contents($tempencfile, false, null, $envelope_lenght); + unlink($tempencfile); + // extract signature + $signature = substr($signature, strpos($signature, 'Content-Disposition')); + $tmparr = explode("\n\n", $signature); + $signature = trim($tmparr[1]); + unset($tmparr); + // decode signature + $signature = base64_decode($signature); + // convert signature to hex + $hexsignature = current(unpack('H*', $signature)); + // store signature on recipients array + $this->encryptdata['Recipients'][] = $hexsignature; + // The bytes of each item in the Recipients array of PKCS#7 objects in the order in which they appear in the array + $recipient_bytes .= $signature; + } + // calculate encryption key + if ($this->encryptdata['mode'] == 3) { // AES-256 + $this->encryptdata['key'] = substr(hash('sha256', $seed.$recipient_bytes, true), 0, $keybytelen); + } else { // RC4-40, RC4-128, AES-128 + $this->encryptdata['key'] = substr(sha1($seed.$recipient_bytes, true), 0, $keybytelen); + } + } + } + + /** + * Return the premission code used on encryption (P value). + * @param $permissions (Array) the set of permissions (specify the ones you want to block). + * @param $mode (int) encryption strength: 0 = RC4 40 bit; 1 = RC4 128 bit; 2 = AES 128 bit; 3 = AES 256 bit. + * @protected + * @since 5.0.005 (2010-05-12) + * @author Nicola Asuni + */ + protected function getUserPermissionCode($permissions, $mode=0) { + $options = array( + 'owner' => 2, // bit 2 -- inverted logic: cleared by default + 'print' => 4, // bit 3 + 'modify' => 8, // bit 4 + 'copy' => 16, // bit 5 + 'annot-forms' => 32, // bit 6 + 'fill-forms' => 256, // bit 9 + 'extract' => 512, // bit 10 + 'assemble' => 1024,// bit 11 + 'print-high' => 2048 // bit 12 + ); + $protection = 2147422012; // 32 bit: (01111111 11111111 00001111 00111100) + foreach ($permissions as $permission) { + if (!isset($options[$permission])) { + $this->Error('Incorrect permission: '.$permission); + } + if (($mode > 0) OR ($options[$permission] <= 32)) { + // set only valid permissions + if ($options[$permission] == 2) { + // the logic for bit 2 is inverted (cleared by default) + $protection += $options[$permission]; + } else { + $protection -= $options[$permission]; + } + } + } + return $protection; + } + + /** + * Set document protection + * Remark: the protection against modification is for people who have the full Acrobat product. + * If you don't set any password, the document will open as usual. If you set a user password, the PDF viewer will ask for it before displaying the document. The master password, if different from the user one, can be used to get full access. + * Note: protecting a document requires to encrypt it, which increases the processing time a lot. This can cause a PHP time-out in some cases, especially if the document contains images or fonts. + * @param $permissions (Array) the set of permissions (specify the ones you want to block):
        • print : Print the document;
        • modify : Modify the contents of the document by operations other than those controlled by 'fill-forms', 'extract' and 'assemble';
        • copy : Copy or otherwise extract text and graphics from the document;
        • annot-forms : Add or modify text annotations, fill in interactive form fields, and, if 'modify' is also set, create or modify interactive form fields (including signature fields);
        • fill-forms : Fill in existing interactive form fields (including signature fields), even if 'annot-forms' is not specified;
        • extract : Extract text and graphics (in support of accessibility to users with disabilities or for other purposes);
        • assemble : Assemble the document (insert, rotate, or delete pages and create bookmarks or thumbnail images), even if 'modify' is not set;
        • print-high : Print the document to a representation from which a faithful digital copy of the PDF content could be generated. When this is not set, printing is limited to a low-level representation of the appearance, possibly of degraded quality.
        • owner : (inverted logic - only for public-key) when set permits change of encryption and enables all other permissions.
        + * @param $user_pass (String) user password. Empty by default. + * @param $owner_pass (String) owner password. If not specified, a random value is used. + * @param $mode (int) encryption strength: 0 = RC4 40 bit; 1 = RC4 128 bit; 2 = AES 128 bit; 3 = AES 256 bit. + * @param $pubkeys (String) array of recipients containing public-key certificates ('c') and permissions ('p'). For example: array(array('c' => 'file://../tcpdf.crt', 'p' => array('print'))) + * @public + * @since 2.0.000 (2008-01-02) + * @author Nicola Asuni + */ + public function SetProtection($permissions=array('print', 'modify', 'copy', 'annot-forms', 'fill-forms', 'extract', 'assemble', 'print-high'), $user_pass='', $owner_pass=null, $mode=0, $pubkeys=null) { + $this->encryptdata['protection'] = $this->getUserPermissionCode($permissions, $mode); + if (($pubkeys !== null) AND (is_array($pubkeys))) { + // public-key mode + $this->encryptdata['pubkeys'] = $pubkeys; + if ($mode == 0) { + // public-Key Security requires at least 128 bit + $mode = 1; + } + if (!function_exists('openssl_pkcs7_encrypt')) { + $this->Error('Public-Key Security requires openssl library.'); + } + // Set Public-Key filter (availabe are: Entrust.PPKEF, Adobe.PPKLite, Adobe.PubSec) + $this->encryptdata['pubkey'] = true; + $this->encryptdata['Filter'] = 'Adobe.PubSec'; + $this->encryptdata['StmF'] = 'DefaultCryptFilter'; + $this->encryptdata['StrF'] = 'DefaultCryptFilter'; + } else { + // standard mode (password mode) + $this->encryptdata['pubkey'] = false; + $this->encryptdata['Filter'] = 'Standard'; + $this->encryptdata['StmF'] = 'StdCF'; + $this->encryptdata['StrF'] = 'StdCF'; + } + if ($mode > 1) { // AES + if (!extension_loaded('mcrypt')) { + $this->Error('AES encryption requires mcrypt library (http://www.php.net/manual/en/mcrypt.requirements.php).'); + } + if (mcrypt_get_cipher_name(MCRYPT_RIJNDAEL_128) === false) { + $this->Error('AES encryption requires MCRYPT_RIJNDAEL_128 cypher.'); + } + if (($mode == 3) AND !function_exists('hash')) { + // the Hash extension requires no external libraries and is enabled by default as of PHP 5.1.2. + $this->Error('AES 256 encryption requires HASH Message Digest Framework (http://www.php.net/manual/en/book.hash.php).'); + } + } + if ($owner_pass === null) { + $owner_pass = md5($this->getRandomSeed()); + } + $this->encryptdata['user_password'] = $user_pass; + $this->encryptdata['owner_password'] = $owner_pass; + $this->encryptdata['mode'] = $mode; + switch ($mode) { + case 0: { // RC4 40 bit + $this->encryptdata['V'] = 1; + $this->encryptdata['Length'] = 40; + $this->encryptdata['CF']['CFM'] = 'V2'; + break; + } + case 1: { // RC4 128 bit + $this->encryptdata['V'] = 2; + $this->encryptdata['Length'] = 128; + $this->encryptdata['CF']['CFM'] = 'V2'; + if ($this->encryptdata['pubkey']) { + $this->encryptdata['SubFilter'] = 'adbe.pkcs7.s4'; + $this->encryptdata['Recipients'] = array(); + } + break; + } + case 2: { // AES 128 bit + $this->encryptdata['V'] = 4; + $this->encryptdata['Length'] = 128; + $this->encryptdata['CF']['CFM'] = 'AESV2'; + $this->encryptdata['CF']['Length'] = 128; + if ($this->encryptdata['pubkey']) { + $this->encryptdata['SubFilter'] = 'adbe.pkcs7.s5'; + $this->encryptdata['Recipients'] = array(); + } + break; + } + case 3: { // AES 256 bit + $this->encryptdata['V'] = 5; + $this->encryptdata['Length'] = 256; + $this->encryptdata['CF']['CFM'] = 'AESV3'; + $this->encryptdata['CF']['Length'] = 256; + if ($this->encryptdata['pubkey']) { + $this->encryptdata['SubFilter'] = 'adbe.pkcs7.s5'; + $this->encryptdata['Recipients'] = array(); + } + break; + } + } + $this->encrypted = true; + $this->encryptdata['fileid'] = $this->convertHexStringToString($this->file_id); + $this->_generateencryptionkey(); + } + + /** + * Convert hexadecimal string to string + * @param $bs (string) byte-string to convert + * @return String + * @protected + * @since 5.0.005 (2010-05-12) + * @author Nicola Asuni + */ + protected function convertHexStringToString($bs) { + $string = ''; // string to be returned + $bslenght = strlen($bs); + if (($bslenght % 2) != 0) { + // padding + $bs .= '0'; + ++$bslenght; + } + for ($i = 0; $i < $bslenght; $i += 2) { + $string .= chr(hexdec($bs{$i}.$bs{($i + 1)})); + } + return $string; + } + + /** + * Convert string to hexadecimal string (byte string) + * @param $s (string) string to convert + * @return byte string + * @protected + * @since 5.0.010 (2010-05-17) + * @author Nicola Asuni + */ + protected function convertStringToHexString($s) { + $bs = ''; + $chars = preg_split('//', $s, -1, PREG_SPLIT_NO_EMPTY); + foreach ($chars as $c) { + $bs .= sprintf('%02s', dechex(ord($c))); + } + return $bs; + } + + /** + * Convert encryption P value to a string of bytes, low-order byte first. + * @param $protection (string) 32bit encryption permission value (P value) + * @return String + * @protected + * @since 5.0.005 (2010-05-12) + * @author Nicola Asuni + */ + protected function getEncPermissionsString($protection) { + $binprot = sprintf('%032b', $protection); + $str = chr(bindec(substr($binprot, 24, 8))); + $str .= chr(bindec(substr($binprot, 16, 8))); + $str .= chr(bindec(substr($binprot, 8, 8))); + $str .= chr(bindec(substr($binprot, 0, 8))); + return $str; + } + + // END OF ENCRYPTION FUNCTIONS ------------------------- + + // START TRANSFORMATIONS SECTION ----------------------- + + /** + * Starts a 2D tranformation saving current graphic state. + * This function must be called before scaling, mirroring, translation, rotation and skewing. + * Use StartTransform() before, and StopTransform() after the transformations to restore the normal behavior. + * @public + * @since 2.1.000 (2008-01-07) + * @see StartTransform(), StopTransform() + */ + public function StartTransform() { + $this->_out('q'); + if ($this->inxobj) { + // we are inside an XObject template + $this->xobjects[$this->xobjid]['transfmrk'][] = strlen($this->xobjects[$this->xobjid]['outdata']); + } else { + $this->transfmrk[$this->page][] = $this->pagelen[$this->page]; + } + ++$this->transfmatrix_key; + $this->transfmatrix[$this->transfmatrix_key] = array(); + } + + /** + * Stops a 2D tranformation restoring previous graphic state. + * This function must be called after scaling, mirroring, translation, rotation and skewing. + * Use StartTransform() before, and StopTransform() after the transformations to restore the normal behavior. + * @public + * @since 2.1.000 (2008-01-07) + * @see StartTransform(), StopTransform() + */ + public function StopTransform() { + $this->_out('Q'); + if (isset($this->transfmatrix[$this->transfmatrix_key])) { + array_pop($this->transfmatrix[$this->transfmatrix_key]); + --$this->transfmatrix_key; + } + if ($this->inxobj) { + // we are inside an XObject template + array_pop($this->xobjects[$this->xobjid]['transfmrk']); + } else { + array_pop($this->transfmrk[$this->page]); + } + } + /** + * Horizontal Scaling. + * @param $s_x (float) scaling factor for width as percent. 0 is not allowed. + * @param $x (int) abscissa of the scaling center. Default is current x position + * @param $y (int) ordinate of the scaling center. Default is current y position + * @public + * @since 2.1.000 (2008-01-07) + * @see StartTransform(), StopTransform() + */ + public function ScaleX($s_x, $x='', $y='') { + $this->Scale($s_x, 100, $x, $y); + } + + /** + * Vertical Scaling. + * @param $s_y (float) scaling factor for height as percent. 0 is not allowed. + * @param $x (int) abscissa of the scaling center. Default is current x position + * @param $y (int) ordinate of the scaling center. Default is current y position + * @public + * @since 2.1.000 (2008-01-07) + * @see StartTransform(), StopTransform() + */ + public function ScaleY($s_y, $x='', $y='') { + $this->Scale(100, $s_y, $x, $y); + } + + /** + * Vertical and horizontal proportional Scaling. + * @param $s (float) scaling factor for width and height as percent. 0 is not allowed. + * @param $x (int) abscissa of the scaling center. Default is current x position + * @param $y (int) ordinate of the scaling center. Default is current y position + * @public + * @since 2.1.000 (2008-01-07) + * @see StartTransform(), StopTransform() + */ + public function ScaleXY($s, $x='', $y='') { + $this->Scale($s, $s, $x, $y); + } + + /** + * Vertical and horizontal non-proportional Scaling. + * @param $s_x (float) scaling factor for width as percent. 0 is not allowed. + * @param $s_y (float) scaling factor for height as percent. 0 is not allowed. + * @param $x (int) abscissa of the scaling center. Default is current x position + * @param $y (int) ordinate of the scaling center. Default is current y position + * @public + * @since 2.1.000 (2008-01-07) + * @see StartTransform(), StopTransform() + */ + public function Scale($s_x, $s_y, $x='', $y='') { + if ($x === '') { + $x = $this->x; + } + if ($y === '') { + $y = $this->y; + } + if (($s_x == 0) OR ($s_y == 0)) { + $this->Error('Please do not use values equal to zero for scaling'); + } + $y = ($this->h - $y) * $this->k; + $x *= $this->k; + //calculate elements of transformation matrix + $s_x /= 100; + $s_y /= 100; + $tm = array(); + $tm[0] = $s_x; + $tm[1] = 0; + $tm[2] = 0; + $tm[3] = $s_y; + $tm[4] = $x * (1 - $s_x); + $tm[5] = $y * (1 - $s_y); + //scale the coordinate system + $this->Transform($tm); + } + + /** + * Horizontal Mirroring. + * @param $x (int) abscissa of the point. Default is current x position + * @public + * @since 2.1.000 (2008-01-07) + * @see StartTransform(), StopTransform() + */ + public function MirrorH($x='') { + $this->Scale(-100, 100, $x); + } + + /** + * Verical Mirroring. + * @param $y (int) ordinate of the point. Default is current y position + * @public + * @since 2.1.000 (2008-01-07) + * @see StartTransform(), StopTransform() + */ + public function MirrorV($y='') { + $this->Scale(100, -100, '', $y); + } + + /** + * Point reflection mirroring. + * @param $x (int) abscissa of the point. Default is current x position + * @param $y (int) ordinate of the point. Default is current y position + * @public + * @since 2.1.000 (2008-01-07) + * @see StartTransform(), StopTransform() + */ + public function MirrorP($x='',$y='') { + $this->Scale(-100, -100, $x, $y); + } + + /** + * Reflection against a straight line through point (x, y) with the gradient angle (angle). + * @param $angle (float) gradient angle of the straight line. Default is 0 (horizontal line). + * @param $x (int) abscissa of the point. Default is current x position + * @param $y (int) ordinate of the point. Default is current y position + * @public + * @since 2.1.000 (2008-01-07) + * @see StartTransform(), StopTransform() + */ + public function MirrorL($angle=0, $x='',$y='') { + $this->Scale(-100, 100, $x, $y); + $this->Rotate(-2*($angle-90), $x, $y); + } + + /** + * Translate graphic object horizontally. + * @param $t_x (int) movement to the right (or left for RTL) + * @public + * @since 2.1.000 (2008-01-07) + * @see StartTransform(), StopTransform() + */ + public function TranslateX($t_x) { + $this->Translate($t_x, 0); + } + + /** + * Translate graphic object vertically. + * @param $t_y (int) movement to the bottom + * @public + * @since 2.1.000 (2008-01-07) + * @see StartTransform(), StopTransform() + */ + public function TranslateY($t_y) { + $this->Translate(0, $t_y); + } + + /** + * Translate graphic object horizontally and vertically. + * @param $t_x (int) movement to the right + * @param $t_y (int) movement to the bottom + * @public + * @since 2.1.000 (2008-01-07) + * @see StartTransform(), StopTransform() + */ + public function Translate($t_x, $t_y) { + //calculate elements of transformation matrix + $tm = array(); + $tm[0] = 1; + $tm[1] = 0; + $tm[2] = 0; + $tm[3] = 1; + $tm[4] = $t_x * $this->k; + $tm[5] = -$t_y * $this->k; + //translate the coordinate system + $this->Transform($tm); + } + + /** + * Rotate object. + * @param $angle (float) angle in degrees for counter-clockwise rotation + * @param $x (int) abscissa of the rotation center. Default is current x position + * @param $y (int) ordinate of the rotation center. Default is current y position + * @public + * @since 2.1.000 (2008-01-07) + * @see StartTransform(), StopTransform() + */ + public function Rotate($angle, $x='', $y='') { + if ($x === '') { + $x = $this->x; + } + if ($y === '') { + $y = $this->y; + } + $y = ($this->h - $y) * $this->k; + $x *= $this->k; + //calculate elements of transformation matrix + $tm = array(); + $tm[0] = cos(deg2rad($angle)); + $tm[1] = sin(deg2rad($angle)); + $tm[2] = -$tm[1]; + $tm[3] = $tm[0]; + $tm[4] = $x + ($tm[1] * $y) - ($tm[0] * $x); + $tm[5] = $y - ($tm[0] * $y) - ($tm[1] * $x); + //rotate the coordinate system around ($x,$y) + $this->Transform($tm); + } + + /** + * Skew horizontally. + * @param $angle_x (float) angle in degrees between -90 (skew to the left) and 90 (skew to the right) + * @param $x (int) abscissa of the skewing center. default is current x position + * @param $y (int) ordinate of the skewing center. default is current y position + * @public + * @since 2.1.000 (2008-01-07) + * @see StartTransform(), StopTransform() + */ + public function SkewX($angle_x, $x='', $y='') { + $this->Skew($angle_x, 0, $x, $y); + } + + /** + * Skew vertically. + * @param $angle_y (float) angle in degrees between -90 (skew to the bottom) and 90 (skew to the top) + * @param $x (int) abscissa of the skewing center. default is current x position + * @param $y (int) ordinate of the skewing center. default is current y position + * @public + * @since 2.1.000 (2008-01-07) + * @see StartTransform(), StopTransform() + */ + public function SkewY($angle_y, $x='', $y='') { + $this->Skew(0, $angle_y, $x, $y); + } + + /** + * Skew. + * @param $angle_x (float) angle in degrees between -90 (skew to the left) and 90 (skew to the right) + * @param $angle_y (float) angle in degrees between -90 (skew to the bottom) and 90 (skew to the top) + * @param $x (int) abscissa of the skewing center. default is current x position + * @param $y (int) ordinate of the skewing center. default is current y position + * @public + * @since 2.1.000 (2008-01-07) + * @see StartTransform(), StopTransform() + */ + public function Skew($angle_x, $angle_y, $x='', $y='') { + if ($x === '') { + $x = $this->x; + } + if ($y === '') { + $y = $this->y; + } + if (($angle_x <= -90) OR ($angle_x >= 90) OR ($angle_y <= -90) OR ($angle_y >= 90)) { + $this->Error('Please use values between -90 and +90 degrees for Skewing.'); + } + $x *= $this->k; + $y = ($this->h - $y) * $this->k; + //calculate elements of transformation matrix + $tm = array(); + $tm[0] = 1; + $tm[1] = tan(deg2rad($angle_y)); + $tm[2] = tan(deg2rad($angle_x)); + $tm[3] = 1; + $tm[4] = -$tm[2] * $y; + $tm[5] = -$tm[1] * $x; + //skew the coordinate system + $this->Transform($tm); + } + + /** + * Apply graphic transformations. + * @param $tm (array) transformation matrix + * @protected + * @since 2.1.000 (2008-01-07) + * @see StartTransform(), StopTransform() + */ + protected function Transform($tm) { + $this->_out(sprintf('%.3F %.3F %.3F %.3F %.3F %.3F cm', $tm[0], $tm[1], $tm[2], $tm[3], $tm[4], $tm[5])); + // add tranformation matrix + $this->transfmatrix[$this->transfmatrix_key][] = array('a' => $tm[0], 'b' => $tm[1], 'c' => $tm[2], 'd' => $tm[3], 'e' => $tm[4], 'f' => $tm[5]); + // update transformation mark + if ($this->inxobj) { + // we are inside an XObject template + if (end($this->xobjects[$this->xobjid]['transfmrk']) !== false) { + $key = key($this->xobjects[$this->xobjid]['transfmrk']); + $this->xobjects[$this->xobjid]['transfmrk'][$key] = strlen($this->xobjects[$this->xobjid]['outdata']); + } + } elseif (end($this->transfmrk[$this->page]) !== false) { + $key = key($this->transfmrk[$this->page]); + $this->transfmrk[$this->page][$key] = $this->pagelen[$this->page]; + } + } + + // END TRANSFORMATIONS SECTION ------------------------- + + // START GRAPHIC FUNCTIONS SECTION --------------------- + // The following section is based on the code provided by David Hernandez Sanz + + /** + * Defines the line width. By default, the value equals 0.2 mm. The method can be called before the first page is created and the value is retained from page to page. + * @param $width (float) The width. + * @public + * @since 1.0 + * @see Line(), Rect(), Cell(), MultiCell() + */ + public function SetLineWidth($width) { + //Set line width + $this->LineWidth = $width; + $this->linestyleWidth = sprintf('%.2F w', ($width * $this->k)); + if ($this->page > 0) { + $this->_out($this->linestyleWidth); + } + } + + /** + * Returns the current the line width. + * @return int Line width + * @public + * @since 2.1.000 (2008-01-07) + * @see Line(), SetLineWidth() + */ + public function GetLineWidth() { + return $this->LineWidth; + } + + /** + * Set line style. + * @param $style (array) Line style. Array with keys among the following: + *
          + *
        • width (float): Width of the line in user units.
        • + *
        • cap (string): Type of cap to put on the line. Possible values are: + * butt, round, square. The difference between "square" and "butt" is that + * "square" projects a flat end past the end of the line.
        • + *
        • join (string): Type of join. Possible values are: miter, round, + * bevel.
        • + *
        • dash (mixed): Dash pattern. Is 0 (without dash) or string with + * series of length values, which are the lengths of the on and off dashes. + * For example: "2" represents 2 on, 2 off, 2 on, 2 off, ...; "2,1" is 2 on, + * 1 off, 2 on, 1 off, ...
        • + *
        • phase (integer): Modifier on the dash pattern which is used to shift + * the point at which the pattern starts.
        • + *
        • color (array): Draw color. Format: array(GREY) or array(R,G,B) or array(C,M,Y,K).
        • + *
        + * @param $ret (boolean) if true do not send the command. + * @return string the PDF command + * @public + * @since 2.1.000 (2008-01-08) + */ + public function SetLineStyle($style, $ret=false) { + $s = ''; // string to be returned + if (!is_array($style)) { + return; + } + extract($style); + if (isset($width)) { + $this->LineWidth = $width; + $this->linestyleWidth = sprintf('%.2F w', ($width * $this->k)); + $s .= $this->linestyleWidth.' '; + } + if (isset($cap)) { + $ca = array('butt' => 0, 'round'=> 1, 'square' => 2); + if (isset($ca[$cap])) { + $this->linestyleCap = $ca[$cap].' J'; + $s .= $this->linestyleCap.' '; + } + } + if (isset($join)) { + $ja = array('miter' => 0, 'round' => 1, 'bevel' => 2); + if (isset($ja[$join])) { + $this->linestyleJoin = $ja[$join].' j'; + $s .= $this->linestyleJoin.' '; + } + } + if (isset($dash)) { + $dash_string = ''; + if ($dash) { + if (preg_match('/^.+,/', $dash) > 0) { + $tab = explode(',', $dash); + } else { + $tab = array($dash); + } + $dash_string = ''; + foreach ($tab as $i => $v) { + if ($i) { + $dash_string .= ' '; + } + $dash_string .= sprintf('%.2F', $v); + } + } + if (!isset($phase) OR !$dash) { + $phase = 0; + } + $this->linestyleDash = sprintf('[%s] %.2F d', $dash_string, $phase); + $s .= $this->linestyleDash.' '; + } + if (isset($color)) { + $s .= $this->SetDrawColorArray($color, true).' '; + } + if (!$ret) { + $this->_out($s); + } + return $s; + } + + /** + * Begin a new subpath by moving the current point to coordinates (x, y), omitting any connecting line segment. + * @param $x (float) Abscissa of point. + * @param $y (float) Ordinate of point. + * @protected + * @since 2.1.000 (2008-01-08) + */ + protected function _outPoint($x, $y) { + $this->_out(sprintf('%.2F %.2F m', $x * $this->k, ($this->h - $y) * $this->k)); + } + + /** + * Append a straight line segment from the current point to the point (x, y). + * The new current point shall be (x, y). + * @param $x (float) Abscissa of end point. + * @param $y (float) Ordinate of end point. + * @protected + * @since 2.1.000 (2008-01-08) + */ + protected function _outLine($x, $y) { + $this->_out(sprintf('%.2F %.2F l', $x * $this->k, ($this->h - $y) * $this->k)); + } + + /** + * Append a rectangle to the current path as a complete subpath, with lower-left corner (x, y) and dimensions widthand height in user space. + * @param $x (float) Abscissa of upper-left corner. + * @param $y (float) Ordinate of upper-left corner. + * @param $w (float) Width. + * @param $h (float) Height. + * @param $op (string) options + * @protected + * @since 2.1.000 (2008-01-08) + */ + protected function _outRect($x, $y, $w, $h, $op) { + $this->_out(sprintf('%.2F %.2F %.2F %.2F re %s', $x * $this->k, ($this->h - $y) * $this->k, $w * $this->k, -$h * $this->k, $op)); + } + + /** + * Append a cubic Bézier curve to the current path. The curve shall extend from the current point to the point (x3, y3), using (x1, y1) and (x2, y2) as the Bézier control points. + * The new current point shall be (x3, y3). + * @param $x1 (float) Abscissa of control point 1. + * @param $y1 (float) Ordinate of control point 1. + * @param $x2 (float) Abscissa of control point 2. + * @param $y2 (float) Ordinate of control point 2. + * @param $x3 (float) Abscissa of end point. + * @param $y3 (float) Ordinate of end point. + * @protected + * @since 2.1.000 (2008-01-08) + */ + protected function _outCurve($x1, $y1, $x2, $y2, $x3, $y3) { + $this->_out(sprintf('%.2F %.2F %.2F %.2F %.2F %.2F c', $x1 * $this->k, ($this->h - $y1) * $this->k, $x2 * $this->k, ($this->h - $y2) * $this->k, $x3 * $this->k, ($this->h - $y3) * $this->k)); + } + + /** + * Append a cubic Bézier curve to the current path. The curve shall extend from the current point to the point (x3, y3), using the current point and (x2, y2) as the Bézier control points. + * The new current point shall be (x3, y3). + * @param $x2 (float) Abscissa of control point 2. + * @param $y2 (float) Ordinate of control point 2. + * @param $x3 (float) Abscissa of end point. + * @param $y3 (float) Ordinate of end point. + * @protected + * @since 4.9.019 (2010-04-26) + */ + protected function _outCurveV($x2, $y2, $x3, $y3) { + $this->_out(sprintf('%.2F %.2F %.2F %.2F v', $x2 * $this->k, ($this->h - $y2) * $this->k, $x3 * $this->k, ($this->h - $y3) * $this->k)); + } + + /** + * Append a cubic Bézier curve to the current path. The curve shall extend from the current point to the point (x3, y3), using (x1, y1) and (x3, y3) as the Bézier control points. + * The new current point shall be (x3, y3). + * @param $x1 (float) Abscissa of control point 1. + * @param $y1 (float) Ordinate of control point 1. + * @param $x3 (float) Abscissa of end point. + * @param $y3 (float) Ordinate of end point. + * @protected + * @since 2.1.000 (2008-01-08) + */ + protected function _outCurveY($x1, $y1, $x3, $y3) { + $this->_out(sprintf('%.2F %.2F %.2F %.2F y', $x1 * $this->k, ($this->h - $y1) * $this->k, $x3 * $this->k, ($this->h - $y3) * $this->k)); + } + + /** + * Draws a line between two points. + * @param $x1 (float) Abscissa of first point. + * @param $y1 (float) Ordinate of first point. + * @param $x2 (float) Abscissa of second point. + * @param $y2 (float) Ordinate of second point. + * @param $style (array) Line style. Array like for SetLineStyle(). Default value: default line style (empty array). + * @public + * @since 1.0 + * @see SetLineWidth(), SetDrawColor(), SetLineStyle() + */ + public function Line($x1, $y1, $x2, $y2, $style=array()) { + if (is_array($style)) { + $this->SetLineStyle($style); + } + $this->_outPoint($x1, $y1); + $this->_outLine($x2, $y2); + $this->_out('S'); + } + + /** + * Draws a rectangle. + * @param $x (float) Abscissa of upper-left corner. + * @param $y (float) Ordinate of upper-left corner. + * @param $w (float) Width. + * @param $h (float) Height. + * @param $style (string) Style of rendering. See the getPathPaintOperator() function for more information. + * @param $border_style (array) Border style of rectangle. Array with keys among the following: + *
          + *
        • all: Line style of all borders. Array like for SetLineStyle().
        • + *
        • L, T, R, B or combinations: Line style of left, top, right or bottom border. Array like for SetLineStyle().
        • + *
        + * If a key is not present or is null, not draws the border. Default value: default line style (empty array). + * @param $border_style (array) Border style of rectangle. Array like for SetLineStyle(). Default value: default line style (empty array). + * @param $fill_color (array) Fill color. Format: array(GREY) or array(R,G,B) or array(C,M,Y,K). Default value: default color (empty array). + * @public + * @since 1.0 + * @see SetLineStyle() + */ + public function Rect($x, $y, $w, $h, $style='', $border_style=array(), $fill_color=array()) { + if (!(false === strpos($style, 'F')) AND !empty($fill_color)) { + $this->SetFillColorArray($fill_color); + } + $op = $this->getPathPaintOperator($style); + if ((!$border_style) OR (isset($border_style['all']))) { + if (isset($border_style['all']) AND $border_style['all']) { + $this->SetLineStyle($border_style['all']); + $border_style = array(); + } + } + $this->_outRect($x, $y, $w, $h, $op); + if ($border_style) { + $border_style2 = array(); + foreach ($border_style as $line => $value) { + $length = strlen($line); + for ($i = 0; $i < $length; ++$i) { + $border_style2[$line[$i]] = $value; + } + } + $border_style = $border_style2; + if (isset($border_style['L']) AND $border_style['L']) { + $this->Line($x, $y, $x, $y + $h, $border_style['L']); + } + if (isset($border_style['T']) AND $border_style['T']) { + $this->Line($x, $y, $x + $w, $y, $border_style['T']); + } + if (isset($border_style['R']) AND $border_style['R']) { + $this->Line($x + $w, $y, $x + $w, $y + $h, $border_style['R']); + } + if (isset($border_style['B']) AND $border_style['B']) { + $this->Line($x, $y + $h, $x + $w, $y + $h, $border_style['B']); + } + } + } + + /** + * Draws a Bezier curve. + * The Bezier curve is a tangent to the line between the control points at + * either end of the curve. + * @param $x0 (float) Abscissa of start point. + * @param $y0 (float) Ordinate of start point. + * @param $x1 (float) Abscissa of control point 1. + * @param $y1 (float) Ordinate of control point 1. + * @param $x2 (float) Abscissa of control point 2. + * @param $y2 (float) Ordinate of control point 2. + * @param $x3 (float) Abscissa of end point. + * @param $y3 (float) Ordinate of end point. + * @param $style (string) Style of rendering. See the getPathPaintOperator() function for more information. + * @param $line_style (array) Line style of curve. Array like for SetLineStyle(). Default value: default line style (empty array). + * @param $fill_color (array) Fill color. Format: array(GREY) or array(R,G,B) or array(C,M,Y,K). Default value: default color (empty array). + * @public + * @see SetLineStyle() + * @since 2.1.000 (2008-01-08) + */ + public function Curve($x0, $y0, $x1, $y1, $x2, $y2, $x3, $y3, $style='', $line_style=array(), $fill_color=array()) { + if (!(false === strpos($style, 'F')) AND isset($fill_color)) { + $this->SetFillColorArray($fill_color); + } + $op = $this->getPathPaintOperator($style); + if ($line_style) { + $this->SetLineStyle($line_style); + } + $this->_outPoint($x0, $y0); + $this->_outCurve($x1, $y1, $x2, $y2, $x3, $y3); + $this->_out($op); + } + + /** + * Draws a poly-Bezier curve. + * Each Bezier curve segment is a tangent to the line between the control points at + * either end of the curve. + * @param $x0 (float) Abscissa of start point. + * @param $y0 (float) Ordinate of start point. + * @param $segments (float) An array of bezier descriptions. Format: array(x1, y1, x2, y2, x3, y3). + * @param $style (string) Style of rendering. See the getPathPaintOperator() function for more information. + * @param $line_style (array) Line style of curve. Array like for SetLineStyle(). Default value: default line style (empty array). + * @param $fill_color (array) Fill color. Format: array(GREY) or array(R,G,B) or array(C,M,Y,K). Default value: default color (empty array). + * @public + * @see SetLineStyle() + * @since 3.0008 (2008-05-12) + */ + public function Polycurve($x0, $y0, $segments, $style='', $line_style=array(), $fill_color=array()) { + if (!(false === strpos($style, 'F')) AND isset($fill_color)) { + $this->SetFillColorArray($fill_color); + } + $op = $this->getPathPaintOperator($style); + if ($op == 'f') { + $line_style = array(); + } + if ($line_style) { + $this->SetLineStyle($line_style); + } + $this->_outPoint($x0, $y0); + foreach ($segments as $segment) { + list($x1, $y1, $x2, $y2, $x3, $y3) = $segment; + $this->_outCurve($x1, $y1, $x2, $y2, $x3, $y3); + } + $this->_out($op); + } + + /** + * Draws an ellipse. + * An ellipse is formed from n Bezier curves. + * @param $x0 (float) Abscissa of center point. + * @param $y0 (float) Ordinate of center point. + * @param $rx (float) Horizontal radius. + * @param $ry (float) Vertical radius (if ry = 0 then is a circle, see Circle()). Default value: 0. + * @param $angle: (float) Angle oriented (anti-clockwise). Default value: 0. + * @param $astart: (float) Angle start of draw line. Default value: 0. + * @param $afinish: (float) Angle finish of draw line. Default value: 360. + * @param $style (string) Style of rendering. See the getPathPaintOperator() function for more information. + * @param $line_style (array) Line style of ellipse. Array like for SetLineStyle(). Default value: default line style (empty array). + * @param $fill_color (array) Fill color. Format: array(GREY) or array(R,G,B) or array(C,M,Y,K). Default value: default color (empty array). + * @param $nc (integer) Number of curves used to draw a 90 degrees portion of ellipse. + * @author Nicola Asuni + * @public + * @since 2.1.000 (2008-01-08) + */ + public function Ellipse($x0, $y0, $rx, $ry='', $angle=0, $astart=0, $afinish=360, $style='', $line_style=array(), $fill_color=array(), $nc=2) { + if ($this->empty_string($ry) OR ($ry == 0)) { + $ry = $rx; + } + if (!(false === strpos($style, 'F')) AND isset($fill_color)) { + $this->SetFillColorArray($fill_color); + } + $op = $this->getPathPaintOperator($style); + if ($op == 'f') { + $line_style = array(); + } + if ($line_style) { + $this->SetLineStyle($line_style); + } + $this->_outellipticalarc($x0, $y0, $rx, $ry, $angle, $astart, $afinish, false, $nc); + $this->_out($op); + } + + /** + * Append an elliptical arc to the current path. + * An ellipse is formed from n Bezier curves. + * @param $xc (float) Abscissa of center point. + * @param $yc (float) Ordinate of center point. + * @param $rx (float) Horizontal radius. + * @param $ry (float) Vertical radius (if ry = 0 then is a circle, see Circle()). Default value: 0. + * @param $xang: (float) Angle between the X-axis and the major axis of the ellipse. Default value: 0. + * @param $angs: (float) Angle start of draw line. Default value: 0. + * @param $angf: (float) Angle finish of draw line. Default value: 360. + * @param $pie (boolean) if true do not mark the border point (used to draw pie sectors). + * @param $nc (integer) Number of curves used to draw a 90 degrees portion of ellipse. + * @param $startpoint (boolean) if true output a starting point + * @param $ccw (boolean) if true draws in counter-clockwise + * @return array bounding box coordinates (x min, y min, x max, y max) + * @author Nicola Asuni + * @protected + * @since 4.9.019 (2010-04-26) + */ + protected function _outellipticalarc($xc, $yc, $rx, $ry, $xang=0, $angs=0, $angf=360, $pie=false, $nc=2, $startpoint=true, $ccw=true) { + $k = $this->k; + if ($nc < 2) { + $nc = 2; + } + $xmin = 2147483647; + $ymin = 2147483647; + $xmax = 0; + $ymax = 0; + if ($pie) { + // center of the arc + $this->_outPoint($xc, $yc); + } + $xang = deg2rad((float) $xang); + $angs = deg2rad((float) $angs); + $angf = deg2rad((float) $angf); + $as = atan2((sin($angs) / $ry), (cos($angs) / $rx)); + $af = atan2((sin($angf) / $ry), (cos($angf) / $rx)); + if ($as < 0) { + $as += (2 * M_PI); + } + if ($af < 0) { + $af += (2 * M_PI); + } + if ($ccw AND ($as > $af)) { + // reverse rotation + $as -= (2 * M_PI); + } elseif (!$ccw AND ($as < $af)) { + // reverse rotation + $af -= (2 * M_PI); + } + $total_angle = ($af - $as); + if ($nc < 2) { + $nc = 2; + } + // total arcs to draw + $nc *= (2 * abs($total_angle) / M_PI); + $nc = round($nc) + 1; + // angle of each arc + $arcang = $total_angle / $nc; + // center point in PDF coordiantes + $x0 = $xc; + $y0 = ($this->h - $yc); + // starting angle + $ang = $as; + $alpha = sin($arcang) * ((sqrt(4 + (3 * pow(tan(($arcang) / 2), 2))) - 1) / 3); + $cos_xang = cos($xang); + $sin_xang = sin($xang); + $cos_ang = cos($ang); + $sin_ang = sin($ang); + // first arc point + $px1 = $x0 + ($rx * $cos_xang * $cos_ang) - ($ry * $sin_xang * $sin_ang); + $py1 = $y0 + ($rx * $sin_xang * $cos_ang) + ($ry * $cos_xang * $sin_ang); + // first Bezier control point + $qx1 = ($alpha * ((-$rx * $cos_xang * $sin_ang) - ($ry * $sin_xang * $cos_ang))); + $qy1 = ($alpha * ((-$rx * $sin_xang * $sin_ang) + ($ry * $cos_xang * $cos_ang))); + if ($pie) { + // line from center to arc starting point + $this->_outLine($px1, $this->h - $py1); + } elseif ($startpoint) { + // arc starting point + $this->_outPoint($px1, $this->h - $py1); + } + // draw arcs + for ($i = 1; $i <= $nc; ++$i) { + // starting angle + $ang = $as + ($i * $arcang); + $cos_xang = cos($xang); + $sin_xang = sin($xang); + $cos_ang = cos($ang); + $sin_ang = sin($ang); + // second arc point + $px2 = $x0 + ($rx * $cos_xang * $cos_ang) - ($ry * $sin_xang * $sin_ang); + $py2 = $y0 + ($rx * $sin_xang * $cos_ang) + ($ry * $cos_xang * $sin_ang); + // second Bezier control point + $qx2 = ($alpha * ((-$rx * $cos_xang * $sin_ang) - ($ry * $sin_xang * $cos_ang))); + $qy2 = ($alpha * ((-$rx * $sin_xang * $sin_ang) + ($ry * $cos_xang * $cos_ang))); + // draw arc + $cx1 = ($px1 + $qx1); + $cy1 = ($this->h - ($py1 + $qy1)); + $cx2 = ($px2 - $qx2); + $cy2 = ($this->h - ($py2 - $qy2)); + $cx3 = $px2; + $cy3 = ($this->h - $py2); + $this->_outCurve($cx1, $cy1, $cx2, $cy2, $cx3, $cy3); + // get bounding box coordinates + $xmin = min($xmin, $cx1, $cx2, $cx3); + $ymin = min($ymin, $cy1, $cy2, $cy3); + $xmax = max($xmax, $cx1, $cx2, $cx3); + $ymax = max($ymax, $cy1, $cy2, $cy3); + // move to next point + $px1 = $px2; + $py1 = $py2; + $qx1 = $qx2; + $qy1 = $qy2; + } + if ($pie) { + $this->_outLine($xc, $yc); + // get bounding box coordinates + $xmin = min($xmin, $xc); + $ymin = min($ymin, $yc); + $xmax = max($xmax, $xc); + $ymax = max($ymax, $yc); + } + return array($xmin, $ymin, $xmax, $ymax); + } + + /** + * Draws a circle. + * A circle is formed from n Bezier curves. + * @param $x0 (float) Abscissa of center point. + * @param $y0 (float) Ordinate of center point. + * @param $r (float) Radius. + * @param $angstr: (float) Angle start of draw line. Default value: 0. + * @param $angend: (float) Angle finish of draw line. Default value: 360. + * @param $style (string) Style of rendering. See the getPathPaintOperator() function for more information. + * @param $line_style (array) Line style of circle. Array like for SetLineStyle(). Default value: default line style (empty array). + * @param $fill_color (array) Fill color. Format: array(red, green, blue). Default value: default color (empty array). + * @param $nc (integer) Number of curves used to draw a 90 degrees portion of circle. + * @public + * @since 2.1.000 (2008-01-08) + */ + public function Circle($x0, $y0, $r, $angstr=0, $angend=360, $style='', $line_style=array(), $fill_color=array(), $nc=2) { + $this->Ellipse($x0, $y0, $r, $r, 0, $angstr, $angend, $style, $line_style, $fill_color, $nc); + } + + /** + * Draws a polygonal line + * @param $p (array) Points 0 to ($np - 1). Array with values (x0, y0, x1, y1,..., x(np-1), y(np - 1)) + * @param $style (string) Style of rendering. See the getPathPaintOperator() function for more information. + * @param $line_style (array) Line style of polygon. Array with keys among the following: + *
          + *
        • all: Line style of all lines. Array like for SetLineStyle().
        • + *
        • 0 to ($np - 1): Line style of each line. Array like for SetLineStyle().
        • + *
        + * If a key is not present or is null, not draws the line. Default value is default line style (empty array). + * @param $fill_color (array) Fill color. Format: array(GREY) or array(R,G,B) or array(C,M,Y,K). Default value: default color (empty array). + * @since 4.8.003 (2009-09-15) + * @public + */ + public function PolyLine($p, $style='', $line_style=array(), $fill_color=array()) { + $this->Polygon($p, $style, $line_style, $fill_color, false); + } + + /** + * Draws a polygon. + * @param $p (array) Points 0 to ($np - 1). Array with values (x0, y0, x1, y1,..., x(np-1), y(np - 1)) + * @param $style (string) Style of rendering. See the getPathPaintOperator() function for more information. + * @param $line_style (array) Line style of polygon. Array with keys among the following: + *
          + *
        • all: Line style of all lines. Array like for SetLineStyle().
        • + *
        • 0 to ($np - 1): Line style of each line. Array like for SetLineStyle().
        • + *
        + * If a key is not present or is null, not draws the line. Default value is default line style (empty array). + * @param $fill_color (array) Fill color. Format: array(GREY) or array(R,G,B) or array(C,M,Y,K). Default value: default color (empty array). + * @param $closed (boolean) if true the polygon is closes, otherwise will remain open + * @public + * @since 2.1.000 (2008-01-08) + */ + public function Polygon($p, $style='', $line_style=array(), $fill_color=array(), $closed=true) { + $nc = count($p); // number of coordinates + $np = $nc / 2; // number of points + if ($closed) { + // close polygon by adding the first 2 points at the end (one line) + for ($i = 0; $i < 4; ++$i) { + $p[$nc + $i] = $p[$i]; + } + // copy style for the last added line + if (isset($line_style[0])) { + $line_style[$np] = $line_style[0]; + } + $nc += 4; + } + if (!(false === strpos($style, 'F')) AND isset($fill_color)) { + $this->SetFillColorArray($fill_color); + } + $op = $this->getPathPaintOperator($style); + if ($op == 'f') { + $line_style = array(); + } + $draw = true; + if ($line_style) { + if (isset($line_style['all'])) { + $this->SetLineStyle($line_style['all']); + } else { + $draw = false; + if ($op == 'B') { + // draw fill + $op = 'f'; + $this->_outPoint($p[0], $p[1]); + for ($i = 2; $i < $nc; $i = $i + 2) { + $this->_outLine($p[$i], $p[$i + 1]); + } + $this->_out($op); + } + // draw outline + $this->_outPoint($p[0], $p[1]); + for ($i = 2; $i < $nc; $i = $i + 2) { + $line_num = ($i / 2) - 1; + if (isset($line_style[$line_num])) { + if ($line_style[$line_num] != 0) { + if (is_array($line_style[$line_num])) { + $this->_out('S'); + $this->SetLineStyle($line_style[$line_num]); + $this->_outPoint($p[$i - 2], $p[$i - 1]); + $this->_outLine($p[$i], $p[$i + 1]); + $this->_out('S'); + $this->_outPoint($p[$i], $p[$i + 1]); + } else { + $this->_outLine($p[$i], $p[$i + 1]); + } + } + } else { + $this->_outLine($p[$i], $p[$i + 1]); + } + } + $this->_out($op); + } + } + if ($draw) { + $this->_outPoint($p[0], $p[1]); + for ($i = 2; $i < $nc; $i = $i + 2) { + $this->_outLine($p[$i], $p[$i + 1]); + } + $this->_out($op); + } + } + + /** + * Draws a regular polygon. + * @param $x0 (float) Abscissa of center point. + * @param $y0 (float) Ordinate of center point. + * @param $r: (float) Radius of inscribed circle. + * @param $ns (integer) Number of sides. + * @param $angle (float) Angle oriented (anti-clockwise). Default value: 0. + * @param $draw_circle (boolean) Draw inscribed circle or not. Default value: false. + * @param $style (string) Style of rendering. See the getPathPaintOperator() function for more information. + * @param $line_style (array) Line style of polygon sides. Array with keys among the following: + *
          + *
        • all: Line style of all sides. Array like for SetLineStyle().
        • + *
        • 0 to ($ns - 1): Line style of each side. Array like for SetLineStyle().
        • + *
        + * If a key is not present or is null, not draws the side. Default value is default line style (empty array). + * @param $fill_color (array) Fill color. Format: array(red, green, blue). Default value: default color (empty array). + * @param $circle_style (string) Style of rendering of inscribed circle (if draws). Possible values are: + *
          + *
        • D or empty string: Draw (default).
        • + *
        • F: Fill.
        • + *
        • DF or FD: Draw and fill.
        • + *
        • CNZ: Clipping mode (using the even-odd rule to determine which regions lie inside the clipping path).
        • + *
        • CEO: Clipping mode (using the nonzero winding number rule to determine which regions lie inside the clipping path).
        • + *
        + * @param $circle_outLine_style (array) Line style of inscribed circle (if draws). Array like for SetLineStyle(). Default value: default line style (empty array). + * @param $circle_fill_color (array) Fill color of inscribed circle (if draws). Format: array(red, green, blue). Default value: default color (empty array). + * @public + * @since 2.1.000 (2008-01-08) + */ + public function RegularPolygon($x0, $y0, $r, $ns, $angle=0, $draw_circle=false, $style='', $line_style=array(), $fill_color=array(), $circle_style='', $circle_outLine_style=array(), $circle_fill_color=array()) { + if (3 > $ns) { + $ns = 3; + } + if ($draw_circle) { + $this->Circle($x0, $y0, $r, 0, 360, $circle_style, $circle_outLine_style, $circle_fill_color); + } + $p = array(); + for ($i = 0; $i < $ns; ++$i) { + $a = $angle + ($i * 360 / $ns); + $a_rad = deg2rad((float) $a); + $p[] = $x0 + ($r * sin($a_rad)); + $p[] = $y0 + ($r * cos($a_rad)); + } + $this->Polygon($p, $style, $line_style, $fill_color); + } + + /** + * Draws a star polygon + * @param $x0 (float) Abscissa of center point. + * @param $y0 (float) Ordinate of center point. + * @param $r (float) Radius of inscribed circle. + * @param $nv (integer) Number of vertices. + * @param $ng (integer) Number of gap (if ($ng % $nv = 1) then is a regular polygon). + * @param $angle: (float) Angle oriented (anti-clockwise). Default value: 0. + * @param $draw_circle: (boolean) Draw inscribed circle or not. Default value is false. + * @param $style (string) Style of rendering. See the getPathPaintOperator() function for more information. + * @param $line_style (array) Line style of polygon sides. Array with keys among the following: + *
          + *
        • all: Line style of all sides. Array like for + * SetLineStyle().
        • + *
        • 0 to (n - 1): Line style of each side. Array like for SetLineStyle().
        • + *
        + * If a key is not present or is null, not draws the side. Default value is default line style (empty array). + * @param $fill_color (array) Fill color. Format: array(red, green, blue). Default value: default color (empty array). + * @param $circle_style (string) Style of rendering of inscribed circle (if draws). Possible values are: + *
          + *
        • D or empty string: Draw (default).
        • + *
        • F: Fill.
        • + *
        • DF or FD: Draw and fill.
        • + *
        • CNZ: Clipping mode (using the even-odd rule to determine which regions lie inside the clipping path).
        • + *
        • CEO: Clipping mode (using the nonzero winding number rule to determine which regions lie inside the clipping path).
        • + *
        + * @param $circle_outLine_style (array) Line style of inscribed circle (if draws). Array like for SetLineStyle(). Default value: default line style (empty array). + * @param $circle_fill_color (array) Fill color of inscribed circle (if draws). Format: array(red, green, blue). Default value: default color (empty array). + * @public + * @since 2.1.000 (2008-01-08) + */ + public function StarPolygon($x0, $y0, $r, $nv, $ng, $angle=0, $draw_circle=false, $style='', $line_style=array(), $fill_color=array(), $circle_style='', $circle_outLine_style=array(), $circle_fill_color=array()) { + if ($nv < 2) { + $nv = 2; + } + if ($draw_circle) { + $this->Circle($x0, $y0, $r, 0, 360, $circle_style, $circle_outLine_style, $circle_fill_color); + } + $p2 = array(); + $visited = array(); + for ($i = 0; $i < $nv; ++$i) { + $a = $angle + ($i * 360 / $nv); + $a_rad = deg2rad((float) $a); + $p2[] = $x0 + ($r * sin($a_rad)); + $p2[] = $y0 + ($r * cos($a_rad)); + $visited[] = false; + } + $p = array(); + $i = 0; + do { + $p[] = $p2[$i * 2]; + $p[] = $p2[($i * 2) + 1]; + $visited[$i] = true; + $i += $ng; + $i %= $nv; + } while (!$visited[$i]); + $this->Polygon($p, $style, $line_style, $fill_color); + } + + /** + * Draws a rounded rectangle. + * @param $x (float) Abscissa of upper-left corner. + * @param $y (float) Ordinate of upper-left corner. + * @param $w (float) Width. + * @param $h (float) Height. + * @param $r (float) the radius of the circle used to round off the corners of the rectangle. + * @param $round_corner (string) Draws rounded corner or not. String with a 0 (not rounded i-corner) or 1 (rounded i-corner) in i-position. Positions are, in order and begin to 0: top left, top right, bottom right and bottom left. Default value: all rounded corner ("1111"). + * @param $style (string) Style of rendering. See the getPathPaintOperator() function for more information. + * @param $border_style (array) Border style of rectangle. Array like for SetLineStyle(). Default value: default line style (empty array). + * @param $fill_color (array) Fill color. Format: array(GREY) or array(R,G,B) or array(C,M,Y,K). Default value: default color (empty array). + * @public + * @since 2.1.000 (2008-01-08) + */ + public function RoundedRect($x, $y, $w, $h, $r, $round_corner='1111', $style='', $border_style=array(), $fill_color=array()) { + $this->RoundedRectXY($x, $y, $w, $h, $r, $r, $round_corner, $style, $border_style, $fill_color); + } + + /** + * Draws a rounded rectangle. + * @param $x (float) Abscissa of upper-left corner. + * @param $y (float) Ordinate of upper-left corner. + * @param $w (float) Width. + * @param $h (float) Height. + * @param $rx (float) the x-axis radius of the ellipse used to round off the corners of the rectangle. + * @param $ry (float) the y-axis radius of the ellipse used to round off the corners of the rectangle. + * @param $round_corner (string) Draws rounded corner or not. String with a 0 (not rounded i-corner) or 1 (rounded i-corner) in i-position. Positions are, in order and begin to 0: top left, top right, bottom right and bottom left. Default value: all rounded corner ("1111"). + * @param $style (string) Style of rendering. See the getPathPaintOperator() function for more information. + * @param $border_style (array) Border style of rectangle. Array like for SetLineStyle(). Default value: default line style (empty array). + * @param $fill_color (array) Fill color. Format: array(GREY) or array(R,G,B) or array(C,M,Y,K). Default value: default color (empty array). + * @public + * @since 4.9.019 (2010-04-22) + */ + public function RoundedRectXY($x, $y, $w, $h, $rx, $ry, $round_corner='1111', $style='', $border_style=array(), $fill_color=array()) { + if (($round_corner == '0000') OR (($rx == $ry) AND ($rx == 0))) { + // Not rounded + $this->Rect($x, $y, $w, $h, $style, $border_style, $fill_color); + return; + } + // Rounded + if (!(false === strpos($style, 'F')) AND isset($fill_color)) { + $this->SetFillColorArray($fill_color); + } + $op = $this->getPathPaintOperator($style); + if ($op == 'f') { + $border_style = array(); + } + if ($border_style) { + $this->SetLineStyle($border_style); + } + $MyArc = 4 / 3 * (sqrt(2) - 1); + $this->_outPoint($x + $rx, $y); + $xc = $x + $w - $rx; + $yc = $y + $ry; + $this->_outLine($xc, $y); + if ($round_corner[0]) { + $this->_outCurve($xc + ($rx * $MyArc), $yc - $ry, $xc + $rx, $yc - ($ry * $MyArc), $xc + $rx, $yc); + } else { + $this->_outLine($x + $w, $y); + } + $xc = $x + $w - $rx; + $yc = $y + $h - $ry; + $this->_outLine($x + $w, $yc); + if ($round_corner[1]) { + $this->_outCurve($xc + $rx, $yc + ($ry * $MyArc), $xc + ($rx * $MyArc), $yc + $ry, $xc, $yc + $ry); + } else { + $this->_outLine($x + $w, $y + $h); + } + $xc = $x + $rx; + $yc = $y + $h - $ry; + $this->_outLine($xc, $y + $h); + if ($round_corner[2]) { + $this->_outCurve($xc - ($rx * $MyArc), $yc + $ry, $xc - $rx, $yc + ($ry * $MyArc), $xc - $rx, $yc); + } else { + $this->_outLine($x, $y + $h); + } + $xc = $x + $rx; + $yc = $y + $ry; + $this->_outLine($x, $yc); + if ($round_corner[3]) { + $this->_outCurve($xc - $rx, $yc - ($ry * $MyArc), $xc - ($rx * $MyArc), $yc - $ry, $xc, $yc - $ry); + } else { + $this->_outLine($x, $y); + $this->_outLine($x + $rx, $y); + } + $this->_out($op); + } + + /** + * Draws a grahic arrow. + * @param $x0 (float) Abscissa of first point. + * @param $y0 (float) Ordinate of first point. + * @param $x1 (float) Abscissa of second point. + * @param $y1 (float) Ordinate of second point. + * @param $head_style (int) (0 = draw only arrowhead arms, 1 = draw closed arrowhead, but no fill, 2 = closed and filled arrowhead, 3 = filled arrowhead) + * @param $arm_size (float) length of arrowhead arms + * @param $arm_angle (int) angle between an arm and the shaft + * @author Piotr Galecki, Nicola Asuni, Andy Meier + * @since 4.6.018 (2009-07-10) + */ + public function Arrow($x0, $y0, $x1, $y1, $head_style=0, $arm_size=5, $arm_angle=15) { + // getting arrow direction angle + // 0 deg angle is when both arms go along X axis. angle grows clockwise. + $dir_angle = atan2(($y0 - $y1), ($x0 - $x1)); + if ($dir_angle < 0) { + $dir_angle += (2 * M_PI); + } + $arm_angle = deg2rad($arm_angle); + $sx1 = $x1; + $sy1 = $y1; + if ($head_style > 0) { + // calculate the stopping point for the arrow shaft + $sx1 = $x1 + (($arm_size - $this->LineWidth) * cos($dir_angle)); + $sy1 = $y1 + (($arm_size - $this->LineWidth) * sin($dir_angle)); + } + // main arrow line / shaft + $this->Line($x0, $y0, $sx1, $sy1); + // left arrowhead arm tip + $x2L = $x1 + ($arm_size * cos($dir_angle + $arm_angle)); + $y2L = $y1 + ($arm_size * sin($dir_angle + $arm_angle)); + // right arrowhead arm tip + $x2R = $x1 + ($arm_size * cos($dir_angle - $arm_angle)); + $y2R = $y1 + ($arm_size * sin($dir_angle - $arm_angle)); + $mode = 'D'; + $style = array(); + switch ($head_style) { + case 0: { + // draw only arrowhead arms + $mode = 'D'; + $style = array(1, 1, 0); + break; + } + case 1: { + // draw closed arrowhead, but no fill + $mode = 'D'; + break; + } + case 2: { + // closed and filled arrowhead + $mode = 'DF'; + break; + } + case 3: { + // filled arrowhead + $mode = 'F'; + break; + } + } + $this->Polygon(array($x2L, $y2L, $x1, $y1, $x2R, $y2R), $mode, $style, array()); + } + + // END GRAPHIC FUNCTIONS SECTION ----------------------- + + // BIDIRECTIONAL TEXT SECTION -------------------------- + + /** + * Reverse the RLT substrings using the Bidirectional Algorithm (http://unicode.org/reports/tr9/). + * @param $str (string) string to manipulate. + * @param $setbom (bool) if true set the Byte Order Mark (BOM = 0xFEFF) + * @param $forcertl (bool) if true forces RTL text direction + * @return string + * @protected + * @author Nicola Asuni + * @since 2.1.000 (2008-01-08) + */ + protected function utf8StrRev($str, $setbom=false, $forcertl=false) { + return $this->utf8StrArrRev($this->UTF8StringToArray($str), $str, $setbom, $forcertl); + } + + /** + * Reverse the RLT substrings array using the Bidirectional Algorithm (http://unicode.org/reports/tr9/). + * @param $arr (array) array of unicode values. + * @param $str (string) string to manipulate (or empty value). + * @param $setbom (bool) if true set the Byte Order Mark (BOM = 0xFEFF) + * @param $forcertl (bool) if true forces RTL text direction + * @return string + * @protected + * @author Nicola Asuni + * @since 4.9.000 (2010-03-27) + */ + protected function utf8StrArrRev($arr, $str='', $setbom=false, $forcertl=false) { + return $this->arrUTF8ToUTF16BE($this->utf8Bidi($arr, $str, $forcertl), $setbom); + } + + /** + * Reverse the RLT substrings using the Bidirectional Algorithm (http://unicode.org/reports/tr9/). + * @param $ta (array) array of characters composing the string. + * @param $str (string) string to process + * @param $forcertl (bool) if 'R' forces RTL, if 'L' forces LTR + * @return array of unicode chars + * @author Nicola Asuni + * @protected + * @since 2.4.000 (2008-03-06) + */ + protected function utf8Bidi($ta, $str='', $forcertl=false) { + // paragraph embedding level + $pel = 0; + // max level + $maxlevel = 0; + if ($this->empty_string($str)) { + // create string from array + $str = $this->UTF8ArrSubString($ta); + } + // check if string contains arabic text + if (preg_match($this->unicode->uni_RE_PATTERN_ARABIC, $str)) { + $arabic = true; + } else { + $arabic = false; + } + // check if string contains RTL text + if (!($forcertl OR $arabic OR preg_match($this->unicode->uni_RE_PATTERN_RTL, $str))) { + return $ta; + } + + // get number of chars + $numchars = count($ta); + + if ($forcertl == 'R') { + $pel = 1; + } elseif ($forcertl == 'L') { + $pel = 0; + } else { + // P2. In each paragraph, find the first character of type L, AL, or R. + // P3. If a character is found in P2 and it is of type AL or R, then set the paragraph embedding level to one; otherwise, set it to zero. + for ($i=0; $i < $numchars; ++$i) { + $type = $this->unicode->uni_type[$ta[$i]]; + if ($type == 'L') { + $pel = 0; + break; + } elseif (($type == 'AL') OR ($type == 'R')) { + $pel = 1; + break; + } + } + } + + // Current Embedding Level + $cel = $pel; + // directional override status + $dos = 'N'; + $remember = array(); + // start-of-level-run + $sor = $pel % 2 ? 'R' : 'L'; + $eor = $sor; + + // Array of characters data + $chardata = Array(); + + // X1. Begin by setting the current embedding level to the paragraph embedding level. Set the directional override status to neutral. Process each character iteratively, applying rules X2 through X9. Only embedding levels from 0 to 61 are valid in this phase. + // In the resolution of levels in rules I1 and I2, the maximum embedding level of 62 can be reached. + for ($i=0; $i < $numchars; ++$i) { + if ($ta[$i] == $this->unicode->uni_RLE) { + // X2. With each RLE, compute the least greater odd embedding level. + // a. If this new level would be valid, then this embedding code is valid. Remember (push) the current embedding level and override status. Reset the current level to this new level, and reset the override status to neutral. + // b. If the new level would not be valid, then this code is invalid. Do not change the current level or override status. + $next_level = $cel + ($cel % 2) + 1; + if ($next_level < 62) { + $remember[] = array('num' => $this->unicode->uni_RLE, 'cel' => $cel, 'dos' => $dos); + $cel = $next_level; + $dos = 'N'; + $sor = $eor; + $eor = $cel % 2 ? 'R' : 'L'; + } + } elseif ($ta[$i] == $this->unicode->uni_LRE) { + // X3. With each LRE, compute the least greater even embedding level. + // a. If this new level would be valid, then this embedding code is valid. Remember (push) the current embedding level and override status. Reset the current level to this new level, and reset the override status to neutral. + // b. If the new level would not be valid, then this code is invalid. Do not change the current level or override status. + $next_level = $cel + 2 - ($cel % 2); + if ( $next_level < 62 ) { + $remember[] = array('num' => $this->unicode->uni_LRE, 'cel' => $cel, 'dos' => $dos); + $cel = $next_level; + $dos = 'N'; + $sor = $eor; + $eor = $cel % 2 ? 'R' : 'L'; + } + } elseif ($ta[$i] == $this->unicode->uni_RLO) { + // X4. With each RLO, compute the least greater odd embedding level. + // a. If this new level would be valid, then this embedding code is valid. Remember (push) the current embedding level and override status. Reset the current level to this new level, and reset the override status to right-to-left. + // b. If the new level would not be valid, then this code is invalid. Do not change the current level or override status. + $next_level = $cel + ($cel % 2) + 1; + if ($next_level < 62) { + $remember[] = array('num' => $this->unicode->uni_RLO, 'cel' => $cel, 'dos' => $dos); + $cel = $next_level; + $dos = 'R'; + $sor = $eor; + $eor = $cel % 2 ? 'R' : 'L'; + } + } elseif ($ta[$i] == $this->unicode->uni_LRO) { + // X5. With each LRO, compute the least greater even embedding level. + // a. If this new level would be valid, then this embedding code is valid. Remember (push) the current embedding level and override status. Reset the current level to this new level, and reset the override status to left-to-right. + // b. If the new level would not be valid, then this code is invalid. Do not change the current level or override status. + $next_level = $cel + 2 - ($cel % 2); + if ( $next_level < 62 ) { + $remember[] = array('num' => $this->unicode->uni_LRO, 'cel' => $cel, 'dos' => $dos); + $cel = $next_level; + $dos = 'L'; + $sor = $eor; + $eor = $cel % 2 ? 'R' : 'L'; + } + } elseif ($ta[$i] == $this->unicode->uni_PDF) { + // X7. With each PDF, determine the matching embedding or override code. If there was a valid matching code, restore (pop) the last remembered (pushed) embedding level and directional override. + if (count($remember)) { + $last = count($remember ) - 1; + if (($remember[$last]['num'] == $this->unicode->uni_RLE) OR + ($remember[$last]['num'] == $this->unicode->uni_LRE) OR + ($remember[$last]['num'] == $this->unicode->uni_RLO) OR + ($remember[$last]['num'] == $this->unicode->uni_LRO)) { + $match = array_pop($remember); + $cel = $match['cel']; + $dos = $match['dos']; + $sor = $eor; + $eor = ($cel > $match['cel'] ? $cel : $match['cel']) % 2 ? 'R' : 'L'; + } + } + } elseif (($ta[$i] != $this->unicode->uni_RLE) AND + ($ta[$i] != $this->unicode->uni_LRE) AND + ($ta[$i] != $this->unicode->uni_RLO) AND + ($ta[$i] != $this->unicode->uni_LRO) AND + ($ta[$i] != $this->unicode->uni_PDF)) { + // X6. For all types besides RLE, LRE, RLO, LRO, and PDF: + // a. Set the level of the current character to the current embedding level. + // b. Whenever the directional override status is not neutral, reset the current character type to the directional override status. + if ($dos != 'N') { + $chardir = $dos; + } else { + if (isset($this->unicode->uni_type[$ta[$i]])) { + $chardir = $this->unicode->uni_type[$ta[$i]]; + } else { + $chardir = 'L'; + } + } + // stores string characters and other information + $chardata[] = array('char' => $ta[$i], 'level' => $cel, 'type' => $chardir, 'sor' => $sor, 'eor' => $eor); + } + } // end for each char + + // X8. All explicit directional embeddings and overrides are completely terminated at the end of each paragraph. Paragraph separators are not included in the embedding. + // X9. Remove all RLE, LRE, RLO, LRO, PDF, and BN codes. + // X10. The remaining rules are applied to each run of characters at the same level. For each run, determine the start-of-level-run (sor) and end-of-level-run (eor) type, either L or R. This depends on the higher of the two levels on either side of the boundary (at the start or end of the paragraph, the level of the 'other' run is the base embedding level). If the higher level is odd, the type is R; otherwise, it is L. + + // 3.3.3 Resolving Weak Types + // Weak types are now resolved one level run at a time. At level run boundaries where the type of the character on the other side of the boundary is required, the type assigned to sor or eor is used. + // Nonspacing marks are now resolved based on the previous characters. + $numchars = count($chardata); + + // W1. Examine each nonspacing mark (NSM) in the level run, and change the type of the NSM to the type of the previous character. If the NSM is at the start of the level run, it will get the type of sor. + $prevlevel = -1; // track level changes + $levcount = 0; // counts consecutive chars at the same level + for ($i=0; $i < $numchars; ++$i) { + if ($chardata[$i]['type'] == 'NSM') { + if ($levcount) { + $chardata[$i]['type'] = $chardata[$i]['sor']; + } elseif ($i > 0) { + $chardata[$i]['type'] = $chardata[($i-1)]['type']; + } + } + if ($chardata[$i]['level'] != $prevlevel) { + $levcount = 0; + } else { + ++$levcount; + } + $prevlevel = $chardata[$i]['level']; + } + + // W2. Search backward from each instance of a European number until the first strong type (R, L, AL, or sor) is found. If an AL is found, change the type of the European number to Arabic number. + $prevlevel = -1; + $levcount = 0; + for ($i=0; $i < $numchars; ++$i) { + if ($chardata[$i]['char'] == 'EN') { + for ($j=$levcount; $j >= 0; $j--) { + if ($chardata[$j]['type'] == 'AL') { + $chardata[$i]['type'] = 'AN'; + } elseif (($chardata[$j]['type'] == 'L') OR ($chardata[$j]['type'] == 'R')) { + break; + } + } + } + if ($chardata[$i]['level'] != $prevlevel) { + $levcount = 0; + } else { + ++$levcount; + } + $prevlevel = $chardata[$i]['level']; + } + + // W3. Change all ALs to R. + for ($i=0; $i < $numchars; ++$i) { + if ($chardata[$i]['type'] == 'AL') { + $chardata[$i]['type'] = 'R'; + } + } + + // W4. A single European separator between two European numbers changes to a European number. A single common separator between two numbers of the same type changes to that type. + $prevlevel = -1; + $levcount = 0; + for ($i=0; $i < $numchars; ++$i) { + if (($levcount > 0) AND (($i+1) < $numchars) AND ($chardata[($i+1)]['level'] == $prevlevel)) { + if (($chardata[$i]['type'] == 'ES') AND ($chardata[($i-1)]['type'] == 'EN') AND ($chardata[($i+1)]['type'] == 'EN')) { + $chardata[$i]['type'] = 'EN'; + } elseif (($chardata[$i]['type'] == 'CS') AND ($chardata[($i-1)]['type'] == 'EN') AND ($chardata[($i+1)]['type'] == 'EN')) { + $chardata[$i]['type'] = 'EN'; + } elseif (($chardata[$i]['type'] == 'CS') AND ($chardata[($i-1)]['type'] == 'AN') AND ($chardata[($i+1)]['type'] == 'AN')) { + $chardata[$i]['type'] = 'AN'; + } + } + if ($chardata[$i]['level'] != $prevlevel) { + $levcount = 0; + } else { + ++$levcount; + } + $prevlevel = $chardata[$i]['level']; + } + + // W5. A sequence of European terminators adjacent to European numbers changes to all European numbers. + $prevlevel = -1; + $levcount = 0; + for ($i=0; $i < $numchars; ++$i) { + if ($chardata[$i]['type'] == 'ET') { + if (($levcount > 0) AND ($chardata[($i-1)]['type'] == 'EN')) { + $chardata[$i]['type'] = 'EN'; + } else { + $j = $i+1; + while (($j < $numchars) AND ($chardata[$j]['level'] == $prevlevel)) { + if ($chardata[$j]['type'] == 'EN') { + $chardata[$i]['type'] = 'EN'; + break; + } elseif ($chardata[$j]['type'] != 'ET') { + break; + } + ++$j; + } + } + } + if ($chardata[$i]['level'] != $prevlevel) { + $levcount = 0; + } else { + ++$levcount; + } + $prevlevel = $chardata[$i]['level']; + } + + // W6. Otherwise, separators and terminators change to Other Neutral. + $prevlevel = -1; + $levcount = 0; + for ($i=0; $i < $numchars; ++$i) { + if (($chardata[$i]['type'] == 'ET') OR ($chardata[$i]['type'] == 'ES') OR ($chardata[$i]['type'] == 'CS')) { + $chardata[$i]['type'] = 'ON'; + } + if ($chardata[$i]['level'] != $prevlevel) { + $levcount = 0; + } else { + ++$levcount; + } + $prevlevel = $chardata[$i]['level']; + } + + //W7. Search backward from each instance of a European number until the first strong type (R, L, or sor) is found. If an L is found, then change the type of the European number to L. + $prevlevel = -1; + $levcount = 0; + for ($i=0; $i < $numchars; ++$i) { + if ($chardata[$i]['char'] == 'EN') { + for ($j=$levcount; $j >= 0; $j--) { + if ($chardata[$j]['type'] == 'L') { + $chardata[$i]['type'] = 'L'; + } elseif ($chardata[$j]['type'] == 'R') { + break; + } + } + } + if ($chardata[$i]['level'] != $prevlevel) { + $levcount = 0; + } else { + ++$levcount; + } + $prevlevel = $chardata[$i]['level']; + } + + // N1. A sequence of neutrals takes the direction of the surrounding strong text if the text on both sides has the same direction. European and Arabic numbers act as if they were R in terms of their influence on neutrals. Start-of-level-run (sor) and end-of-level-run (eor) are used at level run boundaries. + $prevlevel = -1; + $levcount = 0; + for ($i=0; $i < $numchars; ++$i) { + if (($levcount > 0) AND (($i+1) < $numchars) AND ($chardata[($i+1)]['level'] == $prevlevel)) { + if (($chardata[$i]['type'] == 'N') AND ($chardata[($i-1)]['type'] == 'L') AND ($chardata[($i+1)]['type'] == 'L')) { + $chardata[$i]['type'] = 'L'; + } elseif (($chardata[$i]['type'] == 'N') AND + (($chardata[($i-1)]['type'] == 'R') OR ($chardata[($i-1)]['type'] == 'EN') OR ($chardata[($i-1)]['type'] == 'AN')) AND + (($chardata[($i+1)]['type'] == 'R') OR ($chardata[($i+1)]['type'] == 'EN') OR ($chardata[($i+1)]['type'] == 'AN'))) { + $chardata[$i]['type'] = 'R'; + } elseif ($chardata[$i]['type'] == 'N') { + // N2. Any remaining neutrals take the embedding direction + $chardata[$i]['type'] = $chardata[$i]['sor']; + } + } elseif (($levcount == 0) AND (($i+1) < $numchars) AND ($chardata[($i+1)]['level'] == $prevlevel)) { + // first char + if (($chardata[$i]['type'] == 'N') AND ($chardata[$i]['sor'] == 'L') AND ($chardata[($i+1)]['type'] == 'L')) { + $chardata[$i]['type'] = 'L'; + } elseif (($chardata[$i]['type'] == 'N') AND + (($chardata[$i]['sor'] == 'R') OR ($chardata[$i]['sor'] == 'EN') OR ($chardata[$i]['sor'] == 'AN')) AND + (($chardata[($i+1)]['type'] == 'R') OR ($chardata[($i+1)]['type'] == 'EN') OR ($chardata[($i+1)]['type'] == 'AN'))) { + $chardata[$i]['type'] = 'R'; + } elseif ($chardata[$i]['type'] == 'N') { + // N2. Any remaining neutrals take the embedding direction + $chardata[$i]['type'] = $chardata[$i]['sor']; + } + } elseif (($levcount > 0) AND ((($i+1) == $numchars) OR (($i+1) < $numchars) AND ($chardata[($i+1)]['level'] != $prevlevel))) { + //last char + if (($chardata[$i]['type'] == 'N') AND ($chardata[($i-1)]['type'] == 'L') AND ($chardata[$i]['eor'] == 'L')) { + $chardata[$i]['type'] = 'L'; + } elseif (($chardata[$i]['type'] == 'N') AND + (($chardata[($i-1)]['type'] == 'R') OR ($chardata[($i-1)]['type'] == 'EN') OR ($chardata[($i-1)]['type'] == 'AN')) AND + (($chardata[$i]['eor'] == 'R') OR ($chardata[$i]['eor'] == 'EN') OR ($chardata[$i]['eor'] == 'AN'))) { + $chardata[$i]['type'] = 'R'; + } elseif ($chardata[$i]['type'] == 'N') { + // N2. Any remaining neutrals take the embedding direction + $chardata[$i]['type'] = $chardata[$i]['sor']; + } + } elseif ($chardata[$i]['type'] == 'N') { + // N2. Any remaining neutrals take the embedding direction + $chardata[$i]['type'] = $chardata[$i]['sor']; + } + if ($chardata[$i]['level'] != $prevlevel) { + $levcount = 0; + } else { + ++$levcount; + } + $prevlevel = $chardata[$i]['level']; + } + + // I1. For all characters with an even (left-to-right) embedding direction, those of type R go up one level and those of type AN or EN go up two levels. + // I2. For all characters with an odd (right-to-left) embedding direction, those of type L, EN or AN go up one level. + for ($i=0; $i < $numchars; ++$i) { + $odd = $chardata[$i]['level'] % 2; + if ($odd) { + if (($chardata[$i]['type'] == 'L') OR ($chardata[$i]['type'] == 'AN') OR ($chardata[$i]['type'] == 'EN')) { + $chardata[$i]['level'] += 1; + } + } else { + if ($chardata[$i]['type'] == 'R') { + $chardata[$i]['level'] += 1; + } elseif (($chardata[$i]['type'] == 'AN') OR ($chardata[$i]['type'] == 'EN')) { + $chardata[$i]['level'] += 2; + } + } + $maxlevel = max($chardata[$i]['level'],$maxlevel); + } + + // L1. On each line, reset the embedding level of the following characters to the paragraph embedding level: + // 1. Segment separators, + // 2. Paragraph separators, + // 3. Any sequence of whitespace characters preceding a segment separator or paragraph separator, and + // 4. Any sequence of white space characters at the end of the line. + for ($i=0; $i < $numchars; ++$i) { + if (($chardata[$i]['type'] == 'B') OR ($chardata[$i]['type'] == 'S')) { + $chardata[$i]['level'] = $pel; + } elseif ($chardata[$i]['type'] == 'WS') { + $j = $i+1; + while ($j < $numchars) { + if ((($chardata[$j]['type'] == 'B') OR ($chardata[$j]['type'] == 'S')) OR + (($j == ($numchars-1)) AND ($chardata[$j]['type'] == 'WS'))) { + $chardata[$i]['level'] = $pel; + break; + } elseif ($chardata[$j]['type'] != 'WS') { + break; + } + ++$j; + } + } + } + + // Arabic Shaping + // Cursively connected scripts, such as Arabic or Syriac, require the selection of positional character shapes that depend on adjacent characters. Shaping is logically applied after the Bidirectional Algorithm is used and is limited to characters within the same directional run. + if ($arabic) { + $endedletter = array(1569,1570,1571,1572,1573,1575,1577,1583,1584,1585,1586,1608,1688); + $alfletter = array(1570,1571,1573,1575); + $chardata2 = $chardata; + $laaletter = false; + $charAL = array(); + $x = 0; + for ($i=0; $i < $numchars; ++$i) { + if (($this->unicode->uni_type[$chardata[$i]['char']] == 'AL') OR ($chardata[$i]['char'] == 32) OR ($chardata[$i]['char'] == 8204)) { + $charAL[$x] = $chardata[$i]; + $charAL[$x]['i'] = $i; + $chardata[$i]['x'] = $x; + ++$x; + } + } + $numAL = $x; + for ($i=0; $i < $numchars; ++$i) { + $thischar = $chardata[$i]; + if ($i > 0) { + $prevchar = $chardata[($i-1)]; + } else { + $prevchar = false; + } + if (($i+1) < $numchars) { + $nextchar = $chardata[($i+1)]; + } else { + $nextchar = false; + } + if ($this->unicode->uni_type[$thischar['char']] == 'AL') { + $x = $thischar['x']; + if ($x > 0) { + $prevchar = $charAL[($x-1)]; + } else { + $prevchar = false; + } + if (($x+1) < $numAL) { + $nextchar = $charAL[($x+1)]; + } else { + $nextchar = false; + } + // if laa letter + if (($prevchar !== false) AND ($prevchar['char'] == 1604) AND (in_array($thischar['char'], $alfletter))) { + $arabicarr = $this->unicode->uni_laa_array; + $laaletter = true; + if ($x > 1) { + $prevchar = $charAL[($x-2)]; + } else { + $prevchar = false; + } + } else { + $arabicarr = $this->unicode->uni_arabicsubst; + $laaletter = false; + } + if (($prevchar !== false) AND ($nextchar !== false) AND + (($this->unicode->uni_type[$prevchar['char']] == 'AL') OR ($this->unicode->uni_type[$prevchar['char']] == 'NSM')) AND + (($this->unicode->uni_type[$nextchar['char']] == 'AL') OR ($this->unicode->uni_type[$nextchar['char']] == 'NSM')) AND + ($prevchar['type'] == $thischar['type']) AND + ($nextchar['type'] == $thischar['type']) AND + ($nextchar['char'] != 1567)) { + if (in_array($prevchar['char'], $endedletter)) { + if (isset($arabicarr[$thischar['char']][2])) { + // initial + $chardata2[$i]['char'] = $arabicarr[$thischar['char']][2]; + } + } else { + if (isset($arabicarr[$thischar['char']][3])) { + // medial + $chardata2[$i]['char'] = $arabicarr[$thischar['char']][3]; + } + } + } elseif (($nextchar !== false) AND + (($this->unicode->uni_type[$nextchar['char']] == 'AL') OR ($this->unicode->uni_type[$nextchar['char']] == 'NSM')) AND + ($nextchar['type'] == $thischar['type']) AND + ($nextchar['char'] != 1567)) { + if (isset($arabicarr[$chardata[$i]['char']][2])) { + // initial + $chardata2[$i]['char'] = $arabicarr[$thischar['char']][2]; + } + } elseif ((($prevchar !== false) AND + (($this->unicode->uni_type[$prevchar['char']] == 'AL') OR ($this->unicode->uni_type[$prevchar['char']] == 'NSM')) AND + ($prevchar['type'] == $thischar['type'])) OR + (($nextchar !== false) AND ($nextchar['char'] == 1567))) { + // final + if (($i > 1) AND ($thischar['char'] == 1607) AND + ($chardata[$i-1]['char'] == 1604) AND + ($chardata[$i-2]['char'] == 1604)) { + //Allah Word + // mark characters to delete with false + $chardata2[$i-2]['char'] = false; + $chardata2[$i-1]['char'] = false; + $chardata2[$i]['char'] = 65010; + } else { + if (($prevchar !== false) AND in_array($prevchar['char'], $endedletter)) { + if (isset($arabicarr[$thischar['char']][0])) { + // isolated + $chardata2[$i]['char'] = $arabicarr[$thischar['char']][0]; + } + } else { + if (isset($arabicarr[$thischar['char']][1])) { + // final + $chardata2[$i]['char'] = $arabicarr[$thischar['char']][1]; + } + } + } + } elseif (isset($arabicarr[$thischar['char']][0])) { + // isolated + $chardata2[$i]['char'] = $arabicarr[$thischar['char']][0]; + } + // if laa letter + if ($laaletter) { + // mark characters to delete with false + $chardata2[($charAL[($x-1)]['i'])]['char'] = false; + } + } // end if AL (Arabic Letter) + } // end for each char + /* + * Combining characters that can occur with Arabic Shadda (0651 HEX, 1617 DEC) are replaced. + * Putting the combining mark and shadda in the same glyph allows us to avoid the two marks overlapping each other in an illegible manner. + */ + $cw = &$this->CurrentFont['cw']; + for ($i = 0; $i < ($numchars-1); ++$i) { + if (($chardata2[$i]['char'] == 1617) AND (isset($this->unicode->uni_diacritics[($chardata2[$i+1]['char'])]))) { + // check if the subtitution font is defined on current font + if (isset($cw[($this->unicode->uni_diacritics[($chardata2[$i+1]['char'])])])) { + $chardata2[$i]['char'] = false; + $chardata2[$i+1]['char'] = $this->unicode->uni_diacritics[($chardata2[$i+1]['char'])]; + } + } + } + // remove marked characters + foreach ($chardata2 as $key => $value) { + if ($value['char'] === false) { + unset($chardata2[$key]); + } + } + $chardata = array_values($chardata2); + $numchars = count($chardata); + unset($chardata2); + unset($arabicarr); + unset($laaletter); + unset($charAL); + } + + // L2. From the highest level found in the text to the lowest odd level on each line, including intermediate levels not actually present in the text, reverse any contiguous sequence of characters that are at that level or higher. + for ($j=$maxlevel; $j > 0; $j--) { + $ordarray = Array(); + $revarr = Array(); + $onlevel = false; + for ($i=0; $i < $numchars; ++$i) { + if ($chardata[$i]['level'] >= $j) { + $onlevel = true; + if (isset($this->unicode->uni_mirror[$chardata[$i]['char']])) { + // L4. A character is depicted by a mirrored glyph if and only if (a) the resolved directionality of that character is R, and (b) the Bidi_Mirrored property value of that character is true. + $chardata[$i]['char'] = $this->unicode->uni_mirror[$chardata[$i]['char']]; + } + $revarr[] = $chardata[$i]; + } else { + if ($onlevel) { + $revarr = array_reverse($revarr); + $ordarray = array_merge($ordarray, $revarr); + $revarr = Array(); + $onlevel = false; + } + $ordarray[] = $chardata[$i]; + } + } + if ($onlevel) { + $revarr = array_reverse($revarr); + $ordarray = array_merge($ordarray, $revarr); + } + $chardata = $ordarray; + } + + $ordarray = array(); + for ($i=0; $i < $numchars; ++$i) { + $ordarray[] = $chardata[$i]['char']; + // store char values for subsetting + $this->CurrentFont['subsetchars'][$chardata[$i]['char']] = true; + } + // update font subsetchars + $this->setFontSubBuffer($this->CurrentFont['fontkey'], 'subsetchars', $this->CurrentFont['subsetchars']); + return $ordarray; + } + + // END OF BIDIRECTIONAL TEXT SECTION ------------------- + + /** + * Adds a bookmark. + * @param $txt (string) bookmark description. + * @param $level (int) bookmark level (minimum value is 0). + * @param $y (float) Y position in user units of the bookmark on the selected page (default = -1 = current position; 0 = page start;). + * @param $page (int) target page number (leave empty for current page). + * @public + * @author Olivier Plathey, Nicola Asuni + * @since 2.1.002 (2008-02-12) + */ + public function Bookmark($txt, $level=0, $y=-1, $page='') { + if ($level < 0) { + $level = 0; + } + if (isset($this->outlines[0])) { + $lastoutline = end($this->outlines); + $maxlevel = $lastoutline['l'] + 1; + } else { + $maxlevel = 0; + } + if ($level > $maxlevel) { + $level = $maxlevel; + } + if ($y == -1) { + $y = $this->GetY(); + } + if (empty($page)) { + $page = $this->PageNo(); + if (empty($page)) { + return; + } + } + $this->outlines[] = array('t' => $txt, 'l' => $level, 'y' => $y, 'p' => $page); + } + + /** + * Create a bookmark PDF string. + * @protected + * @author Olivier Plathey, Nicola Asuni + * @since 2.1.002 (2008-02-12) + */ + protected function _putbookmarks() { + $nb = count($this->outlines); + if ($nb == 0) { + return; + } + // get sorting columns + $outline_p = array(); + $outline_y = array(); + foreach ($this->outlines as $key => $row) { + $outline_p[$key] = $row['p']; + $outline_k[$key] = $key; + } + // sort outlines by page and original position + array_multisort($outline_p, SORT_NUMERIC, SORT_ASC, $outline_k, SORT_NUMERIC, SORT_ASC, $this->outlines); + $lru = array(); + $level = 0; + foreach ($this->outlines as $i => $o) { + if ($o['l'] > 0) { + $parent = $lru[($o['l'] - 1)]; + //Set parent and last pointers + $this->outlines[$i]['parent'] = $parent; + $this->outlines[$parent]['last'] = $i; + if ($o['l'] > $level) { + //Level increasing: set first pointer + $this->outlines[$parent]['first'] = $i; + } + } else { + $this->outlines[$i]['parent'] = $nb; + } + if (($o['l'] <= $level) AND ($i > 0)) { + //Set prev and next pointers + $prev = $lru[$o['l']]; + $this->outlines[$prev]['next'] = $i; + $this->outlines[$i]['prev'] = $prev; + } + $lru[$o['l']] = $i; + $level = $o['l']; + } + //Outline items + $n = $this->n + 1; + $nltags = '/|<\/(blockquote|dd|dl|div|dt|h1|h2|h3|h4|h5|h6|hr|li|ol|p|pre|ul|tcpdf|table|tr|td)>/si'; + foreach ($this->outlines as $i => $o) { + if (isset($this->page_obj_id[($o['p'])])) { + $oid = $this->_newobj(); + // covert HTML title to string + $title = preg_replace($nltags, "\n", $o['t']); + $title = preg_replace("/[\r]+/si", '', $title); + $title = preg_replace("/[\n]+/si", "\n", $title); + $title = strip_tags($title); + $title = $this->stringTrim($title); + $out = '<_textstring($title, $oid); + $out .= ' /Parent '.($n + $o['parent']).' 0 R'; + if (isset($o['prev'])) { + $out .= ' /Prev '.($n + $o['prev']).' 0 R'; + } + if (isset($o['next'])) { + $out .= ' /Next '.($n + $o['next']).' 0 R'; + } + if (isset($o['first'])) { + $out .= ' /First '.($n + $o['first']).' 0 R'; + } + if (isset($o['last'])) { + $out .= ' /Last '.($n + $o['last']).' 0 R'; + } + $out .= ' '.sprintf('/Dest [%u 0 R /XYZ 0 %.2F null]', $this->page_obj_id[($o['p'])], ($this->pagedim[$o['p']]['h'] - ($o['y'] * $this->k))); + $out .= ' /Count 0 >>'; + $out .= "\n".'endobj'; + $this->_out($out); + } + } + //Outline root + $this->OutlineRoot = $this->_newobj(); + $this->_out('<< /Type /Outlines /First '.$n.' 0 R /Last '.($n + $lru[0]).' 0 R >>'."\n".'endobj'); + } + + // --- JAVASCRIPT ------------------------------------------------------ + + /** + * Adds a javascript + * @param $script (string) Javascript code + * @public + * @author Johannes Güntert, Nicola Asuni + * @since 2.1.002 (2008-02-12) + */ + public function IncludeJS($script) { + $this->javascript .= $script; + } + + /** + * Adds a javascript object and return object ID + * @param $script (string) Javascript code + * @param $onload (boolean) if true executes this object when opening the document + * @return int internal object ID + * @public + * @author Nicola Asuni + * @since 4.8.000 (2009-09-07) + */ + public function addJavascriptObject($script, $onload=false) { + ++$this->n; + $this->js_objects[$this->n] = array('n' => $this->n, 'js' => $script, 'onload' => $onload); + return $this->n; + } + + /** + * Create a javascript PDF string. + * @protected + * @author Johannes Güntert, Nicola Asuni + * @since 2.1.002 (2008-02-12) + */ + protected function _putjavascript() { + if (empty($this->javascript) AND empty($this->js_objects)) { + return; + } + if (strpos($this->javascript, 'this.addField') > 0) { + if (!$this->ur['enabled']) { + //$this->setUserRights(); + } + // the following two lines are used to avoid form fields duplication after saving + // The addField method only works when releasing user rights (UR3) + $jsa = sprintf("ftcpdfdocsaved=this.addField('%s','%s',%d,[%.2F,%.2F,%.2F,%.2F]);", 'tcpdfdocsaved', 'text', 0, 0, 1, 0, 1); + $jsb = "getField('tcpdfdocsaved').value='saved';"; + $this->javascript = $jsa."\n".$this->javascript."\n".$jsb; + } + $this->n_js = $this->_newobj(); + $out = ' << /Names ['; + if (!empty($this->javascript)) { + $out .= ' (EmbeddedJS) '.($this->n + 1).' 0 R'; + } + if (!empty($this->js_objects)) { + foreach ($this->js_objects as $key => $val) { + if ($val['onload']) { + $out .= ' (JS'.$key.') '.$key.' 0 R'; + } + } + } + $out .= ' ] >>'; + $out .= "\n".'endobj'; + $this->_out($out); + // default Javascript object + if (!empty($this->javascript)) { + $obj_id = $this->_newobj(); + $out = '<< /S /JavaScript'; + $out .= ' /JS '.$this->_textstring($this->javascript, $obj_id); + $out .= ' >>'; + $out .= "\n".'endobj'; + $this->_out($out); + } + // additional Javascript objects + if (!empty($this->js_objects)) { + foreach ($this->js_objects as $key => $val) { + $out = $this->_getobj($key)."\n".' << /S /JavaScript /JS '.$this->_textstring($val['js'], $key).' >>'."\n".'endobj'; + $this->_out($out); + } + } + } + + /** + * Convert color to javascript color. + * @param $color (string) color name or "#RRGGBB" + * @protected + * @author Denis Van Nuffelen, Nicola Asuni + * @since 2.1.002 (2008-02-12) + */ + protected function _JScolor($color) { + static $aColors = array('transparent', 'black', 'white', 'red', 'green', 'blue', 'cyan', 'magenta', 'yellow', 'dkGray', 'gray', 'ltGray'); + if (substr($color,0,1) == '#') { + return sprintf("['RGB',%.3F,%.3F,%.3F]", hexdec(substr($color,1,2))/255, hexdec(substr($color,3,2))/255, hexdec(substr($color,5,2))/255); + } + if (!in_array($color,$aColors)) { + $this->Error('Invalid color: '.$color); + } + return 'color.'.$color; + } + + /** + * Adds a javascript form field. + * @param $type (string) field type + * @param $name (string) field name + * @param $x (int) horizontal position + * @param $y (int) vertical position + * @param $w (int) width + * @param $h (int) height + * @param $prop (array) javascript field properties. Possible values are described on official Javascript for Acrobat API reference. + * @protected + * @author Denis Van Nuffelen, Nicola Asuni + * @since 2.1.002 (2008-02-12) + */ + protected function _addfield($type, $name, $x, $y, $w, $h, $prop) { + if ($this->rtl) { + $x = $x - $w; + } + // the followind avoid fields duplication after saving the document + $this->javascript .= "if(getField('tcpdfdocsaved').value != 'saved') {"; + $k = $this->k; + $this->javascript .= sprintf("f".$name."=this.addField('%s','%s',%u,[%.2F,%.2F,%.2F,%.2F]);", $name, $type, $this->PageNo()-1, $x*$k, ($this->h-$y)*$k+1, ($x+$w)*$k, ($this->h-$y-$h)*$k+1)."\n"; + $this->javascript .= 'f'.$name.'.textSize='.$this->FontSizePt.";\n"; + while (list($key, $val) = each($prop)) { + if (strcmp(substr($key, -5), 'Color') == 0) { + $val = $this->_JScolor($val); + } else { + $val = "'".$val."'"; + } + $this->javascript .= 'f'.$name.'.'.$key.'='.$val.";\n"; + } + if ($this->rtl) { + $this->x -= $w; + } else { + $this->x += $w; + } + $this->javascript .= '}'; + } + + // --- FORM FIELDS ----------------------------------------------------- + + /** + * Convert JavaScript form fields properties array to Annotation Properties array. + * @param $prop (array) javascript field properties. Possible values are described on official Javascript for Acrobat API reference. + * @return array of annotation properties + * @protected + * @author Nicola Asuni + * @since 4.8.000 (2009-09-06) + */ + protected function getAnnotOptFromJSProp($prop) { + if (isset($prop['aopt']) AND is_array($prop['aopt'])) { + // the annotation options area lready defined + return $prop['aopt']; + } + $opt = array(); // value to be returned + // alignment: Controls how the text is laid out within the text field. + if (isset($prop['alignment'])) { + switch ($prop['alignment']) { + case 'left': { + $opt['q'] = 0; + break; + } + case 'center': { + $opt['q'] = 1; + break; + } + case 'right': { + $opt['q'] = 2; + break; + } + default: { + $opt['q'] = ($this->rtl)?2:0; + break; + } + } + } + // lineWidth: Specifies the thickness of the border when stroking the perimeter of a field's rectangle. + if (isset($prop['lineWidth'])) { + $linewidth = intval($prop['lineWidth']); + } else { + $linewidth = 1; + } + // borderStyle: The border style for a field. + if (isset($prop['borderStyle'])) { + switch ($prop['borderStyle']) { + case 'border.d': + case 'dashed': { + $opt['border'] = array(0, 0, $linewidth, array(3, 2)); + $opt['bs'] = array('w'=>$linewidth, 's'=>'D', 'd'=>array(3, 2)); + break; + } + case 'border.b': + case 'beveled': { + $opt['border'] = array(0, 0, $linewidth); + $opt['bs'] = array('w'=>$linewidth, 's'=>'B'); + break; + } + case 'border.i': + case 'inset': { + $opt['border'] = array(0, 0, $linewidth); + $opt['bs'] = array('w'=>$linewidth, 's'=>'I'); + break; + } + case 'border.u': + case 'underline': { + $opt['border'] = array(0, 0, $linewidth); + $opt['bs'] = array('w'=>$linewidth, 's'=>'U'); + break; + } + default: + case 'border.s': + case 'solid': { + $opt['border'] = array(0, 0, $linewidth); + $opt['bs'] = array('w'=>$linewidth, 's'=>'S'); + break; + } + } + } + if (isset($prop['border']) AND is_array($prop['border'])) { + $opt['border'] = $prop['border']; + } + if (!isset($opt['mk'])) { + $opt['mk'] = array(); + } + if (!isset($opt['mk']['if'])) { + $opt['mk']['if'] = array(); + } + $opt['mk']['if']['a'] = array(0.5, 0.5); + // buttonAlignX: Controls how space is distributed from the left of the button face with respect to the icon. + if (isset($prop['buttonAlignX'])) { + $opt['mk']['if']['a'][0] = $prop['buttonAlignX']; + } + // buttonAlignY: Controls how unused space is distributed from the bottom of the button face with respect to the icon. + if (isset($prop['buttonAlignY'])) { + $opt['mk']['if']['a'][1] = $prop['buttonAlignY']; + } + // buttonFitBounds: If true, the extent to which the icon may be scaled is set to the bounds of the button field. + if (isset($prop['buttonFitBounds']) AND ($prop['buttonFitBounds'] == 'true')) { + $opt['mk']['if']['fb'] = true; + } + // buttonScaleHow: Controls how the icon is scaled (if necessary) to fit inside the button face. + if (isset($prop['buttonScaleHow'])) { + switch ($prop['buttonScaleHow']) { + case 'scaleHow.proportional': { + $opt['mk']['if']['s'] = 'P'; + break; + } + case 'scaleHow.anamorphic': { + $opt['mk']['if']['s'] = 'A'; + break; + } + } + } + // buttonScaleWhen: Controls when an icon is scaled to fit inside the button face. + if (isset($prop['buttonScaleWhen'])) { + switch ($prop['buttonScaleWhen']) { + case 'scaleWhen.always': { + $opt['mk']['if']['sw'] = 'A'; + break; + } + case 'scaleWhen.never': { + $opt['mk']['if']['sw'] = 'N'; + break; + } + case 'scaleWhen.tooBig': { + $opt['mk']['if']['sw'] = 'B'; + break; + } + case 'scaleWhen.tooSmall': { + $opt['mk']['if']['sw'] = 'S'; + break; + } + } + } + // buttonPosition: Controls how the text and the icon of the button are positioned with respect to each other within the button face. + if (isset($prop['buttonPosition'])) { + switch ($prop['buttonPosition']) { + case 0: + case 'position.textOnly': { + $opt['mk']['tp'] = 0; + break; + } + case 1: + case 'position.iconOnly': { + $opt['mk']['tp'] = 1; + break; + } + case 2: + case 'position.iconTextV': { + $opt['mk']['tp'] = 2; + break; + } + case 3: + case 'position.textIconV': { + $opt['mk']['tp'] = 3; + break; + } + case 4: + case 'position.iconTextH': { + $opt['mk']['tp'] = 4; + break; + } + case 5: + case 'position.textIconH': { + $opt['mk']['tp'] = 5; + break; + } + case 6: + case 'position.overlay': { + $opt['mk']['tp'] = 6; + break; + } + } + } + // fillColor: Specifies the background color for a field. + if (isset($prop['fillColor'])) { + if (is_array($prop['fillColor'])) { + $opt['mk']['bg'] = $prop['fillColor']; + } else { + $opt['mk']['bg'] = $this->convertHTMLColorToDec($prop['fillColor']); + } + } + // strokeColor: Specifies the stroke color for a field that is used to stroke the rectangle of the field with a line as large as the line width. + if (isset($prop['strokeColor'])) { + if (is_array($prop['strokeColor'])) { + $opt['mk']['bc'] = $prop['strokeColor']; + } else { + $opt['mk']['bc'] = $this->convertHTMLColorToDec($prop['strokeColor']); + } + } + // rotation: The rotation of a widget in counterclockwise increments. + if (isset($prop['rotation'])) { + $opt['mk']['r'] = $prop['rotation']; + } + // charLimit: Limits the number of characters that a user can type into a text field. + if (isset($prop['charLimit'])) { + $opt['maxlen'] = intval($prop['charLimit']); + } + if (!isset($ff)) { + $ff = 0; + } + // readonly: The read-only characteristic of a field. If a field is read-only, the user can see the field but cannot change it. + if (isset($prop['readonly']) AND ($prop['readonly'] == 'true')) { + $ff += 1 << 0; + } + // required: Specifies whether a field requires a value. + if (isset($prop['required']) AND ($prop['required'] == 'true')) { + $ff += 1 << 1; + } + // multiline: Controls how text is wrapped within the field. + if (isset($prop['multiline']) AND ($prop['multiline'] == 'true')) { + $ff += 1 << 12; + } + // password: Specifies whether the field should display asterisks when data is entered in the field. + if (isset($prop['password']) AND ($prop['password'] == 'true')) { + $ff += 1 << 13; + } + // NoToggleToOff: If set, exactly one radio button shall be selected at all times; selecting the currently selected button has no effect. + if (isset($prop['NoToggleToOff']) AND ($prop['NoToggleToOff'] == 'true')) { + $ff += 1 << 14; + } + // Radio: If set, the field is a set of radio buttons. + if (isset($prop['Radio']) AND ($prop['Radio'] == 'true')) { + $ff += 1 << 15; + } + // Pushbutton: If set, the field is a pushbutton that does not retain a permanent value. + if (isset($prop['Pushbutton']) AND ($prop['Pushbutton'] == 'true')) { + $ff += 1 << 16; + } + // Combo: If set, the field is a combo box; if clear, the field is a list box. + if (isset($prop['Combo']) AND ($prop['Combo'] == 'true')) { + $ff += 1 << 17; + } + // editable: Controls whether a combo box is editable. + if (isset($prop['editable']) AND ($prop['editable'] == 'true')) { + $ff += 1 << 18; + } + // Sort: If set, the field's option items shall be sorted alphabetically. + if (isset($prop['Sort']) AND ($prop['Sort'] == 'true')) { + $ff += 1 << 19; + } + // fileSelect: If true, sets the file-select flag in the Options tab of the text field (Field is Used for File Selection). + if (isset($prop['fileSelect']) AND ($prop['fileSelect'] == 'true')) { + $ff += 1 << 20; + } + // multipleSelection: If true, indicates that a list box allows a multiple selection of items. + if (isset($prop['multipleSelection']) AND ($prop['multipleSelection'] == 'true')) { + $ff += 1 << 21; + } + // doNotSpellCheck: If true, spell checking is not performed on this editable text field. + if (isset($prop['doNotSpellCheck']) AND ($prop['doNotSpellCheck'] == 'true')) { + $ff += 1 << 22; + } + // doNotScroll: If true, the text field does not scroll and the user, therefore, is limited by the rectangular region designed for the field. + if (isset($prop['doNotScroll']) AND ($prop['doNotScroll'] == 'true')) { + $ff += 1 << 23; + } + // comb: If set to true, the field background is drawn as series of boxes (one for each character in the value of the field) and each character of the content is drawn within those boxes. The number of boxes drawn is determined from the charLimit property. It applies only to text fields. The setter will also raise if any of the following field properties are also set multiline, password, and fileSelect. A side-effect of setting this property is that the doNotScroll property is also set. + if (isset($prop['comb']) AND ($prop['comb'] == 'true')) { + $ff += 1 << 24; + } + // radiosInUnison: If false, even if a group of radio buttons have the same name and export value, they behave in a mutually exclusive fashion, like HTML radio buttons. + if (isset($prop['radiosInUnison']) AND ($prop['radiosInUnison'] == 'true')) { + $ff += 1 << 25; + } + // richText: If true, the field allows rich text formatting. + if (isset($prop['richText']) AND ($prop['richText'] == 'true')) { + $ff += 1 << 25; + } + // commitOnSelChange: Controls whether a field value is committed after a selection change. + if (isset($prop['commitOnSelChange']) AND ($prop['commitOnSelChange'] == 'true')) { + $ff += 1 << 26; + } + $opt['ff'] = $ff; + // defaultValue: The default value of a field - that is, the value that the field is set to when the form is reset. + if (isset($prop['defaultValue'])) { + $opt['dv'] = $prop['defaultValue']; + } + $f = 4; // default value for annotation flags + // readonly: The read-only characteristic of a field. If a field is read-only, the user can see the field but cannot change it. + if (isset($prop['readonly']) AND ($prop['readonly'] == 'true')) { + $f += 1 << 6; + } + // display: Controls whether the field is hidden or visible on screen and in print. + if (isset($prop['display'])) { + if ($prop['display'] == 'display.visible') { + // + } elseif ($prop['display'] == 'display.hidden') { + $f += 1 << 1; + } elseif ($prop['display'] == 'display.noPrint') { + $f -= 1 << 2; + } elseif ($prop['display'] == 'display.noView') { + $f += 1 << 5; + } + } + $opt['f'] = $f; + // currentValueIndices: Reads and writes single or multiple values of a list box or combo box. + if (isset($prop['currentValueIndices']) AND is_array($prop['currentValueIndices'])) { + $opt['i'] = $prop['currentValueIndices']; + } + // value: The value of the field data that the user has entered. + if (isset($prop['value'])) { + if (is_array($prop['value'])) { + $opt['opt'] = array(); + foreach ($prop['value'] AS $key => $optval) { + // exportValues: An array of strings representing the export values for the field. + if (isset($prop['exportValues'][$key])) { + $opt['opt'][$key] = array($prop['exportValues'][$key], $prop['value'][$key]); + } else { + $opt['opt'][$key] = $prop['value'][$key]; + } + } + } else { + $opt['v'] = $prop['value']; + } + } + // richValue: This property specifies the text contents and formatting of a rich text field. + if (isset($prop['richValue'])) { + $opt['rv'] = $prop['richValue']; + } + // submitName: If nonempty, used during form submission instead of name. Only applicable if submitting in HTML format (that is, URL-encoded). + if (isset($prop['submitName'])) { + $opt['tm'] = $prop['submitName']; + } + // name: Fully qualified field name. + if (isset($prop['name'])) { + $opt['t'] = $prop['name']; + } + // userName: The user name (short description string) of the field. + if (isset($prop['userName'])) { + $opt['tu'] = $prop['userName']; + } + // highlight: Defines how a button reacts when a user clicks it. + if (isset($prop['highlight'])) { + switch ($prop['highlight']) { + case 'none': + case 'highlight.n': { + $opt['h'] = 'N'; + break; + } + case 'invert': + case 'highlight.i': { + $opt['h'] = 'i'; + break; + } + case 'push': + case 'highlight.p': { + $opt['h'] = 'P'; + break; + } + case 'outline': + case 'highlight.o': { + $opt['h'] = 'O'; + break; + } + } + } + // Unsupported options: + // - calcOrderIndex: Changes the calculation order of fields in the document. + // - delay: Delays the redrawing of a field's appearance. + // - defaultStyle: This property defines the default style attributes for the form field. + // - style: Allows the user to set the glyph style of a check box or radio button. + // - textColor, textFont, textSize + return $opt; + } + + /** + * Set default properties for form fields. + * @param $prop (array) javascript field properties. Possible values are described on official Javascript for Acrobat API reference. + * @public + * @author Nicola Asuni + * @since 4.8.000 (2009-09-06) + */ + public function setFormDefaultProp($prop=array()) { + $this->default_form_prop = $prop; + } + + /** + * Return the default properties for form fields. + * @return array $prop javascript field properties. Possible values are described on official Javascript for Acrobat API reference. + * @public + * @author Nicola Asuni + * @since 4.8.000 (2009-09-06) + */ + public function getFormDefaultProp() { + return $this->default_form_prop; + } + + /** + * Creates a text field + * @param $name (string) field name + * @param $w (float) Width of the rectangle + * @param $h (float) Height of the rectangle + * @param $prop (array) javascript field properties. Possible values are described on official Javascript for Acrobat API reference. + * @param $opt (array) annotation parameters. Possible values are described on official PDF32000_2008 reference. + * @param $x (float) Abscissa of the upper-left corner of the rectangle + * @param $y (float) Ordinate of the upper-left corner of the rectangle + * @param $js (boolean) if true put the field using JavaScript (requires Acrobat Writer to be rendered). + * @public + * @author Nicola Asuni + * @since 4.8.000 (2009-09-07) + */ + public function TextField($name, $w, $h, $prop=array(), $opt=array(), $x='', $y='', $js=false) { + if ($x === '') { + $x = $this->x; + } + if ($y === '') { + $y = $this->y; + } + // check page for no-write regions and adapt page margins if necessary + $this->checkPageRegions($h, $x, $y); + if ($js) { + $this->_addfield('text', $name, $x, $y, $w, $h, $prop); + return; + } + // get default style + $prop = array_merge($this->getFormDefaultProp(), $prop); + // get annotation data + $popt = $this->getAnnotOptFromJSProp($prop); + // set default appearance stream + $this->annotation_fonts[$this->CurrentFont['fontkey']] = $this->CurrentFont['i']; + $fontstyle = sprintf('/F%d %.2F Tf %s', $this->CurrentFont['i'], $this->FontSizePt, $this->TextColor); + $popt['da'] = $fontstyle; + $popt['ap'] = array(); + $popt['ap']['n'] = 'q BT '.$fontstyle.' ET Q'; + // merge options + $opt = array_merge($popt, $opt); + // remove some conflicting options + unset($opt['bs']); + // set remaining annotation data + $opt['Subtype'] = 'Widget'; + $opt['ft'] = 'Tx'; + $opt['t'] = $name; + /* + Additional annotation's parameters (check _putannotsobj() method): + //$opt['f'] + //$opt['ap'] + //$opt['as'] + //$opt['bs'] + //$opt['be'] + //$opt['c'] + //$opt['border'] + //$opt['h'] + //$opt['mk'] + //$opt['mk']['r'] + //$opt['mk']['bc'] + //$opt['mk']['bg'] + //$opt['mk']['ca'] + //$opt['mk']['rc'] + //$opt['mk']['ac'] + //$opt['mk']['i'] + //$opt['mk']['ri'] + //$opt['mk']['ix'] + //$opt['mk']['if'] + //$opt['mk']['if']['sw'] + //$opt['mk']['if']['s'] + //$opt['mk']['if']['a'] + //$opt['mk']['if']['fb'] + //$opt['mk']['tp'] + //$opt['tu'] + //$opt['tm'] + //$opt['ff'] + //$opt['v'] + //$opt['dv'] + //$opt['a'] + //$opt['aa'] + //$opt['q'] + */ + $this->Annotation($x, $y, $w, $h, $name, $opt, 0); + if ($this->rtl) { + $this->x -= $w; + } else { + $this->x += $w; + } + } + + /** + * Creates a RadioButton field + * @param $name (string) field name + * @param $w (int) width + * @param $prop (array) javascript field properties. Possible values are described on official Javascript for Acrobat API reference. + * @param $opt (array) annotation parameters. Possible values are described on official PDF32000_2008 reference. + * @param $onvalue (string) value to be returned if selected. + * @param $checked (boolean) define the initial state. + * @param $x (float) Abscissa of the upper-left corner of the rectangle + * @param $y (float) Ordinate of the upper-left corner of the rectangle + * @param $js (boolean) if true put the field using JavaScript (requires Acrobat Writer to be rendered). + * @public + * @author Nicola Asuni + * @since 4.8.000 (2009-09-07) + */ + public function RadioButton($name, $w, $prop=array(), $opt=array(), $onvalue='On', $checked=false, $x='', $y='', $js=false) { + if ($x === '') { + $x = $this->x; + } + if ($y === '') { + $y = $this->y; + } + // check page for no-write regions and adapt page margins if necessary + $this->checkPageRegions($w, $x, $y); + if ($js) { + $this->_addfield('radiobutton', $name, $x, $y, $w, $w, $prop); + return; + } + if ($this->empty_string($onvalue)) { + $onvalue = 'On'; + } + if ($checked) { + $defval = $onvalue; + } else { + $defval = 'Off'; + } + // set data for parent group + if (!isset($this->radiobutton_groups[$this->page])) { + $this->radiobutton_groups[$this->page] = array(); + } + if (!isset($this->radiobutton_groups[$this->page][$name])) { + $this->radiobutton_groups[$this->page][$name] = array(); + ++$this->n; + $this->radiobutton_groups[$this->page][$name]['n'] = $this->n; + $this->radio_groups[] = $this->n; + $kid = ($this->n + 2); + } else { + $kid = ($this->n + 1); + } + // save object ID to be added on Kids entry on parent object + $this->radiobutton_groups[$this->page][$name][] = array('kid' => $kid, 'def' => $defval); + // get default style + $prop = array_merge($this->getFormDefaultProp(), $prop); + $prop['NoToggleToOff'] = 'true'; + $prop['Radio'] = 'true'; + $prop['borderStyle'] = 'inset'; + // get annotation data + $popt = $this->getAnnotOptFromJSProp($prop); + // set additional default values + $font = 'zapfdingbats'; + $this->AddFont($font); + $tmpfont = $this->getFontBuffer($font); + $this->annotation_fonts[$tmpfont['fontkey']] = $tmpfont['i']; + $fontstyle = sprintf('/F%d %.2F Tf %s', $tmpfont['i'], $this->FontSizePt, $this->TextColor); + $popt['da'] = $fontstyle; + $popt['ap'] = array(); + $popt['ap']['n'] = array(); + $popt['ap']['n'][$onvalue] = 'q BT '.$fontstyle.' 0 0 Td (8) Tj ET Q'; + $popt['ap']['n']['Off'] = 'q BT '.$fontstyle.' 0 0 Td (8) Tj ET Q'; + if (!isset($popt['mk'])) { + $popt['mk'] = array(); + } + $popt['mk']['ca'] = '(l)'; + // merge options + $opt = array_merge($popt, $opt); + // set remaining annotation data + $opt['Subtype'] = 'Widget'; + $opt['ft'] = 'Btn'; + if ($checked) { + $opt['v'] = array('/'.$onvalue); + $opt['as'] = $onvalue; + } else { + $opt['as'] = 'Off'; + } + $this->Annotation($x, $y, $w, $w, $name, $opt, 0); + if ($this->rtl) { + $this->x -= $w; + } else { + $this->x += $w; + } + } + + /** + * Creates a List-box field + * @param $name (string) field name + * @param $w (int) width + * @param $h (int) height + * @param $values (array) array containing the list of values. + * @param $prop (array) javascript field properties. Possible values are described on official Javascript for Acrobat API reference. + * @param $opt (array) annotation parameters. Possible values are described on official PDF32000_2008 reference. + * @param $x (float) Abscissa of the upper-left corner of the rectangle + * @param $y (float) Ordinate of the upper-left corner of the rectangle + * @param $js (boolean) if true put the field using JavaScript (requires Acrobat Writer to be rendered). + * @public + * @author Nicola Asuni + * @since 4.8.000 (2009-09-07) + */ + public function ListBox($name, $w, $h, $values, $prop=array(), $opt=array(), $x='', $y='', $js=false) { + if ($x === '') { + $x = $this->x; + } + if ($y === '') { + $y = $this->y; + } + // check page for no-write regions and adapt page margins if necessary + $this->checkPageRegions($h, $x, $y); + if ($js) { + $this->_addfield('listbox', $name, $x, $y, $w, $h, $prop); + $s = ''; + foreach ($values as $value) { + $s .= "'".addslashes($value)."',"; + } + $this->javascript .= 'f'.$name.'.setItems(['.substr($s, 0, -1)."]);\n"; + return; + } + // get default style + $prop = array_merge($this->getFormDefaultProp(), $prop); + // get annotation data + $popt = $this->getAnnotOptFromJSProp($prop); + // set additional default values + $this->annotation_fonts[$this->CurrentFont['fontkey']] = $this->CurrentFont['i']; + $fontstyle = sprintf('/F%d %.2F Tf %s', $this->CurrentFont['i'], $this->FontSizePt, $this->TextColor); + $popt['da'] = $fontstyle; + $popt['ap'] = array(); + $popt['ap']['n'] = 'q BT '.$fontstyle.' ET Q'; + // merge options + $opt = array_merge($popt, $opt); + // set remaining annotation data + $opt['Subtype'] = 'Widget'; + $opt['ft'] = 'Ch'; + $opt['t'] = $name; + $opt['opt'] = $values; + $this->Annotation($x, $y, $w, $h, $name, $opt, 0); + if ($this->rtl) { + $this->x -= $w; + } else { + $this->x += $w; + } + } + + /** + * Creates a Combo-box field + * @param $name (string) field name + * @param $w (int) width + * @param $h (int) height + * @param $values (array) array containing the list of values. + * @param $prop (array) javascript field properties. Possible values are described on official Javascript for Acrobat API reference. + * @param $opt (array) annotation parameters. Possible values are described on official PDF32000_2008 reference. + * @param $x (float) Abscissa of the upper-left corner of the rectangle + * @param $y (float) Ordinate of the upper-left corner of the rectangle + * @param $js (boolean) if true put the field using JavaScript (requires Acrobat Writer to be rendered). + * @public + * @author Nicola Asuni + * @since 4.8.000 (2009-09-07) + */ + public function ComboBox($name, $w, $h, $values, $prop=array(), $opt=array(), $x='', $y='', $js=false) { + if ($x === '') { + $x = $this->x; + } + if ($y === '') { + $y = $this->y; + } + // check page for no-write regions and adapt page margins if necessary + $this->checkPageRegions($h, $x, $y); + if ($js) { + $this->_addfield('combobox', $name, $x, $y, $w, $h, $prop); + $s = ''; + foreach ($values as $value) { + $s .= "'".addslashes($value)."',"; + } + $this->javascript .= 'f'.$name.'.setItems(['.substr($s, 0, -1)."]);\n"; + return; + } + // get default style + $prop = array_merge($this->getFormDefaultProp(), $prop); + $prop['Combo'] = true; + // get annotation data + $popt = $this->getAnnotOptFromJSProp($prop); + // set additional default options + $this->annotation_fonts[$this->CurrentFont['fontkey']] = $this->CurrentFont['i']; + $fontstyle = sprintf('/F%d %.2F Tf %s', $this->CurrentFont['i'], $this->FontSizePt, $this->TextColor); + $popt['da'] = $fontstyle; + $popt['ap'] = array(); + $popt['ap']['n'] = 'q BT '.$fontstyle.' ET Q'; + // merge options + $opt = array_merge($popt, $opt); + // set remaining annotation data + $opt['Subtype'] = 'Widget'; + $opt['ft'] = 'Ch'; + $opt['t'] = $name; + $opt['opt'] = $values; + $this->Annotation($x, $y, $w, $h, $name, $opt, 0); + if ($this->rtl) { + $this->x -= $w; + } else { + $this->x += $w; + } + } + + /** + * Creates a CheckBox field + * @param $name (string) field name + * @param $w (int) width + * @param $checked (boolean) define the initial state. + * @param $prop (array) javascript field properties. Possible values are described on official Javascript for Acrobat API reference. + * @param $opt (array) annotation parameters. Possible values are described on official PDF32000_2008 reference. + * @param $onvalue (string) value to be returned if selected. + * @param $x (float) Abscissa of the upper-left corner of the rectangle + * @param $y (float) Ordinate of the upper-left corner of the rectangle + * @param $js (boolean) if true put the field using JavaScript (requires Acrobat Writer to be rendered). + * @public + * @author Nicola Asuni + * @since 4.8.000 (2009-09-07) + */ + public function CheckBox($name, $w, $checked=false, $prop=array(), $opt=array(), $onvalue='Yes', $x='', $y='', $js=false) { + if ($x === '') { + $x = $this->x; + } + if ($y === '') { + $y = $this->y; + } + // check page for no-write regions and adapt page margins if necessary + $this->checkPageRegions($w, $x, $y); + if ($js) { + $this->_addfield('checkbox', $name, $x, $y, $w, $w, $prop); + return; + } + if (!isset($prop['value'])) { + $prop['value'] = array('Yes'); + } + // get default style + $prop = array_merge($this->getFormDefaultProp(), $prop); + $prop['borderStyle'] = 'inset'; + // get annotation data + $popt = $this->getAnnotOptFromJSProp($prop); + // set additional default options + $font = 'zapfdingbats'; + $this->AddFont($font); + $tmpfont = $this->getFontBuffer($font); + $this->annotation_fonts[$tmpfont['fontkey']] = $tmpfont['i']; + $fontstyle = sprintf('/F%d %.2F Tf %s', $tmpfont['i'], $this->FontSizePt, $this->TextColor); + $popt['da'] = $fontstyle; + $popt['ap'] = array(); + $popt['ap']['n'] = array(); + $popt['ap']['n']['Yes'] = 'q BT '.$fontstyle.' 0 0 Td (8) Tj ET Q'; + $popt['ap']['n']['Off'] = 'q BT '.$fontstyle.' 0 0 Td (8) Tj ET Q'; + // merge options + $opt = array_merge($popt, $opt); + // set remaining annotation data + $opt['Subtype'] = 'Widget'; + $opt['ft'] = 'Btn'; + $opt['t'] = $name; + $opt['opt'] = array($onvalue); + if ($checked) { + $opt['v'] = array('/0'); + $opt['as'] = 'Yes'; + } else { + $opt['v'] = array('/Off'); + $opt['as'] = 'Off'; + } + $this->Annotation($x, $y, $w, $w, $name, $opt, 0); + if ($this->rtl) { + $this->x -= $w; + } else { + $this->x += $w; + } + } + + /** + * Creates a button field + * @param $name (string) field name + * @param $w (int) width + * @param $h (int) height + * @param $caption (string) caption. + * @param $action (mixed) action triggered by pressing the button. Use a string to specify a javascript action. Use an array to specify a form action options as on section 12.7.5 of PDF32000_2008. + * @param $prop (array) javascript field properties. Possible values are described on official Javascript for Acrobat API reference. + * @param $opt (array) annotation parameters. Possible values are described on official PDF32000_2008 reference. + * @param $x (float) Abscissa of the upper-left corner of the rectangle + * @param $y (float) Ordinate of the upper-left corner of the rectangle + * @param $js (boolean) if true put the field using JavaScript (requires Acrobat Writer to be rendered). + * @public + * @author Nicola Asuni + * @since 4.8.000 (2009-09-07) + */ + public function Button($name, $w, $h, $caption, $action, $prop=array(), $opt=array(), $x='', $y='', $js=false) { + if ($x === '') { + $x = $this->x; + } + if ($y === '') { + $y = $this->y; + } + // check page for no-write regions and adapt page margins if necessary + $this->checkPageRegions($h, $x, $y); + if ($js) { + $this->_addfield('button', $name, $this->x, $this->y, $w, $h, $prop); + $this->javascript .= 'f'.$name.".buttonSetCaption('".addslashes($caption)."');\n"; + $this->javascript .= 'f'.$name.".setAction('MouseUp','".addslashes($action)."');\n"; + $this->javascript .= 'f'.$name.".highlight='push';\n"; + $this->javascript .= 'f'.$name.".print=false;\n"; + return; + } + // get default style + $prop = array_merge($this->getFormDefaultProp(), $prop); + $prop['Pushbutton'] = 'true'; + $prop['highlight'] = 'push'; + $prop['display'] = 'display.noPrint'; + // get annotation data + $popt = $this->getAnnotOptFromJSProp($prop); + $this->annotation_fonts[$this->CurrentFont['fontkey']] = $this->CurrentFont['i']; + $fontstyle = sprintf('/F%d %.2F Tf %s', $this->CurrentFont['i'], $this->FontSizePt, $this->TextColor); + $popt['da'] = $fontstyle; + $popt['ap'] = array(); + $popt['ap']['n'] = 'q BT '.$fontstyle.' ET Q'; + // set additional default options + if (!isset($popt['mk'])) { + $popt['mk'] = array(); + } + $ann_obj_id = ($this->n + 1); + if (!empty($action) AND !is_array($action)) { + $ann_obj_id = ($this->n + 2); + } + $popt['mk']['ca'] = $this->_textstring($caption, $ann_obj_id); + $popt['mk']['rc'] = $this->_textstring($caption, $ann_obj_id); + $popt['mk']['ac'] = $this->_textstring($caption, $ann_obj_id); + // merge options + $opt = array_merge($popt, $opt); + // set remaining annotation data + $opt['Subtype'] = 'Widget'; + $opt['ft'] = 'Btn'; + $opt['t'] = $caption; + $opt['v'] = $name; + if (!empty($action)) { + if (is_array($action)) { + // form action options as on section 12.7.5 of PDF32000_2008. + $opt['aa'] = '/D <<'; + $bmode = array('SubmitForm', 'ResetForm', 'ImportData'); + foreach ($action AS $key => $val) { + if (($key == 'S') AND in_array($val, $bmode)) { + $opt['aa'] .= ' /S /'.$val; + } elseif (($key == 'F') AND (!empty($val))) { + $opt['aa'] .= ' /F '.$this->_datastring($val, $ann_obj_id); + } elseif (($key == 'Fields') AND is_array($val) AND !empty($val)) { + $opt['aa'] .= ' /Fields ['; + foreach ($val AS $field) { + $opt['aa'] .= ' '.$this->_textstring($field, $ann_obj_id); + } + $opt['aa'] .= ']'; + } elseif (($key == 'Flags')) { + $ff = 0; + if (is_array($val)) { + foreach ($val AS $flag) { + switch ($flag) { + case 'Include/Exclude': { + $ff += 1 << 0; + break; + } + case 'IncludeNoValueFields': { + $ff += 1 << 1; + break; + } + case 'ExportFormat': { + $ff += 1 << 2; + break; + } + case 'GetMethod': { + $ff += 1 << 3; + break; + } + case 'SubmitCoordinates': { + $ff += 1 << 4; + break; + } + case 'XFDF': { + $ff += 1 << 5; + break; + } + case 'IncludeAppendSaves': { + $ff += 1 << 6; + break; + } + case 'IncludeAnnotations': { + $ff += 1 << 7; + break; + } + case 'SubmitPDF': { + $ff += 1 << 8; + break; + } + case 'CanonicalFormat': { + $ff += 1 << 9; + break; + } + case 'ExclNonUserAnnots': { + $ff += 1 << 10; + break; + } + case 'ExclFKey': { + $ff += 1 << 11; + break; + } + case 'EmbedForm': { + $ff += 1 << 13; + break; + } + } + } + } else { + $ff = intval($val); + } + $opt['aa'] .= ' /Flags '.$ff; + } + } + $opt['aa'] .= ' >>'; + } else { + // Javascript action or raw action command + $js_obj_id = $this->addJavascriptObject($action); + $opt['aa'] = '/D '.$js_obj_id.' 0 R'; + } + } + $this->Annotation($x, $y, $w, $h, $name, $opt, 0); + if ($this->rtl) { + $this->x -= $w; + } else { + $this->x += $w; + } + } + + // --- END FORMS FIELDS ------------------------------------------------ + + /** + * Add certification signature (DocMDP or UR3) + * You can set only one signature type + * @protected + * @author Nicola Asuni + * @since 4.6.008 (2009-05-07) + */ + protected function _putsignature() { + if ((!$this->sign) OR (!isset($this->signature_data['cert_type']))) { + return; + } + $out = $this->_getobj($this->sig_obj_id + 1)."\n"; + $out .= '<< /Type /Sig'; + $out .= ' /Filter /Adobe.PPKLite'; + $out .= ' /SubFilter /adbe.pkcs7.detached'; + $out .= ' '.$this->byterange_string; + $out .= ' /Contents<'.str_repeat('0', $this->signature_max_length).'>'; + $out .= ' /Reference ['; // array of signature reference dictionaries + $out .= ' << /Type /SigRef'; + if ($this->signature_data['cert_type'] > 0) { + $out .= ' /TransformMethod /DocMDP'; + $out .= ' /TransformParams <<'; + $out .= ' /Type /TransformParams'; + $out .= ' /V /1.2'; + $out .= ' /P '.$this->signature_data['cert_type']; + } else { + $out .= ' /TransformMethod /UR3'; + $out .= ' /TransformParams <<'; + $out .= ' /Type /TransformParams'; + $out .= ' /V /2.2'; + if (!$this->empty_string($this->ur['document'])) { + $out .= ' /Document['.$this->ur['document'].']'; + } + if (!$this->empty_string($this->ur['form'])) { + $out .= ' /Form['.$this->ur['form'].']'; + } + if (!$this->empty_string($this->ur['signature'])) { + $out .= ' /Signature['.$this->ur['signature'].']'; + } + if (!$this->empty_string($this->ur['annots'])) { + $out .= ' /Annots['.$this->ur['annots'].']'; + } + if (!$this->empty_string($this->ur['ef'])) { + $out .= ' /EF['.$this->ur['ef'].']'; + } + if (!$this->empty_string($this->ur['formex'])) { + $out .= ' /FormEX['.$this->ur['formex'].']'; + } + } + $out .= ' >>'; // close TransformParams + // optional digest data (values must be calculated and replaced later) + //$out .= ' /Data ********** 0 R'; + //$out .= ' /DigestMethod/MD5'; + //$out .= ' /DigestLocation[********** 34]'; + //$out .= ' /DigestValue<********************************>'; + $out .= ' >>'; + $out .= ' ]'; // end of reference + if (isset($this->signature_data['info']['Name']) AND !$this->empty_string($this->signature_data['info']['Name'])) { + $out .= ' /Name '.$this->_textstring($this->signature_data['info']['Name']); + } + if (isset($this->signature_data['info']['Location']) AND !$this->empty_string($this->signature_data['info']['Location'])) { + $out .= ' /Location '.$this->_textstring($this->signature_data['info']['Location']); + } + if (isset($this->signature_data['info']['Reason']) AND !$this->empty_string($this->signature_data['info']['Reason'])) { + $out .= ' /Reason '.$this->_textstring($this->signature_data['info']['Reason']); + } + if (isset($this->signature_data['info']['ContactInfo']) AND !$this->empty_string($this->signature_data['info']['ContactInfo'])) { + $out .= ' /ContactInfo '.$this->_textstring($this->signature_data['info']['ContactInfo']); + } + $out .= ' /M '.$this->_datestring(); + $out .= ' >>'; + $out .= "\n".'endobj'; + $this->_out($out); + } + + /** + * Set User's Rights for PDF Reader + * WARNING: This is experimental and currently do not work. + * Check the PDF Reference 8.7.1 Transform Methods, + * Table 8.105 Entries in the UR transform parameters dictionary + * @param $enable (boolean) if true enable user's rights on PDF reader + * @param $document (string) Names specifying additional document-wide usage rights for the document. The only defined value is "/FullSave", which permits a user to save the document along with modified form and/or annotation data. + * @param $annots (string) Names specifying additional annotation-related usage rights for the document. Valid names in PDF 1.5 and later are /Create/Delete/Modify/Copy/Import/Export, which permit the user to perform the named operation on annotations. + * @param $form (string) Names specifying additional form-field-related usage rights for the document. Valid names are: /Add/Delete/FillIn/Import/Export/SubmitStandalone/SpawnTemplate + * @param $signature (string) Names specifying additional signature-related usage rights for the document. The only defined value is /Modify, which permits a user to apply a digital signature to an existing signature form field or clear a signed signature form field. + * @param $ef (string) Names specifying additional usage rights for named embedded files in the document. Valid names are /Create/Delete/Modify/Import, which permit the user to perform the named operation on named embedded files + Names specifying additional embedded-files-related usage rights for the document. + * @param $formex (string) Names specifying additional form-field-related usage rights. The only valid name is BarcodePlaintext, which permits text form field data to be encoded as a plaintext two-dimensional barcode. + * @public + * @author Nicola Asuni + * @since 2.9.000 (2008-03-26) + */ + public function setUserRights( + $enable=true, + $document='/FullSave', + $annots='/Create/Delete/Modify/Copy/Import/Export', + $form='/Add/Delete/FillIn/Import/Export/SubmitStandalone/SpawnTemplate', + $signature='/Modify', + $ef='/Create/Delete/Modify/Import', + $formex='') { + $this->ur['enabled'] = $enable; + $this->ur['document'] = $document; + $this->ur['annots'] = $annots; + $this->ur['form'] = $form; + $this->ur['signature'] = $signature; + $this->ur['ef'] = $ef; + $this->ur['formex'] = $formex; + if (!$this->sign) { + $this->setSignature('', '', '', '', 0, array()); + } + } + + /** + * Enable document signature (requires the OpenSSL Library). + * The digital signature improve document authenticity and integrity and allows o enable extra features on Acrobat Reader. + * To create self-signed signature: openssl req -x509 -nodes -days 365000 -newkey rsa:1024 -keyout tcpdf.crt -out tcpdf.crt + * To export crt to p12: openssl pkcs12 -export -in tcpdf.crt -out tcpdf.p12 + * To convert pfx certificate to pem: openssl pkcs12 -in tcpdf.pfx -out tcpdf.crt -nodes + * @param $signing_cert (mixed) signing certificate (string or filename prefixed with 'file://') + * @param $private_key (mixed) private key (string or filename prefixed with 'file://') + * @param $private_key_password (string) password + * @param $extracerts (string) specifies the name of a file containing a bunch of extra certificates to include in the signature which can for example be used to help the recipient to verify the certificate that you used. + * @param $cert_type (int) The access permissions granted for this document. Valid values shall be: 1 = No changes to the document shall be permitted; any change to the document shall invalidate the signature; 2 = Permitted changes shall be filling in forms, instantiating page templates, and signing; other changes shall invalidate the signature; 3 = Permitted changes shall be the same as for 2, as well as annotation creation, deletion, and modification; other changes shall invalidate the signature. + * @param $info (array) array of option information: Name, Location, Reason, ContactInfo. + * @public + * @author Nicola Asuni + * @since 4.6.005 (2009-04-24) + */ + public function setSignature($signing_cert='', $private_key='', $private_key_password='', $extracerts='', $cert_type=2, $info=array()) { + // to create self-signed signature: openssl req -x509 -nodes -days 365000 -newkey rsa:1024 -keyout tcpdf.crt -out tcpdf.crt + // to export crt to p12: openssl pkcs12 -export -in tcpdf.crt -out tcpdf.p12 + // to convert pfx certificate to pem: openssl + // OpenSSL> pkcs12 -in -out -nodes + $this->sign = true; + ++$this->n; + $this->sig_obj_id = $this->n; // signature widget + ++$this->n; // signature object ($this->sig_obj_id + 1) + $this->signature_data = array(); + if (strlen($signing_cert) == 0) { + $signing_cert = 'file://'.dirname(__FILE__).'/tcpdf.crt'; + $private_key_password = 'tcpdfdemo'; + } + if (strlen($private_key) == 0) { + $private_key = $signing_cert; + } + $this->signature_data['signcert'] = $signing_cert; + $this->signature_data['privkey'] = $private_key; + $this->signature_data['password'] = $private_key_password; + $this->signature_data['extracerts'] = $extracerts; + $this->signature_data['cert_type'] = $cert_type; + $this->signature_data['info'] = $info; + } + + /** + * Set the digital signature appearance (a cliccable rectangle area to get signature properties) + * @param $x (float) Abscissa of the upper-left corner. + * @param $y (float) Ordinate of the upper-left corner. + * @param $w (float) Width of the signature area. + * @param $h (float) Height of the signature area. + * @param $page (int) option page number (if < 0 the current page is used). + * @public + * @author Nicola Asuni + * @since 5.3.011 (2010-06-17) + */ + public function setSignatureAppearance($x=0, $y=0, $w=0, $h=0, $page=-1) { + if (($page < 1) OR ($page > $this->numpages)) { + $this->signature_appearance['page'] = $this->page; + } else { + $this->signature_appearance['page'] = intval($page); + } + $a = $x * $this->k; + $b = $this->pagedim[($this->signature_appearance['page'])]['h'] - (($y + $h) * $this->k); + $c = $w * $this->k; + $d = $h * $this->k; + $this->signature_appearance['rect'] = sprintf('%.2F %.2F %.2F %.2F', $a, $b, $a+$c, $b+$d); + } + + /** + * Create a new page group. + * NOTE: call this function before calling AddPage() + * @param $page (int) starting group page (leave empty for next page). + * @public + * @since 3.0.000 (2008-03-27) + */ + public function startPageGroup($page='') { + if (empty($page)) { + $page = $this->page + 1; + } + $this->newpagegroup[$page] = true; + } + + /** + * Defines a string alias for the total number of pages. It will be substituted as the document is closed. + * @param $numalias (string) The alias. + * @since 1.4 + * @see getAliasNbPages(), PageNo(), Footer() + * @public + */ + public function AliasNbPages($numalias="{nb}") { + $this->AliasNbPages = $numalias; + } + + /** + * Returns the string alias used for the total number of pages. + * If the current font is unicode type, the returned string is surrounded by additional curly braces. + * @return string + * @since 4.0.018 (2008-08-08) + * @see AliasNbPages(), PageNo(), Footer() + * @public + */ + public function getAliasNbPages() { + if ($this->isUnicodeFont()) { + return '{'.$this->AliasNbPages.'}'; + } + return $this->AliasNbPages; + } + + /** + * Defines a string alias for the page number. It will be substituted as the document is closed. + * @param $numalias (string) The alias. + * @since 4.5.000 (2009-01-02) + * @see getAliasNbPages(), PageNo(), Footer() + * @public + */ + public function AliasNumPage($numalias="{pnb}") { + $this->AliasNumPage = $numalias; + } + + /** + * Returns the string alias used for the page number. + * If the current font is unicode type, the returned string is surrounded by additional curly braces. + * @return string + * @since 4.5.000 (2009-01-02) + * @see AliasNbPages(), PageNo(), Footer() + * @public + */ + public function getAliasNumPage() { + if ($this->isUnicodeFont()) { + return '{'.$this->AliasNumPage.'}'; + } + return $this->AliasNumPage; + } + + /** + * Return the current page in the group. + * @return current page in the group + * @public + * @since 3.0.000 (2008-03-27) + */ + public function getGroupPageNo() { + return $this->pagegroups[$this->currpagegroup]; + } + + /** + * Returns the current group page number formatted as a string. + * @public + * @since 4.3.003 (2008-11-18) + * @see PaneNo(), formatPageNumber() + */ + public function getGroupPageNoFormatted() { + return $this->formatPageNumber($this->getGroupPageNo()); + } + + /** + * Return the alias of the current page group + * If the current font is unicode type, the returned string is surrounded by additional curly braces. + * (will be replaced by the total number of pages in this group). + * @return alias of the current page group + * @public + * @since 3.0.000 (2008-03-27) + */ + public function getPageGroupAlias() { + if ($this->isUnicodeFont()) { + return '{'.$this->currpagegroup.'}'; + } + return $this->currpagegroup; + } + + /** + * Return the alias for the page number on the current page group + * If the current font is unicode type, the returned string is surrounded by additional curly braces. + * (will be replaced by the total number of pages in this group). + * @return alias of the current page group + * @public + * @since 4.5.000 (2009-01-02) + */ + public function getPageNumGroupAlias() { + if ($this->isUnicodeFont()) { + return '{'.str_replace('{nb', '{pnb', $this->currpagegroup).'}'; + } + return str_replace('{nb', '{pnb', $this->currpagegroup); + } + + /** + * Format the page numbers. + * This method can be overriden for custom formats. + * @param $num (int) page number + * @protected + * @since 4.2.005 (2008-11-06) + */ + protected function formatPageNumber($num) { + return number_format((float)$num, 0, '', '.'); + } + + /** + * Format the page numbers on the Table Of Content. + * This method can be overriden for custom formats. + * @param $num (int) page number + * @protected + * @since 4.5.001 (2009-01-04) + * @see addTOC(), addHTMLTOC() + */ + protected function formatTOCPageNumber($num) { + return number_format((float)$num, 0, '', '.'); + } + + /** + * Returns the current page number formatted as a string. + * @public + * @since 4.2.005 (2008-11-06) + * @see PaneNo(), formatPageNumber() + */ + public function PageNoFormatted() { + return $this->formatPageNumber($this->PageNo()); + } + + /** + * Put visibility settings. + * @protected + * @since 3.0.000 (2008-03-27) + */ + protected function _putocg() { + $this->n_ocg_print = $this->_newobj(); + $this->_out('<< /Type /OCG /Name '.$this->_textstring('print', $this->n_ocg_print).' /Usage << /Print <> /View <> >> >>'."\n".'endobj'); + $this->n_ocg_view = $this->_newobj(); + $this->_out('<< /Type /OCG /Name '.$this->_textstring('view', $this->n_ocg_view).' /Usage << /Print <> /View <> >> >>'."\n".'endobj'); + } + + /** + * Set the visibility of the successive elements. + * This can be useful, for instance, to put a background + * image or color that will show on screen but won't print. + * @param $v (string) visibility mode. Legal values are: all, print, screen. + * @public + * @since 3.0.000 (2008-03-27) + */ + public function setVisibility($v) { + if ($this->openMarkedContent) { + // close existing open marked-content + $this->_out('EMC'); + $this->openMarkedContent = false; + } + switch($v) { + case 'print': { + $this->_out('/OC /OC1 BDC'); + $this->openMarkedContent = true; + break; + } + case 'screen': { + $this->_out('/OC /OC2 BDC'); + $this->openMarkedContent = true; + break; + } + case 'all': { + $this->_out(''); + break; + } + default: { + $this->Error('Incorrect visibility: '.$v); + break; + } + } + $this->visibility = $v; + } + + /** + * Add transparency parameters to the current extgstate + * @param $parms (array) parameters + * @return the number of extgstates + * @protected + * @since 3.0.000 (2008-03-27) + */ + protected function addExtGState($parms) { + $n = count($this->extgstates) + 1; + // check if this ExtGState already exist + for ($i = 1; $i < $n; ++$i) { + if ($this->extgstates[$i]['parms'] == $parms) { + // return reference to existing ExtGState + return $i; + } + } + $this->extgstates[$n]['parms'] = $parms; + return $n; + } + + /** + * Add an extgstate + * @param $gs (array) extgstate + * @protected + * @since 3.0.000 (2008-03-27) + */ + protected function setExtGState($gs) { + $this->_out(sprintf('/GS%d gs', $gs)); + } + + /** + * Put extgstates for object transparency + * @protected + * @since 3.0.000 (2008-03-27) + */ + protected function _putextgstates() { + $ne = count($this->extgstates); + for ($i = 1; $i <= $ne; ++$i) { + $this->extgstates[$i]['n'] = $this->_newobj(); + $out = '<< /Type /ExtGState'; + foreach ($this->extgstates[$i]['parms'] as $k => $v) { + if (is_float($v)) { + $v = sprintf('%.2F', $v); + } + $out .= ' /'.$k.' '.$v; + } + $out .= ' >>'; + $out .= "\n".'endobj'; + $this->_out($out); + } + } + + /** + * Set alpha for stroking (CA) and non-stroking (ca) operations. + * @param $alpha (float) real value from 0 (transparent) to 1 (opaque) + * @param $bm (string) blend mode, one of the following: Normal, Multiply, Screen, Overlay, Darken, Lighten, ColorDodge, ColorBurn, HardLight, SoftLight, Difference, Exclusion, Hue, Saturation, Color, Luminosity + * @public + * @since 3.0.000 (2008-03-27) + */ + public function setAlpha($alpha, $bm='Normal') { + $gs = $this->addExtGState(array('ca' => $alpha, 'CA' => $alpha, 'BM' => '/'.$bm, 'AIS' => 'false')); + $this->setExtGState($gs); + } + + /** + * Set the default JPEG compression quality (1-100) + * @param $quality (int) JPEG quality, integer between 1 and 100 + * @public + * @since 3.0.000 (2008-03-27) + */ + public function setJPEGQuality($quality) { + if (($quality < 1) OR ($quality > 100)) { + $quality = 75; + } + $this->jpeg_quality = intval($quality); + } + + /** + * Set the default number of columns in a row for HTML tables. + * @param $cols (int) number of columns + * @public + * @since 3.0.014 (2008-06-04) + */ + public function setDefaultTableColumns($cols=4) { + $this->default_table_columns = intval($cols); + } + + /** + * Set the height of the cell (line height) respect the font height. + * @param $h (int) cell proportion respect font height (typical value = 1.25). + * @public + * @since 3.0.014 (2008-06-04) + */ + public function setCellHeightRatio($h) { + $this->cell_height_ratio = $h; + } + + /** + * return the height of cell repect font height. + * @public + * @since 4.0.012 (2008-07-24) + */ + public function getCellHeightRatio() { + return $this->cell_height_ratio; + } + + /** + * Set the PDF version (check PDF reference for valid values). + * @param $version (string) PDF document version. + * @public + * @since 3.1.000 (2008-06-09) + */ + public function setPDFVersion($version='1.7') { + $this->PDFVersion = $version; + } + + /** + * Set the viewer preferences dictionary controlling the way the document is to be presented on the screen or in print. + * (see Section 8.1 of PDF reference, "Viewer Preferences"). + *
        • HideToolbar boolean (Optional) A flag specifying whether to hide the viewer application's tool bars when the document is active. Default value: false.
        • HideMenubar boolean (Optional) A flag specifying whether to hide the viewer application's menu bar when the document is active. Default value: false.
        • HideWindowUI boolean (Optional) A flag specifying whether to hide user interface elements in the document's window (such as scroll bars and navigation controls), leaving only the document's contents displayed. Default value: false.
        • FitWindow boolean (Optional) A flag specifying whether to resize the document's window to fit the size of the first displayed page. Default value: false.
        • CenterWindow boolean (Optional) A flag specifying whether to position the document's window in the center of the screen. Default value: false.
        • DisplayDocTitle boolean (Optional; PDF 1.4) A flag specifying whether the window's title bar should display the document title taken from the Title entry of the document information dictionary (see Section 10.2.1, "Document Information Dictionary"). If false, the title bar should instead display the name of the PDF file containing the document. Default value: false.
        • NonFullScreenPageMode name (Optional) The document's page mode, specifying how to display the document on exiting full-screen mode:
          • UseNone Neither document outline nor thumbnail images visible
          • UseOutlines Document outline visible
          • UseThumbs Thumbnail images visible
          • UseOC Optional content group panel visible
          This entry is meaningful only if the value of the PageMode entry in the catalog dictionary (see Section 3.6.1, "Document Catalog") is FullScreen; it is ignored otherwise. Default value: UseNone.
        • ViewArea name (Optional; PDF 1.4) The name of the page boundary representing the area of a page to be displayed when viewing the document on the screen. Valid values are (see Section 10.10.1, "Page Boundaries").:
          • MediaBox
          • CropBox (default)
          • BleedBox
          • TrimBox
          • ArtBox
        • ViewClip name (Optional; PDF 1.4) The name of the page boundary to which the contents of a page are to be clipped when viewing the document on the screen. Valid values are (see Section 10.10.1, "Page Boundaries").:
          • MediaBox
          • CropBox (default)
          • BleedBox
          • TrimBox
          • ArtBox
        • PrintArea name (Optional; PDF 1.4) The name of the page boundary representing the area of a page to be rendered when printing the document. Valid values are (see Section 10.10.1, "Page Boundaries").:
          • MediaBox
          • CropBox (default)
          • BleedBox
          • TrimBox
          • ArtBox
        • PrintClip name (Optional; PDF 1.4) The name of the page boundary to which the contents of a page are to be clipped when printing the document. Valid values are (see Section 10.10.1, "Page Boundaries").:
          • MediaBox
          • CropBox (default)
          • BleedBox
          • TrimBox
          • ArtBox
        • PrintScaling name (Optional; PDF 1.6) The page scaling option to be selected when a print dialog is displayed for this document. Valid values are:
          • None, which indicates that the print dialog should reflect no page scaling
          • AppDefault (default), which indicates that applications should use the current print scaling
        • Duplex name (Optional; PDF 1.7) The paper handling option to use when printing the file from the print dialog. The following values are valid:
          • Simplex - Print single-sided
          • DuplexFlipShortEdge - Duplex and flip on the short edge of the sheet
          • DuplexFlipLongEdge - Duplex and flip on the long edge of the sheet
          Default value: none
        • PickTrayByPDFSize boolean (Optional; PDF 1.7) A flag specifying whether the PDF page size is used to select the input paper tray. This setting influences only the preset values used to populate the print dialog presented by a PDF viewer application. If PickTrayByPDFSize is true, the check box in the print dialog associated with input paper tray is checked. Note: This setting has no effect on Mac OS systems, which do not provide the ability to pick the input tray by size.
        • PrintPageRange array (Optional; PDF 1.7) The page numbers used to initialize the print dialog box when the file is printed. The first page of the PDF file is denoted by 1. Each pair consists of the first and last pages in the sub-range. An odd number of integers causes this entry to be ignored. Negative numbers cause the entire array to be ignored. Default value: as defined by PDF viewer application
        • NumCopies integer (Optional; PDF 1.7) The number of copies to be printed when the print dialog is opened for this file. Supported values are the integers 2 through 5. Values outside this range are ignored. Default value: as defined by PDF viewer application, but typically 1
        + * @param $preferences (array) array of options. + * @author Nicola Asuni + * @public + * @since 3.1.000 (2008-06-09) + */ + public function setViewerPreferences($preferences) { + $this->viewer_preferences = $preferences; + } + + /** + * Paints color transition registration bars + * @param $x (float) abscissa of the top left corner of the rectangle. + * @param $y (float) ordinate of the top left corner of the rectangle. + * @param $w (float) width of the rectangle. + * @param $h (float) height of the rectangle. + * @param $transition (boolean) if true prints tcolor transitions to white. + * @param $vertical (boolean) if true prints bar vertically. + * @param $colors (string) colors to print, one letter per color separated by comma (for example 'A,W,R,G,B,C,M,Y,K'): A=black, W=white, R=red, G=green, B=blue, C=cyan, M=magenta, Y=yellow, K=black. + * @author Nicola Asuni + * @since 4.9.000 (2010-03-26) + * @public + */ + public function colorRegistrationBar($x, $y, $w, $h, $transition=true, $vertical=false, $colors='A,R,G,B,C,M,Y,K') { + $bars = explode(',', $colors); + $numbars = count($bars); // number of bars to print + // set bar measures + if ($vertical) { + $coords = array(0, 0, 0, 1); + $wb = $w / $numbars; // bar width + $hb = $h; // bar height + $xd = $wb; // delta x + $yd = 0; // delta y + } else { + $coords = array(1, 0, 0, 0); + $wb = $w; // bar width + $hb = $h / $numbars; // bar height + $xd = 0; // delta x + $yd = $hb; // delta y + } + $xb = $x; + $yb = $y; + foreach ($bars as $col) { + switch ($col) { + // set transition colors + case 'A': { // BLACK + $col_a = array(255); + $col_b = array(0); + break; + } + case 'W': { // WHITE + $col_a = array(0); + $col_b = array(255); + break; + } + case 'R': { // R + $col_a = array(255,255,255); + $col_b = array(255,0,0); + break; + } + case 'G': { // G + $col_a = array(255,255,255); + $col_b = array(0,255,0); + break; + } + case 'B': { // B + $col_a = array(255,255,255); + $col_b = array(0,0,255); + break; + } + case 'C': { // C + $col_a = array(0,0,0,0); + $col_b = array(100,0,0,0); + break; + } + case 'M': { // M + $col_a = array(0,0,0,0); + $col_b = array(0,100,0,0); + break; + } + case 'Y': { // Y + $col_a = array(0,0,0,0); + $col_b = array(0,0,100,0); + break; + } + case 'K': { // K + $col_a = array(0,0,0,0); + $col_b = array(0,0,0,100); + break; + } + default: { // GRAY + $col_a = array(255); + $col_b = array(0); + break; + } + } + if ($transition) { + // color gradient + $this->LinearGradient($xb, $yb, $wb, $hb, $col_a, $col_b, $coords); + } else { + // color rectangle + $this->SetFillColorArray($col_b); + $this->Rect($xb, $yb, $wb, $hb, 'F', array()); + } + $xb += $xd; + $yb += $yd; + } + } + + /** + * Paints crop mark + * @param $x (float) abscissa of the crop mark center. + * @param $y (float) ordinate of the crop mark center. + * @param $w (float) width of the crop mark. + * @param $h (float) height of the crop mark. + * @param $type (string) type of crop mark, one sybol per type separated by comma: A = top left, B = top right, C = bottom left, D = bottom right. + * @param $color (array) crop mark color (default black). + * @author Nicola Asuni + * @since 4.9.000 (2010-03-26) + * @public + */ + public function cropMark($x, $y, $w, $h, $type='A,B,C,D', $color=array(0,0,0)) { + $this->SetLineStyle(array('width' => (0.5 / $this->k), 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => $color)); + $crops = explode(',', $type); + $numcrops = count($crops); // number of crop marks to print + $dw = $w / 4; // horizontal space to leave before the intersection point + $dh = $h / 4; // vertical space to leave before the intersection point + foreach ($crops as $crop) { + switch ($crop) { + case 'A': { + $x1 = $x; + $y1 = $y - $h; + $x2 = $x; + $y2 = $y - $dh; + $x3 = $x - $w; + $y3 = $y; + $x4 = $x - $dw; + $y4 = $y; + break; + } + case 'B': { + $x1 = $x; + $y1 = $y - $h; + $x2 = $x; + $y2 = $y - $dh; + $x3 = $x + $dw; + $y3 = $y; + $x4 = $x + $w; + $y4 = $y; + break; + } + case 'C': { + $x1 = $x - $w; + $y1 = $y; + $x2 = $x - $dw; + $y2 = $y; + $x3 = $x; + $y3 = $y + $dh; + $x4 = $x; + $y4 = $y + $h; + break; + } + case 'D': { + $x1 = $x + $dw; + $y1 = $y; + $x2 = $x + $w; + $y2 = $y; + $x3 = $x; + $y3 = $y + $dh; + $x4 = $x; + $y4 = $y + $h; + break; + } + } + $this->Line($x1, $y1, $x2, $y2); + $this->Line($x3, $y3, $x4, $y4); + } + } + + /** + * Paints a registration mark + * @param $x (float) abscissa of the registration mark center. + * @param $y (float) ordinate of the registration mark center. + * @param $r (float) radius of the crop mark. + * @param $double (boolean) if true print two concentric crop marks. + * @param $cola (array) crop mark color (default black). + * @param $colb (array) second crop mark color. + * @author Nicola Asuni + * @since 4.9.000 (2010-03-26) + * @public + */ + public function registrationMark($x, $y, $r, $double=false, $cola=array(0,0,0), $colb=array(255,255,255)) { + $line_style = array('width' => (0.5 / $this->k), 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => $cola); + $this->SetFillColorArray($cola); + $this->PieSector($x, $y, $r, 90, 180, 'F'); + $this->PieSector($x, $y, $r, 270, 360, 'F'); + $this->Circle($x, $y, $r, 0, 360, 'C', $line_style, array(), 8); + if ($double) { + $r2 = $r * 0.5; + $this->SetFillColorArray($colb); + $this->PieSector($x, $y, $r2, 90, 180, 'F'); + $this->PieSector($x, $y, $r2, 270, 360, 'F'); + $this->SetFillColorArray($cola); + $this->PieSector($x, $y, $r2, 0, 90, 'F'); + $this->PieSector($x, $y, $r2, 180, 270, 'F'); + $this->Circle($x, $y, $r2, 0, 360, 'C', $line_style, array(), 8); + } + } + + /** + * Paints a linear colour gradient. + * @param $x (float) abscissa of the top left corner of the rectangle. + * @param $y (float) ordinate of the top left corner of the rectangle. + * @param $w (float) width of the rectangle. + * @param $h (float) height of the rectangle. + * @param $col1 (array) first color (Grayscale, RGB or CMYK components). + * @param $col2 (array) second color (Grayscale, RGB or CMYK components). + * @param $coords (array) array of the form (x1, y1, x2, y2) which defines the gradient vector (see linear_gradient_coords.jpg). The default value is from left to right (x1=0, y1=0, x2=1, y2=0). + * @author Andreas Würmser, Nicola Asuni + * @since 3.1.000 (2008-06-09) + * @public + */ + public function LinearGradient($x, $y, $w, $h, $col1=array(), $col2=array(), $coords=array(0,0,1,0)) { + $this->Clip($x, $y, $w, $h); + $this->Gradient(2, $coords, array(array('color' => $col1, 'offset' => 0, 'exponent' => 1), array('color' => $col2, 'offset' => 1, 'exponent' => 1)), array(), false); + } + + /** + * Paints a radial colour gradient. + * @param $x (float) abscissa of the top left corner of the rectangle. + * @param $y (float) ordinate of the top left corner of the rectangle. + * @param $w (float) width of the rectangle. + * @param $h (float) height of the rectangle. + * @param $col1 (array) first color (Grayscale, RGB or CMYK components). + * @param $col2 (array) second color (Grayscale, RGB or CMYK components). + * @param $coords (array) array of the form (fx, fy, cx, cy, r) where (fx, fy) is the starting point of the gradient with color1, (cx, cy) is the center of the circle with color2, and r is the radius of the circle (see radial_gradient_coords.jpg). (fx, fy) should be inside the circle, otherwise some areas will not be defined. + * @author Andreas Würmser, Nicola Asuni + * @since 3.1.000 (2008-06-09) + * @public + */ + public function RadialGradient($x, $y, $w, $h, $col1=array(), $col2=array(), $coords=array(0.5,0.5,0.5,0.5,1)) { + $this->Clip($x, $y, $w, $h); + $this->Gradient(3, $coords, array(array('color' => $col1, 'offset' => 0, 'exponent' => 1), array('color' => $col2, 'offset' => 1, 'exponent' => 1)), array(), false); + } + + /** + * Paints a coons patch mesh. + * @param $x (float) abscissa of the top left corner of the rectangle. + * @param $y (float) ordinate of the top left corner of the rectangle. + * @param $w (float) width of the rectangle. + * @param $h (float) height of the rectangle. + * @param $col1 (array) first color (lower left corner) (RGB components). + * @param $col2 (array) second color (lower right corner) (RGB components). + * @param $col3 (array) third color (upper right corner) (RGB components). + * @param $col4 (array) fourth color (upper left corner) (RGB components). + * @param $coords (array)
        • for one patch mesh: array(float x1, float y1, .... float x12, float y12): 12 pairs of coordinates (normally from 0 to 1) which specify the Bezier control points that define the patch. First pair is the lower left edge point, next is its right control point (control point 2). Then the other points are defined in the order: control point 1, edge point, control point 2 going counter-clockwise around the patch. Last (x12, y12) is the first edge point's left control point (control point 1).
        • for two or more patch meshes: array[number of patches]: arrays with the following keys for each patch: f: where to put that patch (0 = first patch, 1, 2, 3 = right, top and left of precedent patch - I didn't figure this out completely - just try and error ;-) points: 12 pairs of coordinates of the Bezier control points as above for the first patch, 8 pairs of coordinates for the following patches, ignoring the coordinates already defined by the precedent patch (I also didn't figure out the order of these - also: try and see what's happening) colors: must be 4 colors for the first patch, 2 colors for the following patches
        + * @param $coords_min (array) minimum value used by the coordinates. If a coordinate's value is smaller than this it will be cut to coords_min. default: 0 + * @param $coords_max (array) maximum value used by the coordinates. If a coordinate's value is greater than this it will be cut to coords_max. default: 1 + * @param $antialias (boolean) A flag indicating whether to filter the shading function to prevent aliasing artifacts. + * @author Andreas Würmser, Nicola Asuni + * @since 3.1.000 (2008-06-09) + * @public + */ + public function CoonsPatchMesh($x, $y, $w, $h, $col1=array(), $col2=array(), $col3=array(), $col4=array(), $coords=array(0.00,0.0,0.33,0.00,0.67,0.00,1.00,0.00,1.00,0.33,1.00,0.67,1.00,1.00,0.67,1.00,0.33,1.00,0.00,1.00,0.00,0.67,0.00,0.33), $coords_min=0, $coords_max=1, $antialias=false) { + $this->Clip($x, $y, $w, $h); + $n = count($this->gradients) + 1; + $this->gradients[$n] = array(); + $this->gradients[$n]['type'] = 6; //coons patch mesh + $this->gradients[$n]['coords'] = array(); + $this->gradients[$n]['antialias'] = $antialias; + $this->gradients[$n]['colors'] = array(); + $this->gradients[$n]['transparency'] = false; + //check the coords array if it is the simple array or the multi patch array + if (!isset($coords[0]['f'])) { + //simple array -> convert to multi patch array + if (!isset($col1[1])) { + $col1[1] = $col1[2] = $col1[0]; + } + if (!isset($col2[1])) { + $col2[1] = $col2[2] = $col2[0]; + } + if (!isset($col3[1])) { + $col3[1] = $col3[2] = $col3[0]; + } + if (!isset($col4[1])) { + $col4[1] = $col4[2] = $col4[0]; + } + $patch_array[0]['f'] = 0; + $patch_array[0]['points'] = $coords; + $patch_array[0]['colors'][0]['r'] = $col1[0]; + $patch_array[0]['colors'][0]['g'] = $col1[1]; + $patch_array[0]['colors'][0]['b'] = $col1[2]; + $patch_array[0]['colors'][1]['r'] = $col2[0]; + $patch_array[0]['colors'][1]['g'] = $col2[1]; + $patch_array[0]['colors'][1]['b'] = $col2[2]; + $patch_array[0]['colors'][2]['r'] = $col3[0]; + $patch_array[0]['colors'][2]['g'] = $col3[1]; + $patch_array[0]['colors'][2]['b'] = $col3[2]; + $patch_array[0]['colors'][3]['r'] = $col4[0]; + $patch_array[0]['colors'][3]['g'] = $col4[1]; + $patch_array[0]['colors'][3]['b'] = $col4[2]; + } else { + //multi patch array + $patch_array = $coords; + } + $bpcd = 65535; //16 bits per coordinate + //build the data stream + $this->gradients[$n]['stream'] = ''; + $count_patch = count($patch_array); + for ($i=0; $i < $count_patch; ++$i) { + $this->gradients[$n]['stream'] .= chr($patch_array[$i]['f']); //start with the edge flag as 8 bit + $count_points = count($patch_array[$i]['points']); + for ($j=0; $j < $count_points; ++$j) { + //each point as 16 bit + $patch_array[$i]['points'][$j] = (($patch_array[$i]['points'][$j] - $coords_min) / ($coords_max - $coords_min)) * $bpcd; + if ($patch_array[$i]['points'][$j] < 0) { + $patch_array[$i]['points'][$j] = 0; + } + if ($patch_array[$i]['points'][$j] > $bpcd) { + $patch_array[$i]['points'][$j] = $bpcd; + } + $this->gradients[$n]['stream'] .= chr(floor($patch_array[$i]['points'][$j] / 256)); + $this->gradients[$n]['stream'] .= chr(floor($patch_array[$i]['points'][$j] % 256)); + } + $count_cols = count($patch_array[$i]['colors']); + for ($j=0; $j < $count_cols; ++$j) { + //each color component as 8 bit + $this->gradients[$n]['stream'] .= chr($patch_array[$i]['colors'][$j]['r']); + $this->gradients[$n]['stream'] .= chr($patch_array[$i]['colors'][$j]['g']); + $this->gradients[$n]['stream'] .= chr($patch_array[$i]['colors'][$j]['b']); + } + } + //paint the gradient + $this->_out('/Sh'.$n.' sh'); + //restore previous Graphic State + $this->_out('Q'); + } + + /** + * Set a rectangular clipping area. + * @param $x (float) abscissa of the top left corner of the rectangle (or top right corner for RTL mode). + * @param $y (float) ordinate of the top left corner of the rectangle. + * @param $w (float) width of the rectangle. + * @param $h (float) height of the rectangle. + * @author Andreas Würmser, Nicola Asuni + * @since 3.1.000 (2008-06-09) + * @protected + */ + protected function Clip($x, $y, $w, $h) { + if ($this->rtl) { + $x = $this->w - $x - $w; + } + //save current Graphic State + $s = 'q'; + //set clipping area + $s .= sprintf(' %.2F %.2F %.2F %.2F re W n', $x*$this->k, ($this->h-$y)*$this->k, $w*$this->k, -$h*$this->k); + //set up transformation matrix for gradient + $s .= sprintf(' %.3F 0 0 %.3F %.3F %.3F cm', $w*$this->k, $h*$this->k, $x*$this->k, ($this->h-($y+$h))*$this->k); + $this->_out($s); + } + + /** + * Output gradient. + * @param $type (int) type of gradient (1 Function-based shading; 2 Axial shading; 3 Radial shading; 4 Free-form Gouraud-shaded triangle mesh; 5 Lattice-form Gouraud-shaded triangle mesh; 6 Coons patch mesh; 7 Tensor-product patch mesh). (Not all types are currently supported) + * @param $coords (array) array of coordinates. + * @param $stops (array) array gradient color components: color = array of GRAY, RGB or CMYK color components; offset = (0 to 1) represents a location along the gradient vector; exponent = exponent of the exponential interpolation function (default = 1). + * @param $background (array) An array of colour components appropriate to the colour space, specifying a single background colour value. + * @param $antialias (boolean) A flag indicating whether to filter the shading function to prevent aliasing artifacts. + * @author Nicola Asuni + * @since 3.1.000 (2008-06-09) + * @public + */ + public function Gradient($type, $coords, $stops, $background=array(), $antialias=false) { + $n = count($this->gradients) + 1; + $this->gradients[$n] = array(); + $this->gradients[$n]['type'] = $type; + $this->gradients[$n]['coords'] = $coords; + $this->gradients[$n]['antialias'] = $antialias; + $this->gradients[$n]['colors'] = array(); + $this->gradients[$n]['transparency'] = false; + // color space + $numcolspace = count($stops[0]['color']); + $bcolor = array_values($background); + switch($numcolspace) { + case 4: { // CMYK + $this->gradients[$n]['colspace'] = 'DeviceCMYK'; + if (!empty($background)) { + $this->gradients[$n]['background'] = sprintf('%.3F %.3F %.3F %.3F', $bcolor[0]/100, $bcolor[1]/100, $bcolor[2]/100, $bcolor[3]/100); + } + break; + } + case 3: { // RGB + $this->gradients[$n]['colspace'] = 'DeviceRGB'; + if (!empty($background)) { + $this->gradients[$n]['background'] = sprintf('%.3F %.3F %.3F', $bcolor[0]/255, $bcolor[1]/255, $bcolor[2]/255); + } + break; + } + case 1: { // Gray scale + $this->gradients[$n]['colspace'] = 'DeviceGray'; + if (!empty($background)) { + $this->gradients[$n]['background'] = sprintf('%.3F', $bcolor[0]/255); + } + break; + } + } + $num_stops = count($stops); + $last_stop_id = $num_stops - 1; + foreach ($stops as $key => $stop) { + $this->gradients[$n]['colors'][$key] = array(); + // offset represents a location along the gradient vector + if (isset($stop['offset'])) { + $this->gradients[$n]['colors'][$key]['offset'] = $stop['offset']; + } else { + if ($key == 0) { + $this->gradients[$n]['colors'][$key]['offset'] = 0; + } elseif ($key == $last_stop_id) { + $this->gradients[$n]['colors'][$key]['offset'] = 1; + } else { + $offsetstep = (1 - $this->gradients[$n]['colors'][($key - 1)]['offset']) / ($num_stops - $key); + $this->gradients[$n]['colors'][$key]['offset'] = $this->gradients[$n]['colors'][($key - 1)]['offset'] + $offsetstep; + } + } + if (isset($stop['opacity'])) { + $this->gradients[$n]['colors'][$key]['opacity'] = $stop['opacity']; + if ($stop['opacity'] < 1) { + $this->gradients[$n]['transparency'] = true; + } + } else { + $this->gradients[$n]['colors'][$key]['opacity'] = 1; + } + // exponent for the exponential interpolation function + if (isset($stop['exponent'])) { + $this->gradients[$n]['colors'][$key]['exponent'] = $stop['exponent']; + } else { + $this->gradients[$n]['colors'][$key]['exponent'] = 1; + } + // set colors + $color = array_values($stop['color']); + switch($numcolspace) { + case 4: { // CMYK + $this->gradients[$n]['colors'][$key]['color'] = sprintf('%.3F %.3F %.3F %.3F', $color[0]/100, $color[1]/100, $color[2]/100, $color[3]/100); + break; + } + case 3: { // RGB + $this->gradients[$n]['colors'][$key]['color'] = sprintf('%.3F %.3F %.3F', $color[0]/255, $color[1]/255, $color[2]/255); + break; + } + case 1: { // Gray scale + $this->gradients[$n]['colors'][$key]['color'] = sprintf('%.3F', $color[0]/255); + break; + } + } + } + if ($this->gradients[$n]['transparency']) { + // paint luminosity gradient + $this->_out('/TGS'.$n.' gs'); + } + //paint the gradient + $this->_out('/Sh'.$n.' sh'); + //restore previous Graphic State + $this->_out('Q'); + } + + /** + * Output gradient shaders. + * @author Nicola Asuni + * @since 3.1.000 (2008-06-09) + * @protected + */ + function _putshaders() { + $idt = count($this->gradients); //index for transparency gradients + foreach ($this->gradients as $id => $grad) { + if (($grad['type'] == 2) OR ($grad['type'] == 3)) { + $fc = $this->_newobj(); + $out = '<<'; + $out .= ' /FunctionType 3'; + $out .= ' /Domain [0 1]'; + $functions = ''; + $bounds = ''; + $encode = ''; + $i = 1; + $num_cols = count($grad['colors']); + $lastcols = $num_cols - 1; + for ($i = 1; $i < $num_cols; ++$i) { + $functions .= ($fc + $i).' 0 R '; + if ($i < $lastcols) { + $bounds .= sprintf('%.3F ', $grad['colors'][$i]['offset']); + } + $encode .= '0 1 '; + } + $out .= ' /Functions ['.trim($functions).']'; + $out .= ' /Bounds ['.trim($bounds).']'; + $out .= ' /Encode ['.trim($encode).']'; + $out .= ' >>'; + $out .= "\n".'endobj'; + $this->_out($out); + for ($i = 1; $i < $num_cols; ++$i) { + $this->_newobj(); + $out = '<<'; + $out .= ' /FunctionType 2'; + $out .= ' /Domain [0 1]'; + $out .= ' /C0 ['.$grad['colors'][($i - 1)]['color'].']'; + $out .= ' /C1 ['.$grad['colors'][$i]['color'].']'; + $out .= ' /N '.$grad['colors'][$i]['exponent']; + $out .= ' >>'; + $out .= "\n".'endobj'; + $this->_out($out); + } + // set transparency fuctions + if ($grad['transparency']) { + $ft = $this->_newobj(); + $out = '<<'; + $out .= ' /FunctionType 3'; + $out .= ' /Domain [0 1]'; + $functions = ''; + $i = 1; + $num_cols = count($grad['colors']); + for ($i = 1; $i < $num_cols; ++$i) { + $functions .= ($ft + $i).' 0 R '; + } + $out .= ' /Functions ['.trim($functions).']'; + $out .= ' /Bounds ['.trim($bounds).']'; + $out .= ' /Encode ['.trim($encode).']'; + $out .= ' >>'; + $out .= "\n".'endobj'; + $this->_out($out); + for ($i = 1; $i < $num_cols; ++$i) { + $this->_newobj(); + $out = '<<'; + $out .= ' /FunctionType 2'; + $out .= ' /Domain [0 1]'; + $out .= ' /C0 ['.$grad['colors'][($i - 1)]['opacity'].']'; + $out .= ' /C1 ['.$grad['colors'][$i]['opacity'].']'; + $out .= ' /N '.$grad['colors'][$i]['exponent']; + $out .= ' >>'; + $out .= "\n".'endobj'; + $this->_out($out); + } + } + } + // set shading object + $this->_newobj(); + $out = '<< /ShadingType '.$grad['type']; + if (isset($grad['colspace'])) { + $out .= ' /ColorSpace /'.$grad['colspace']; + } else { + $out .= ' /ColorSpace /DeviceRGB'; + } + if (isset($grad['background']) AND !empty($grad['background'])) { + $out .= ' /Background ['.$grad['background'].']'; + } + if (isset($grad['antialias']) AND ($grad['antialias'] === true)) { + $out .= ' /AntiAlias true'; + } + if ($grad['type'] == 2) { + $out .= ' '.sprintf('/Coords [%.3F %.3F %.3F %.3F]', $grad['coords'][0], $grad['coords'][1], $grad['coords'][2], $grad['coords'][3]); + $out .= ' /Domain [0 1]'; + $out .= ' /Function '.$fc.' 0 R'; + $out .= ' /Extend [true true]'; + $out .= ' >>'; + } elseif ($grad['type'] == 3) { + //x0, y0, r0, x1, y1, r1 + //at this this time radius of inner circle is 0 + $out .= ' '.sprintf('/Coords [%.3F %.3F 0 %.3F %.3F %.3F]', $grad['coords'][0], $grad['coords'][1], $grad['coords'][2], $grad['coords'][3], $grad['coords'][4]); + $out .= ' /Domain [0 1]'; + $out .= ' /Function '.$fc.' 0 R'; + $out .= ' /Extend [true true]'; + $out .= ' >>'; + } elseif ($grad['type'] == 6) { + $out .= ' /BitsPerCoordinate 16'; + $out .= ' /BitsPerComponent 8'; + $out .= ' /Decode[0 1 0 1 0 1 0 1 0 1]'; + $out .= ' /BitsPerFlag 8'; + $stream = $this->_getrawstream($grad['stream']); + $out .= ' /Length '.strlen($stream); + $out .= ' >>'; + $out .= ' stream'."\n".$stream."\n".'endstream'; + } + $out .= "\n".'endobj'; + $this->_out($out); + if ($grad['transparency']) { + $shading_transparency = preg_replace('/\/ColorSpace \/[^\s]+/si', '/ColorSpace /DeviceGray', $out); + $shading_transparency = preg_replace('/\/Function [0-9]+ /si', '/Function '.$ft.' ', $shading_transparency); + } + $this->gradients[$id]['id'] = $this->n; + // set pattern object + $this->_newobj(); + $out = '<< /Type /Pattern /PatternType 2'; + $out .= ' /Shading '.$this->gradients[$id]['id'].' 0 R'; + $out .= ' >>'; + $out .= "\n".'endobj'; + $this->_out($out); + $this->gradients[$id]['pattern'] = $this->n; + // set shading and pattern for transparency mask + if ($grad['transparency']) { + // luminosity pattern + $idgs = $id + $idt; + $this->_newobj(); + $this->_out($shading_transparency); + $this->gradients[$idgs]['id'] = $this->n; + $this->_newobj(); + $out = '<< /Type /Pattern /PatternType 2'; + $out .= ' /Shading '.$this->gradients[$idgs]['id'].' 0 R'; + $out .= ' >>'; + $out .= "\n".'endobj'; + $this->_out($out); + $this->gradients[$idgs]['pattern'] = $this->n; + // luminosity XObject + $oid = $this->_newobj(); + $this->xobjects['LX'.$oid] = array('n' => $oid); + $filter = ''; + $stream = 'q /a0 gs /Pattern cs /p'.$idgs.' scn 0 0 '.$this->wPt.' '.$this->hPt.' re f Q'; + if ($this->compress) { + $filter = ' /Filter /FlateDecode'; + $stream = gzcompress($stream); + } + $stream = $this->_getrawstream($stream); + $out = '<< /Type /XObject /Subtype /Form /FormType 1'.$filter; + $out .= ' /Length '.strlen($stream); + $rect = sprintf('%.2F %.2F', $this->wPt, $this->hPt); + $out .= ' /BBox [0 0 '.$rect.']'; + $out .= ' /Group << /Type /Group /S /Transparency /CS /DeviceGray >>'; + $out .= ' /Resources <<'; + $out .= ' /ExtGState << /a0 << /ca 1 /CA 1 >> >>'; + $out .= ' /Pattern << /p'.$idgs.' '.$this->gradients[$idgs]['pattern'].' 0 R >>'; + $out .= ' >>'; + $out .= ' >> '; + $out .= ' stream'."\n".$stream."\n".'endstream'; + $out .= "\n".'endobj'; + $this->_out($out); + // SMask + $this->_newobj(); + $out = '<< /Type /Mask /S /Luminosity /G '.($this->n - 1).' 0 R >>'."\n".'endobj'; + $this->_out($out); + // ExtGState + $this->_newobj(); + $out = '<< /Type /ExtGState /SMask '.($this->n - 1).' 0 R /AIS false >>'."\n".'endobj'; + $this->_out($out); + $this->extgstates[] = array('n' => $this->n, 'name' => 'TGS'.$id); + } + } + } + + /** + * Draw the sector of a circle. + * It can be used for instance to render pie charts. + * @param $xc (float) abscissa of the center. + * @param $yc (float) ordinate of the center. + * @param $r (float) radius. + * @param $a (float) start angle (in degrees). + * @param $b (float) end angle (in degrees). + * @param $style (string) Style of rendering. See the getPathPaintOperator() function for more information. + * @param $cw: (float) indicates whether to go clockwise (default: true). + * @param $o: (float) origin of angles (0 for 3 o'clock, 90 for noon, 180 for 9 o'clock, 270 for 6 o'clock). Default: 90. + * @author Maxime Delorme, Nicola Asuni + * @since 3.1.000 (2008-06-09) + * @public + */ + public function PieSector($xc, $yc, $r, $a, $b, $style='FD', $cw=true, $o=90) { + $this->PieSectorXY($xc, $yc, $r, $r, $a, $b, $style, $cw, $o); + } + + /** + * Draw the sector of an ellipse. + * It can be used for instance to render pie charts. + * @param $xc (float) abscissa of the center. + * @param $yc (float) ordinate of the center. + * @param $rx (float) the x-axis radius. + * @param $ry (float) the y-axis radius. + * @param $a (float) start angle (in degrees). + * @param $b (float) end angle (in degrees). + * @param $style (string) Style of rendering. See the getPathPaintOperator() function for more information. + * @param $cw: (float) indicates whether to go clockwise. + * @param $o: (float) origin of angles (0 for 3 o'clock, 90 for noon, 180 for 9 o'clock, 270 for 6 o'clock). + * @param $nc (integer) Number of curves used to draw a 90 degrees portion of arc. + * @author Maxime Delorme, Nicola Asuni + * @since 3.1.000 (2008-06-09) + * @public + */ + public function PieSectorXY($xc, $yc, $rx, $ry, $a, $b, $style='FD', $cw=false, $o=0, $nc=2) { + if ($this->rtl) { + $xc = $this->w - $xc; + } + $op = $this->getPathPaintOperator($style); + if ($op == 'f') { + $line_style = array(); + } + if ($cw) { + $d = $b; + $b = 360 - $a + $o; + $a = 360 - $d + $o; + } else { + $b += $o; + $a += $o; + } + $this->_outellipticalarc($xc, $yc, $rx, $ry, 0, $a, $b, true, $nc); + $this->_out($op); + } + + /** + * Embed vector-based Adobe Illustrator (AI) or AI-compatible EPS files. + * NOTE: EPS is not yet fully implemented, use the setRasterizeVectorImages() method to enable/disable rasterization of vector images using ImageMagick library. + * Only vector drawing is supported, not text or bitmap. + * Although the script was successfully tested with various AI format versions, best results are probably achieved with files that were exported in the AI3 format (tested with Illustrator CS2, Freehand MX and Photoshop CS2). + * @param $file (string) Name of the file containing the image or a '@' character followed by the EPS/AI data string. + * @param $x (float) Abscissa of the upper-left corner. + * @param $y (float) Ordinate of the upper-left corner. + * @param $w (float) Width of the image in the page. If not specified or equal to zero, it is automatically calculated. + * @param $h (float) Height of the image in the page. If not specified or equal to zero, it is automatically calculated. + * @param $link (mixed) URL or identifier returned by AddLink(). + * @param $useBoundingBox (boolean) specifies whether to position the bounding box (true) or the complete canvas (false) at location (x,y). Default value is true. + * @param $align (string) Indicates the alignment of the pointer next to image insertion relative to image height. The value can be:
        • T: top-right for LTR or top-left for RTL
        • M: middle-right for LTR or middle-left for RTL
        • B: bottom-right for LTR or bottom-left for RTL
        • N: next line
        + * @param $palign (string) Allows to center or align the image on the current line. Possible values are:
        • L : left align
        • C : center
        • R : right align
        • '' : empty string : left for LTR or right for RTL
        + * @param $border (mixed) Indicates if borders must be drawn around the cell. The value can be a number:
        • 0: no border (default)
        • 1: frame
        or a string containing some or all of the following characters (in any order):
        • L: left
        • T: top
        • R: right
        • B: bottom
        or an array of line styles for each border group - for example: array('LTRB' => array('width' => 2, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0))) + * @param $fitonpage (boolean) if true the image is resized to not exceed page dimensions. + * @param $fixoutvals (boolean) if true remove values outside the bounding box. + * @author Valentin Schmidt, Nicola Asuni + * @since 3.1.000 (2008-06-09) + * @public + */ + public function ImageEps($file, $x='', $y='', $w=0, $h=0, $link='', $useBoundingBox=true, $align='', $palign='', $border=0, $fitonpage=false, $fixoutvals=false) { + if ($this->rasterize_vector_images AND ($w > 0) AND ($h > 0)) { + // convert EPS to raster image using GD or ImageMagick libraries + return $this->Image($file, $x, $y, $w, $h, 'EPS', $link, $align, true, 300, $palign, false, false, $border, false, false, $fitonpage); + } + if ($x === '') { + $x = $this->x; + } + if ($y === '') { + $y = $this->y; + } + // check page for no-write regions and adapt page margins if necessary + $this->checkPageRegions($h, $x, $y); + $k = $this->k; + if ($file{0} === '@') { // image from string + $data = substr($file, 1); + } else { // EPS/AI file + $data = file_get_contents($file); + } + if ($data === false) { + $this->Error('EPS file not found: '.$file); + } + $regs = array(); + // EPS/AI compatibility check (only checks files created by Adobe Illustrator!) + preg_match("/%%Creator:([^\r\n]+)/", $data, $regs); # find Creator + if (count($regs) > 1) { + $version_str = trim($regs[1]); # e.g. "Adobe Illustrator(R) 8.0" + if (strpos($version_str, 'Adobe Illustrator') !== false) { + $versexp = explode(' ', $version_str); + $version = (float)array_pop($versexp); + if ($version >= 9) { + $this->Error('This version of Adobe Illustrator file is not supported: '.$file); + } + } + } + // strip binary bytes in front of PS-header + $start = strpos($data, '%!PS-Adobe'); + if ($start > 0) { + $data = substr($data, $start); + } + // find BoundingBox params + preg_match("/%%BoundingBox:([^\r\n]+)/", $data, $regs); + if (count($regs) > 1) { + list($x1, $y1, $x2, $y2) = explode(' ', trim($regs[1])); + } else { + $this->Error('No BoundingBox found in EPS/AI file: '.$file); + } + $start = strpos($data, '%%EndSetup'); + if ($start === false) { + $start = strpos($data, '%%EndProlog'); + } + if ($start === false) { + $start = strpos($data, '%%BoundingBox'); + } + $data = substr($data, $start); + $end = strpos($data, '%%PageTrailer'); + if ($end===false) { + $end = strpos($data, 'showpage'); + } + if ($end) { + $data = substr($data, 0, $end); + } + // calculate image width and height on document + if (($w <= 0) AND ($h <= 0)) { + $w = ($x2 - $x1) / $k; + $h = ($y2 - $y1) / $k; + } elseif ($w <= 0) { + $w = ($x2-$x1) / $k * ($h / (($y2 - $y1) / $k)); + } elseif ($h <= 0) { + $h = ($y2 - $y1) / $k * ($w / (($x2 - $x1) / $k)); + } + // fit the image on available space + $this->fitBlock($w, $h, $x, $y, $fitonpage); + if ($this->rasterize_vector_images) { + // convert EPS to raster image using GD or ImageMagick libraries + return $this->Image($file, $x, $y, $w, $h, 'EPS', $link, $align, true, 300, $palign, false, false, $border, false, false, $fitonpage); + } + // set scaling factors + $scale_x = $w / (($x2 - $x1) / $k); + $scale_y = $h / (($y2 - $y1) / $k); + // set alignment + $this->img_rb_y = $y + $h; + // set alignment + if ($this->rtl) { + if ($palign == 'L') { + $ximg = $this->lMargin; + } elseif ($palign == 'C') { + $ximg = ($this->w + $this->lMargin - $this->rMargin - $w) / 2; + } elseif ($palign == 'R') { + $ximg = $this->w - $this->rMargin - $w; + } else { + $ximg = $x - $w; + } + $this->img_rb_x = $ximg; + } else { + if ($palign == 'L') { + $ximg = $this->lMargin; + } elseif ($palign == 'C') { + $ximg = ($this->w + $this->lMargin - $this->rMargin - $w) / 2; + } elseif ($palign == 'R') { + $ximg = $this->w - $this->rMargin - $w; + } else { + $ximg = $x; + } + $this->img_rb_x = $ximg + $w; + } + if ($useBoundingBox) { + $dx = $ximg * $k - $x1; + $dy = $y * $k - $y1; + } else { + $dx = $ximg * $k; + $dy = $y * $k; + } + // save the current graphic state + $this->_out('q'.$this->epsmarker); + // translate + $this->_out(sprintf('%.3F %.3F %.3F %.3F %.3F %.3F cm', 1, 0, 0, 1, $dx, $dy + ($this->hPt - (2 * $y * $k) - ($y2 - $y1)))); + // scale + if (isset($scale_x)) { + $this->_out(sprintf('%.3F %.3F %.3F %.3F %.3F %.3F cm', $scale_x, 0, 0, $scale_y, $x1 * (1 - $scale_x), $y2 * (1 - $scale_y))); + } + // handle pc/unix/mac line endings + $lines = preg_split('/[\r\n]+/si', $data, -1, PREG_SPLIT_NO_EMPTY); + $u=0; + $cnt = count($lines); + for ($i=0; $i < $cnt; ++$i) { + $line = $lines[$i]; + if (($line == '') OR ($line{0} == '%')) { + continue; + } + $len = strlen($line); + // check for spot color names + $color_name = ''; + if (strcasecmp('x', substr(trim($line), -1)) == 0) { + if (preg_match('/\([^\)]*\)/', $line, $matches) > 0) { + // extract spot color name + $color_name = $matches[0]; + // remove color name from string + $line = str_replace(' '.$color_name, '', $line); + // remove pharentesis from color name + $color_name = substr($color_name, 1, -1); + } + } + $chunks = explode(' ', $line); + $cmd = trim(array_pop($chunks)); + // RGB + if (($cmd == 'Xa') OR ($cmd == 'XA')) { + $b = array_pop($chunks); + $g = array_pop($chunks); + $r = array_pop($chunks); + $this->_out(''.$r.' '.$g.' '.$b.' '.($cmd=='Xa'?'rg':'RG')); //substr($line, 0, -2).'rg' -> in EPS (AI8): c m y k r g b rg! + continue; + } + $skip = false; + if ($fixoutvals) { + // check for values outside the bounding box + switch ($cmd) { + case 'm': + case 'l': + case 'L': { + // skip values outside bounding box + foreach ($chunks as $key => $val) { + if ((($key % 2) == 0) AND (($val < $x1) OR ($val > $x2))) { + $skip = true; + } elseif ((($key % 2) != 0) AND (($val < $y1) OR ($val > $y2))) { + $skip = true; + } + } + } + } + } + switch ($cmd) { + case 'm': + case 'l': + case 'v': + case 'y': + case 'c': + case 'k': + case 'K': + case 'g': + case 'G': + case 's': + case 'S': + case 'J': + case 'j': + case 'w': + case 'M': + case 'd': + case 'n': { + if ($skip) { + break; + } + $this->_out($line); + break; + } + case 'x': {// custom fill color + if (empty($color_name)) { + // CMYK color + list($col_c, $col_m, $col_y, $col_k) = $chunks; + $this->_out(''.$col_c.' '.$col_m.' '.$col_y.' '.$col_k.' k'); + } else { + // Spot Color (CMYK + tint) + list($col_c, $col_m, $col_y, $col_k, $col_t) = $chunks; + $this->AddSpotColor($color_name, ($col_c * 100), ($col_m * 100), ($col_y * 100), ($col_k * 100)); + $color_cmd = sprintf('/CS%d cs %.3F scn', $this->spot_colors[$color_name]['i'], (1 - $col_t)); + $this->_out($color_cmd); + } + break; + } + case 'X': { // custom stroke color + if (empty($color_name)) { + // CMYK color + list($col_c, $col_m, $col_y, $col_k) = $chunks; + $this->_out(''.$col_c.' '.$col_m.' '.$col_y.' '.$col_k.' K'); + } else { + // Spot Color (CMYK + tint) + list($col_c, $col_m, $col_y, $col_k, $col_t) = $chunks; + $this->AddSpotColor($color_name, ($col_c * 100), ($col_m * 100), ($col_y * 100), ($col_k * 100)); + $color_cmd = sprintf('/CS%d CS %.3F SCN', $this->spot_colors[$color_name]['i'], (1 - $col_t)); + $this->_out($color_cmd); + } + break; + } + case 'Y': + case 'N': + case 'V': + case 'L': + case 'C': { + if ($skip) { + break; + } + $line{$len-1} = strtolower($cmd); + $this->_out($line); + break; + } + case 'b': + case 'B': { + $this->_out($cmd . '*'); + break; + } + case 'f': + case 'F': { + if ($u > 0) { + $isU = false; + $max = min(($i + 5), $cnt); + for ($j = ($i + 1); $j < $max; ++$j) { + $isU = ($isU OR (($lines[$j] == 'U') OR ($lines[$j] == '*U'))); + } + if ($isU) { + $this->_out('f*'); + } + } else { + $this->_out('f*'); + } + break; + } + case '*u': { + ++$u; + break; + } + case '*U': { + --$u; + break; + } + } + } + // restore previous graphic state + $this->_out($this->epsmarker.'Q'); + if (!empty($border)) { + $bx = $this->x; + $by = $this->y; + $this->x = $ximg; + if ($this->rtl) { + $this->x += $w; + } + $this->y = $y; + $this->Cell($w, $h, '', $border, 0, '', 0, '', 0, true); + $this->x = $bx; + $this->y = $by; + } + if ($link) { + $this->Link($ximg, $y, $w, $h, $link, 0); + } + // set pointer to align the next text/objects + switch($align) { + case 'T':{ + $this->y = $y; + $this->x = $this->img_rb_x; + break; + } + case 'M':{ + $this->y = $y + round($h/2); + $this->x = $this->img_rb_x; + break; + } + case 'B':{ + $this->y = $this->img_rb_y; + $this->x = $this->img_rb_x; + break; + } + case 'N':{ + $this->SetY($this->img_rb_y); + break; + } + default:{ + break; + } + } + $this->endlinex = $this->img_rb_x; + } + + /** + * Set document barcode. + * @param $bc (string) barcode + * @public + */ + public function setBarcode($bc='') { + $this->barcode = $bc; + } + + /** + * Get current barcode. + * @return string + * @public + * @since 4.0.012 (2008-07-24) + */ + public function getBarcode() { + return $this->barcode; + } + + /** + * Print a Linear Barcode. + * @param $code (string) code to print + * @param $type (string) type of barcode (see barcodes.php for supported formats). + * @param $x (int) x position in user units (empty string = current x position) + * @param $y (int) y position in user units (empty string = current y position) + * @param $w (int) width in user units (empty string = remaining page width) + * @param $h (int) height in user units (empty string = remaining page height) + * @param $xres (float) width of the smallest bar in user units (empty string = default value = 0.4mm) + * @param $style (array) array of options:
          + *
        • boolean $style['border'] if true prints a border
        • + *
        • int $style['padding'] padding to leave around the barcode in user units (set to 'auto' for automatic padding)
        • + *
        • int $style['hpadding'] horizontal padding in user units (set to 'auto' for automatic padding)
        • + *
        • int $style['vpadding'] vertical padding in user units (set to 'auto' for automatic padding)
        • + *
        • array $style['fgcolor'] color array for bars and text
        • + *
        • mixed $style['bgcolor'] color array for background (set to false for transparent)
        • + *
        • boolean $style['text'] if true prints text below the barcode
        • + *
        • string $style['label'] override default label
        • + *
        • string $style['font'] font name for text
        • int $style['fontsize'] font size for text
        • + *
        • int $style['stretchtext']: 0 = disabled; 1 = horizontal scaling only if necessary; 2 = forced horizontal scaling; 3 = character spacing only if necessary; 4 = forced character spacing.
        • + *
        • string $style['position'] horizontal position of the containing barcode cell on the page: L = left margin; C = center; R = right margin.
        • + *
        • string $style['align'] horizontal position of the barcode on the containing rectangle: L = left; C = center; R = right.
        • + *
        • string $style['stretch'] if true stretch the barcode to best fit the available width, otherwise uses $xres resolution for a single bar.
        • + *
        • string $style['fitwidth'] if true reduce the width to fit the barcode width + padding. When this option is enabled the 'stretch' option is automatically disabled.
        • + *
        • string $style['cellfitalign'] this option works only when 'fitwidth' is true and 'position' is unset or empty. Set the horizontal position of the containing barcode cell inside the specified rectangle: L = left; C = center; R = right.
        + * @param $align (string) Indicates the alignment of the pointer next to barcode insertion relative to barcode height. The value can be:
        • T: top-right for LTR or top-left for RTL
        • M: middle-right for LTR or middle-left for RTL
        • B: bottom-right for LTR or bottom-left for RTL
        • N: next line
        + * @author Nicola Asuni + * @since 3.1.000 (2008-06-09) + * @public + */ + public function write1DBarcode($code, $type, $x='', $y='', $w='', $h='', $xres='', $style='', $align='') { + if ($this->empty_string(trim($code))) { + return; + } + require_once(dirname(__FILE__).'/barcodes.php'); + // save current graphic settings + $gvars = $this->getGraphicVars(); + // create new barcode object + $barcodeobj = new TCPDFBarcode($code, $type); + $arrcode = $barcodeobj->getBarcodeArray(); + if ($arrcode === false) { + $this->Error('Error in 1D barcode string'); + } + // set default values + if (!isset($style['position'])) { + $style['position'] = ''; + } elseif ($style['position'] == 'S') { + // keep this for backward compatibility + $style['position'] = ''; + $style['stretch'] = true; + } + if (!isset($style['fitwidth'])) { + if (!isset($style['stretch'])) { + $style['fitwidth'] = true; + } else { + $style['fitwidth'] = false; + } + } + if ($style['fitwidth']) { + // disable stretch + $style['stretch'] = false; + } + if (!isset($style['stretch'])) { + if (($w === '') OR ($w <= 0)) { + $style['stretch'] = false; + } else { + $style['stretch'] = true; + } + } + if (!isset($style['fgcolor'])) { + $style['fgcolor'] = array(0,0,0); // default black + } + if (!isset($style['bgcolor'])) { + $style['bgcolor'] = false; // default transparent + } + if (!isset($style['border'])) { + $style['border'] = false; + } + $fontsize = 0; + if (!isset($style['text'])) { + $style['text'] = false; + } + if ($style['text'] AND isset($style['font'])) { + if (isset($style['fontsize'])) { + $fontsize = $style['fontsize']; + } + $this->SetFont($style['font'], '', $fontsize); + } + if (!isset($style['stretchtext'])) { + $style['stretchtext'] = 4; + } + if ($x === '') { + $x = $this->x; + } + if ($y === '') { + $y = $this->y; + } + // check page for no-write regions and adapt page margins if necessary + $this->checkPageRegions($h, $x, $y); + if (($w === '') OR ($w <= 0)) { + if ($this->rtl) { + $w = $x - $this->lMargin; + } else { + $w = $this->w - $this->rMargin - $x; + } + } + // padding + if (!isset($style['padding'])) { + $padding = 0; + } elseif ($style['padding'] === 'auto') { + $padding = 10 * ($w / ($arrcode['maxw'] + 20)); + } else { + $padding = floatval($style['padding']); + } + // horizontal padding + if (!isset($style['hpadding'])) { + $hpadding = $padding; + } elseif ($style['hpadding'] === 'auto') { + $hpadding = 10 * ($w / ($arrcode['maxw'] + 20)); + } else { + $hpadding = floatval($style['hpadding']); + } + // vertical padding + if (!isset($style['vpadding'])) { + $vpadding = $padding; + } elseif ($style['vpadding'] === 'auto') { + $vpadding = ($hpadding / 2); + } else { + $vpadding = floatval($style['vpadding']); + } + // calculate xres (single bar width) + $max_xres = ($w - (2 * $hpadding)) / $arrcode['maxw']; + if ($style['stretch']) { + $xres = $max_xres; + } else { + if ($this->empty_string($xres)) { + $xres = (0.141 * $this->k); // default bar width = 0.4 mm + } + if ($xres > $max_xres) { + // correct xres to fit on $w + $xres = $max_xres; + } + if ((isset($style['padding']) AND ($style['padding'] === 'auto')) + OR (isset($style['hpadding']) AND ($style['hpadding'] === 'auto'))) { + $hpadding = 10 * $xres; + if (isset($style['vpadding']) AND ($style['vpadding'] === 'auto')) { + $vpadding = ($hpadding / 2); + } + } + } + if ($style['fitwidth']) { + $wold = $w; + $w = (($arrcode['maxw'] * $xres) + (2 * $hpadding)); + if (isset($style['cellfitalign'])) { + switch ($style['cellfitalign']) { + case 'L': { + if ($this->rtl) { + $x -= ($wold - $w); + } + break; + } + case 'R': { + if (!$this->rtl) { + $x += ($wold - $w); + } + break; + } + case 'C': { + if ($this->rtl) { + $x -= (($wold - $w) / 2); + } else { + $x += (($wold - $w) / 2); + } + break; + } + default : { + break; + } + } + } + } + $text_height = ($this->cell_height_ratio * $fontsize / $this->k); + // height + if (($h === '') OR ($h <= 0)) { + // set default height + $h = (($arrcode['maxw'] * $xres) / 3) + (2 * $vpadding) + $text_height; + } + $barh = $h - $text_height - (2 * $vpadding); + if ($barh <=0) { + // try to reduce font or padding to fit barcode on available height + if ($text_height > $h) { + $fontsize = (($h * $this->k) / (4 * $this->cell_height_ratio)); + $text_height = ($this->cell_height_ratio * $fontsize / $this->k); + $this->SetFont($style['font'], '', $fontsize); + } + if ($vpadding > 0) { + $vpadding = (($h - $text_height) / 4); + } + $barh = $h - $text_height - (2 * $vpadding); + } + // fit the barcode on available space + $this->fitBlock($w, $h, $x, $y, false); + // set alignment + $this->img_rb_y = $y + $h; + // set alignment + if ($this->rtl) { + if ($style['position'] == 'L') { + $xpos = $this->lMargin; + } elseif ($style['position'] == 'C') { + $xpos = ($this->w + $this->lMargin - $this->rMargin - $w) / 2; + } elseif ($style['position'] == 'R') { + $xpos = $this->w - $this->rMargin - $w; + } else { + $xpos = $x - $w; + } + $this->img_rb_x = $xpos; + } else { + if ($style['position'] == 'L') { + $xpos = $this->lMargin; + } elseif ($style['position'] == 'C') { + $xpos = ($this->w + $this->lMargin - $this->rMargin - $w) / 2; + } elseif ($style['position'] == 'R') { + $xpos = $this->w - $this->rMargin - $w; + } else { + $xpos = $x; + } + $this->img_rb_x = $xpos + $w; + } + $xpos_rect = $xpos; + if (!isset($style['align'])) { + $style['align'] = 'C'; + } + switch ($style['align']) { + case 'L': { + $xpos = $xpos_rect + $hpadding; + break; + } + case 'R': { + $xpos = $xpos_rect + ($w - ($arrcode['maxw'] * $xres)) - $hpadding; + break; + } + case 'C': + default : { + $xpos = $xpos_rect + (($w - ($arrcode['maxw'] * $xres)) / 2); + break; + } + } + $xpos_text = $xpos; + // barcode is always printed in LTR direction + $tempRTL = $this->rtl; + $this->rtl = false; + // print background color + if ($style['bgcolor']) { + $this->Rect($xpos_rect, $y, $w, $h, $style['border'] ? 'DF' : 'F', '', $style['bgcolor']); + } elseif ($style['border']) { + $this->Rect($xpos_rect, $y, $w, $h, 'D'); + } + // set foreground color + $this->SetDrawColorArray($style['fgcolor']); + $this->SetTextColorArray($style['fgcolor']); + // print bars + foreach ($arrcode['bcode'] as $k => $v) { + $bw = ($v['w'] * $xres); + if ($v['t']) { + // draw a vertical bar + $ypos = $y + $vpadding + ($v['p'] * $barh / $arrcode['maxh']); + $this->Rect($xpos, $ypos, $bw, ($v['h'] * $barh / $arrcode['maxh']), 'F', array(), $style['fgcolor']); + } + $xpos += $bw; + } + // print text + if ($style['text']) { + if (isset($style['label']) AND !$this->empty_string($style['label'])) { + $label = $style['label']; + } else { + $label = $code; + } + $txtwidth = ($arrcode['maxw'] * $xres); + if ($this->GetStringWidth($label) > $txtwidth) { + $style['stretchtext'] = 2; + } + // print text + $this->x = $xpos_text; + $this->y = $y + $vpadding + $barh; + $cellpadding = $this->cell_padding; + $this->SetCellPadding(0); + $this->Cell($txtwidth, '', $label, 0, 0, 'C', 0, '', $style['stretchtext'], false, 'T', 'T'); + $this->cell_padding = $cellpadding; + } + // restore original direction + $this->rtl = $tempRTL; + // restore previous settings + $this->setGraphicVars($gvars); + // set pointer to align the next text/objects + switch($align) { + case 'T':{ + $this->y = $y; + $this->x = $this->img_rb_x; + break; + } + case 'M':{ + $this->y = $y + round($h / 2); + $this->x = $this->img_rb_x; + break; + } + case 'B':{ + $this->y = $this->img_rb_y; + $this->x = $this->img_rb_x; + break; + } + case 'N':{ + $this->SetY($this->img_rb_y); + break; + } + default:{ + break; + } + } + $this->endlinex = $this->img_rb_x; + } + + /** + * This function is DEPRECATED, please use the new write1DBarcode() function. + * @param $x (int) x position in user units + * @param $y (int) y position in user units + * @param $w (int) width in user units + * @param $h (int) height position in user units + * @param $type (string) type of barcode + * @param $style (string) barcode style + * @param $font (string) font for text + * @param $xres (int) x resolution + * @param $code (string) code to print + * @deprecated deprecated since version 3.1.000 (2008-06-10) + * @public + * @see write1DBarcode() + */ + public function writeBarcode($x, $y, $w, $h, $type, $style, $font, $xres, $code) { + // convert old settings for the new write1DBarcode() function. + $xres = 1 / $xres; + $newstyle = array( + 'position' => '', + 'align' => '', + 'stretch' => false, + 'fitwidth' => false, + 'cellfitalign' => '', + 'border' => false, + 'padding' => 0, + 'fgcolor' => array(0,0,0), + 'bgcolor' => false, + 'text' => true, + 'font' => $font, + 'fontsize' => 8, + 'stretchtext' => 4 + ); + if ($style & 1) { + $newstyle['border'] = true; + } + if ($style & 2) { + $newstyle['bgcolor'] = false; + } + if ($style & 4) { + $newstyle['position'] = 'C'; + } elseif ($style & 8) { + $newstyle['position'] = 'L'; + } elseif ($style & 16) { + $newstyle['position'] = 'R'; + } + if ($style & 128) { + $newstyle['text'] = true; + } + if ($style & 256) { + $newstyle['stretchtext'] = 4; + } + $this->write1DBarcode($code, $type, $x, $y, $w, $h, $xres, $newstyle, ''); + } + + /** + * Print 2D Barcode. + * @param $code (string) code to print + * @param $type (string) type of barcode (see 2dbarcodes.php for supported formats). + * @param $x (int) x position in user units + * @param $y (int) y position in user units + * @param $w (int) width in user units + * @param $h (int) height in user units + * @param $style (array) array of options:
          + *
        • boolean $style['border'] if true prints a border around the barcode
        • + *
        • int $style['padding'] padding to leave around the barcode in barcode units (set to 'auto' for automatic padding)
        • + *
        • int $style['hpadding'] horizontal padding in barcode units (set to 'auto' for automatic padding)
        • + *
        • int $style['vpadding'] vertical padding in barcode units (set to 'auto' for automatic padding)
        • + *
        • int $style['module_width'] width of a single module in points
        • + *
        • int $style['module_height'] height of a single module in points
        • + *
        • array $style['fgcolor'] color array for bars and text
        • + *
        • mixed $style['bgcolor'] color array for background or false for transparent
        • + *
        • string $style['position'] barcode position on the page: L = left margin; C = center; R = right margin; S = stretch
        • $style['module_width'] width of a single module in points
        • + *
        • $style['module_height'] height of a single module in points
        + * @param $align (string) Indicates the alignment of the pointer next to barcode insertion relative to barcode height. The value can be:
        • T: top-right for LTR or top-left for RTL
        • M: middle-right for LTR or middle-left for RTL
        • B: bottom-right for LTR or bottom-left for RTL
        • N: next line
        + * @param $distort (boolean) if true distort the barcode to fit width and height, otherwise preserve aspect ratio + * @author Nicola Asuni + * @since 4.5.037 (2009-04-07) + * @public + */ + public function write2DBarcode($code, $type, $x='', $y='', $w='', $h='', $style='', $align='', $distort=false) { + if ($this->empty_string(trim($code))) { + return; + } + require_once(dirname(__FILE__).'/2dbarcodes.php'); + // save current graphic settings + $gvars = $this->getGraphicVars(); + // create new barcode object + $barcodeobj = new TCPDF2DBarcode($code, $type); + $arrcode = $barcodeobj->getBarcodeArray(); + if (($arrcode === false) OR empty($arrcode)) { + $this->Error('Error in 2D barcode string'); + } + // set default values + if (!isset($style['position'])) { + $style['position'] = ''; + } + if (!isset($style['fgcolor'])) { + $style['fgcolor'] = array(0,0,0); // default black + } + if (!isset($style['bgcolor'])) { + $style['bgcolor'] = false; // default transparent + } + if (!isset($style['border'])) { + $style['border'] = false; + } + // padding + if (!isset($style['padding'])) { + $style['padding'] = 0; + } elseif ($style['padding'] === 'auto') { + $style['padding'] = 4; + } + if (!isset($style['hpadding'])) { + $style['hpadding'] = $style['padding']; + } elseif ($style['hpadding'] === 'auto') { + $style['hpadding'] = 4; + } + if (!isset($style['vpadding'])) { + $style['vpadding'] = $style['padding']; + } elseif ($style['vpadding'] === 'auto') { + $style['vpadding'] = 4; + } + // cell (module) dimension + if (!isset($style['module_width'])) { + $style['module_width'] = 1; // width of a single module in points + } + if (!isset($style['module_height'])) { + $style['module_height'] = 1; // height of a single module in points + } + if ($x === '') { + $x = $this->x; + } + if ($y === '') { + $y = $this->y; + } + // check page for no-write regions and adapt page margins if necessary + $this->checkPageRegions($h, $x, $y); + // number of barcode columns and rows + $rows = $arrcode['num_rows']; + $cols = $arrcode['num_cols']; + // module width and height + $mw = $style['module_width']; + $mh = $style['module_height']; + // get max dimensions + if ($this->rtl) { + $maxw = $x - $this->lMargin; + } else { + $maxw = $this->w - $this->rMargin - $x; + } + $maxh = ($this->h - $this->tMargin - $this->bMargin); + $ratioHW = ($rows * $mh) / ($cols * $mw); + $ratioWH = ($cols * $mw) / ($rows * $mh); + if (!$distort) { + if (($maxw * $ratioHW) > $maxh) { + $maxw = $maxh * $ratioWH; + } + if (($maxh * $ratioWH) > $maxw) { + $maxh = $maxw * $ratioHW; + } + } + // set maximum dimesions + if ($w > $maxw) { + $w = $maxw; + } + if ($h > $maxh) { + $h = $maxh; + } + $hpad = (2 * $style['hpadding']); + $vpad = (2 * $style['vpadding']); + // set dimensions + if ((($w === '') OR ($w <= 0)) AND (($h === '') OR ($h <= 0))) { + $w = ($cols + $hpad) * ($mw / $this->k); + $h = ($rows + $vpad) * ($mh / $this->k); + } elseif (($w === '') OR ($w <= 0)) { + $w = $h * $ratioWH; + } elseif (($h === '') OR ($h <= 0)) { + $h = $w * $ratioHW; + } + // barcode size (excluding padding) + $bw = ($w * $cols) / ($cols + $hpad); + $bh = ($h * $rows) / ($rows + $vpad); + // dimension of single barcode cell unit + $cw = $bw / $cols; + $ch = $bh / $rows; + if (!$distort) { + if (($cw / $ch) > ($mw / $mh)) { + // correct horizontal distortion + $cw = $ch * $mw / $mh; + $bw = $cw * $cols; + $style['hpadding'] = ($w - $bw) / (2 * $cw); + } else { + // correct vertical distortion + $ch = $cw * $mh / $mw; + $bh = $ch * $rows; + $style['vpadding'] = ($h - $bh) / (2 * $ch); + } + } + // fit the barcode on available space + $this->fitBlock($w, $h, $x, $y, false); + // set alignment + $this->img_rb_y = $y + $h; + // set alignment + if ($this->rtl) { + if ($style['position'] == 'L') { + $xpos = $this->lMargin; + } elseif ($style['position'] == 'C') { + $xpos = ($this->w + $this->lMargin - $this->rMargin - $w) / 2; + } elseif ($style['position'] == 'R') { + $xpos = $this->w - $this->rMargin - $w; + } else { + $xpos = $x - $w; + } + $this->img_rb_x = $xpos; + } else { + if ($style['position'] == 'L') { + $xpos = $this->lMargin; + } elseif ($style['position'] == 'C') { + $xpos = ($this->w + $this->lMargin - $this->rMargin - $w) / 2; + } elseif ($style['position'] == 'R') { + $xpos = $this->w - $this->rMargin - $w; + } else { + $xpos = $x; + } + $this->img_rb_x = $xpos + $w; + } + $xstart = $xpos + ($style['hpadding'] * $cw); + $ystart = $y + ($style['vpadding'] * $ch); + // barcode is always printed in LTR direction + $tempRTL = $this->rtl; + $this->rtl = false; + // print background color + if ($style['bgcolor']) { + $this->Rect($xpos, $y, $w, $h, $style['border'] ? 'DF' : 'F', '', $style['bgcolor']); + } elseif ($style['border']) { + $this->Rect($xpos, $y, $w, $h, 'D'); + } + // set foreground color + $this->SetDrawColorArray($style['fgcolor']); + // print barcode cells + // for each row + for ($r = 0; $r < $rows; ++$r) { + $xr = $xstart; + // for each column + for ($c = 0; $c < $cols; ++$c) { + if ($arrcode['bcode'][$r][$c] == 1) { + // draw a single barcode cell + $this->Rect($xr, $ystart, $cw, $ch, 'F', array(), $style['fgcolor']); + } + $xr += $cw; + } + $ystart += $ch; + } + // restore original direction + $this->rtl = $tempRTL; + // restore previous settings + $this->setGraphicVars($gvars); + // set pointer to align the next text/objects + switch($align) { + case 'T':{ + $this->y = $y; + $this->x = $this->img_rb_x; + break; + } + case 'M':{ + $this->y = $y + round($h/2); + $this->x = $this->img_rb_x; + break; + } + case 'B':{ + $this->y = $this->img_rb_y; + $this->x = $this->img_rb_x; + break; + } + case 'N':{ + $this->SetY($this->img_rb_y); + break; + } + default:{ + break; + } + } + $this->endlinex = $this->img_rb_x; + } + + /** + * Returns an array containing current margins: + *
          +
        • $ret['left'] = left margin
        • +
        • $ret['right'] = right margin
        • +
        • $ret['top'] = top margin
        • +
        • $ret['bottom'] = bottom margin
        • +
        • $ret['header'] = header margin
        • +
        • $ret['footer'] = footer margin
        • +
        • $ret['cell'] = cell padding array
        • +
        • $ret['padding_left'] = cell left padding
        • +
        • $ret['padding_top'] = cell top padding
        • +
        • $ret['padding_right'] = cell right padding
        • +
        • $ret['padding_bottom'] = cell bottom padding
        • + *
        + * @return array containing all margins measures + * @public + * @since 3.2.000 (2008-06-23) + */ + public function getMargins() { + $ret = array( + 'left' => $this->lMargin, + 'right' => $this->rMargin, + 'top' => $this->tMargin, + 'bottom' => $this->bMargin, + 'header' => $this->header_margin, + 'footer' => $this->footer_margin, + 'cell' => $this->cell_padding, + 'padding_left' => $this->cell_padding['L'], + 'padding_top' => $this->cell_padding['T'], + 'padding_right' => $this->cell_padding['R'], + 'padding_bottom' => $this->cell_padding['B'] + ); + return $ret; + } + + /** + * Returns an array containing original margins: + *
          +
        • $ret['left'] = left margin
        • +
        • $ret['right'] = right margin
        • + *
        + * @return array containing all margins measures + * @public + * @since 4.0.012 (2008-07-24) + */ + public function getOriginalMargins() { + $ret = array( + 'left' => $this->original_lMargin, + 'right' => $this->original_rMargin + ); + return $ret; + } + + /** + * Returns the current font size. + * @return current font size + * @public + * @since 3.2.000 (2008-06-23) + */ + public function getFontSize() { + return $this->FontSize; + } + + /** + * Returns the current font size in points unit. + * @return current font size in points unit + * @public + * @since 3.2.000 (2008-06-23) + */ + public function getFontSizePt() { + return $this->FontSizePt; + } + + /** + * Returns the current font family name. + * @return string current font family name + * @public + * @since 4.3.008 (2008-12-05) + */ + public function getFontFamily() { + return $this->FontFamily; + } + + /** + * Returns the current font style. + * @return string current font style + * @public + * @since 4.3.008 (2008-12-05) + */ + public function getFontStyle() { + return $this->FontStyle; + } + + /** + * Cleanup HTML code (requires HTML Tidy library). + * @param $html (string) htmlcode to fix + * @param $default_css (string) CSS commands to add + * @param $tagvs (array) parameters for setHtmlVSpace method + * @param $tidy_options (array) options for tidy_parse_string function + * @return string XHTML code cleaned up + * @author Nicola Asuni + * @public + * @since 5.9.017 (2010-11-16) + * @see setHtmlVSpace() + */ + public function fixHTMLCode($html, $default_css='', $tagvs='', $tidy_options='') { + // configure parameters for HTML Tidy + if ($tidy_options === '') { + $tidy_options = array ( + 'clean' => 1, + 'drop-empty-paras' => 0, + 'drop-proprietary-attributes' => 1, + 'fix-backslash' => 1, + 'hide-comments' => 1, + 'join-styles' => 1, + 'lower-literals' => 1, + 'merge-divs' => 1, + 'merge-spans' => 1, + 'output-xhtml' => 1, + 'word-2000' => 1, + 'wrap' => 0, + 'output-bom' => 0, + //'char-encoding' => 'utf8', + //'input-encoding' => 'utf8', + //'output-encoding' => 'utf8' + ); + } + // clean up the HTML code + $tidy = tidy_parse_string($html, $tidy_options); + // fix the HTML + $tidy->cleanRepair(); + // get the CSS part + $tidy_head = tidy_get_head($tidy); + $css = $tidy_head->value; + $css = preg_replace('/]+)>/ims', ''; + // get the body part + $tidy_body = tidy_get_body($tidy); + $html = $tidy_body->value; + // fix some self-closing tags + $html = str_replace('
        ', '
        ', $html); + // remove some empty tag blocks + $html = preg_replace('/]*)><\/div>/', '', $html); + $html = preg_replace('/]*)><\/p>/', '', $html); + if ($tagvs !== '') { + // set vertical space for some XHTML tags + $this->setHtmlVSpace($tagvs); + } + // return the cleaned XHTML code + CSS + return $css.$html; + } + + /** + * Extracts the CSS properties from a CSS string. + * @param $cssdata (string) string containing CSS definitions. + * @return An array where the keys are the CSS selectors and the values are the CSS properties. + * @author Nicola Asuni + * @since 5.1.000 (2010-05-25) + * @protected + */ + protected function extractCSSproperties($cssdata) { + if (empty($cssdata)) { + return array(); + } + // remove comments + $cssdata = preg_replace('/\/\*[^\*]*\*\//', '', $cssdata); + // remove newlines and multiple spaces + $cssdata = preg_replace('/[\s]+/', ' ', $cssdata); + // remove some spaces + $cssdata = preg_replace('/[\s]*([;:\{\}]{1})[\s]*/', '\\1', $cssdata); + // remove empty blocks + $cssdata = preg_replace('/([^\}\{]+)\{\}/', '', $cssdata); + // replace media type parenthesis + $cssdata = preg_replace('/@media[\s]+([^\{]*)\{/i', '@media \\1§', $cssdata); + $cssdata = preg_replace('/\}\}/si', '}§', $cssdata); + // trim string + $cssdata = trim($cssdata); + // find media blocks (all, braille, embossed, handheld, print, projection, screen, speech, tty, tv) + $cssblocks = array(); + $matches = array(); + if (preg_match_all('/@media[\s]+([^\§]*)§([^§]*)§/i', $cssdata, $matches) > 0) { + foreach ($matches[1] as $key => $type) { + $cssblocks[$type] = $matches[2][$key]; + } + // remove media blocks + $cssdata = preg_replace('/@media[\s]+([^\§]*)§([^§]*)§/i', '', $cssdata); + } + // keep 'all' and 'print' media, other media types are discarded + if (isset($cssblocks['all']) AND !empty($cssblocks['all'])) { + $cssdata .= $cssblocks['all']; + } + if (isset($cssblocks['print']) AND !empty($cssblocks['print'])) { + $cssdata .= $cssblocks['print']; + } + // reset css blocks array + $cssblocks = array(); + $matches = array(); + // explode css data string into array + if (substr($cssdata, -1) == '}') { + // remove last parethesis + $cssdata = substr($cssdata, 0, -1); + } + $matches = explode('}', $cssdata); + foreach ($matches as $key => $block) { + // index 0 contains the CSS selector, index 1 contains CSS properties + $cssblocks[$key] = explode('{', $block); + if (!isset($cssblocks[$key][1])) { + // remove empty definitions + unset($cssblocks[$key]); + } + } + // split groups of selectors (comma-separated list of selectors) + foreach ($cssblocks as $key => $block) { + if (strpos($block[0], ',') > 0) { + $selectors = explode(',', $block[0]); + foreach ($selectors as $sel) { + $cssblocks[] = array(0 => trim($sel), 1 => $block[1]); + } + unset($cssblocks[$key]); + } + } + // covert array to selector => properties + $cssdata = array(); + foreach ($cssblocks as $block) { + $selector = $block[0]; + // calculate selector's specificity + $matches = array(); + $a = 0; // the declaration is not from is a 'style' attribute + $b = intval(preg_match_all('/[\#]/', $selector, $matches)); // number of ID attributes + $c = intval(preg_match_all('/[\[\.]/', $selector, $matches)); // number of other attributes + $c += intval(preg_match_all('/[\:]link|visited|hover|active|focus|target|lang|enabled|disabled|checked|indeterminate|root|nth|first|last|only|empty|contains|not/i', $selector, $matches)); // number of pseudo-classes + $d = intval(preg_match_all('/[\>\+\~\s]{1}[a-zA-Z0-9\*]+/', ' '.$selector, $matches)); // number of element names + $d += intval(preg_match_all('/[\:][\:]/', $selector, $matches)); // number of pseudo-elements + $specificity = $a.$b.$c.$d; + // add specificity to the beginning of the selector + $cssdata[$specificity.' '.$selector] = $block[1]; + } + // sort selectors alphabetically to account for specificity + ksort($cssdata, SORT_STRING); + // return array + return $cssdata; + } + + /** + * Returns true if the CSS selector is valid for the selected HTML tag + * @param $dom (array) array of HTML tags and properties + * @param $key (int) key of the current HTML tag + * @param $selector (string) CSS selector string + * @return true if the selector is valid, false otherwise + * @protected + * @since 5.1.000 (2010-05-25) + */ + protected function isValidCSSSelectorForTag($dom, $key, $selector) { + $valid = false; // value to be returned + $tag = $dom[$key]['value']; + $class = array(); + if (isset($dom[$key]['attribute']['class']) AND !empty($dom[$key]['attribute']['class'])) { + $class = explode(' ', strtolower($dom[$key]['attribute']['class'])); + } + $id = ''; + if (isset($dom[$key]['attribute']['id']) AND !empty($dom[$key]['attribute']['id'])) { + $id = strtolower($dom[$key]['attribute']['id']); + } + $selector = preg_replace('/([\>\+\~\s]{1})([\.]{1})([^\>\+\~\s]*)/si', '\\1*.\\3', $selector); + $matches = array(); + if (preg_match_all('/([\>\+\~\s]{1})([a-zA-Z0-9\*]+)([^\>\+\~\s]*)/si', $selector, $matches, PREG_PATTERN_ORDER | PREG_OFFSET_CAPTURE) > 0) { + $parentop = array_pop($matches[1]); + $operator = $parentop[0]; + $offset = $parentop[1]; + $lasttag = array_pop($matches[2]); + $lasttag = strtolower(trim($lasttag[0])); + if (($lasttag == '*') OR ($lasttag == $tag)) { + // the last element on selector is our tag or 'any tag' + $attrib = array_pop($matches[3]); + $attrib = strtolower(trim($attrib[0])); + if (!empty($attrib)) { + // check if matches class, id, attribute, pseudo-class or pseudo-element + switch ($attrib{0}) { + case '.': { // class + if (in_array(substr($attrib, 1), $class)) { + $valid = true; + } + break; + } + case '#': { // ID + if (substr($attrib, 1) == $id) { + $valid = true; + } + break; + } + case '[': { // attribute + $attrmatch = array(); + if (preg_match('/\[([a-zA-Z0-9]*)[\s]*([\~\^\$\*\|\=]*)[\s]*["]?([^"\]]*)["]?\]/i', $attrib, $attrmatch) > 0) { + $att = strtolower($attrmatch[1]); + $val = $attrmatch[3]; + if (isset($dom[$key]['attribute'][$att])) { + switch ($attrmatch[2]) { + case '=': { + if ($dom[$key]['attribute'][$att] == $val) { + $valid = true; + } + break; + } + case '~=': { + if (in_array($val, explode(' ', $dom[$key]['attribute'][$att]))) { + $valid = true; + } + break; + } + case '^=': { + if ($val == substr($dom[$key]['attribute'][$att], 0, strlen($val))) { + $valid = true; + } + break; + } + case '$=': { + if ($val == substr($dom[$key]['attribute'][$att], -strlen($val))) { + $valid = true; + } + break; + } + case '*=': { + if (strpos($dom[$key]['attribute'][$att], $val) !== false) { + $valid = true; + } + break; + } + case '|=': { + if ($dom[$key]['attribute'][$att] == $val) { + $valid = true; + } elseif (preg_match('/'.$val.'[\-]{1}/i', $dom[$key]['attribute'][$att]) > 0) { + $valid = true; + } + break; + } + default: { + $valid = true; + } + } + } + } + break; + } + case ':': { // pseudo-class or pseudo-element + if ($attrib{1} == ':') { // pseudo-element + // pseudo-elements are not supported! + // (::first-line, ::first-letter, ::before, ::after) + } else { // pseudo-class + // pseudo-classes are not supported! + // (:root, :nth-child(n), :nth-last-child(n), :nth-of-type(n), :nth-last-of-type(n), :first-child, :last-child, :first-of-type, :last-of-type, :only-child, :only-of-type, :empty, :link, :visited, :active, :hover, :focus, :target, :lang(fr), :enabled, :disabled, :checked) + } + break; + } + } // end of switch + } else { + $valid = true; + } + if ($valid AND ($offset > 0)) { + $valid = false; + // check remaining selector part + $selector = substr($selector, 0, $offset); + switch ($operator) { + case ' ': { // descendant of an element + while ($dom[$key]['parent'] > 0) { + if ($this->isValidCSSSelectorForTag($dom, $dom[$key]['parent'], $selector)) { + $valid = true; + break; + } else { + $key = $dom[$key]['parent']; + } + } + break; + } + case '>': { // child of an element + $valid = $this->isValidCSSSelectorForTag($dom, $dom[$key]['parent'], $selector); + break; + } + case '+': { // immediately preceded by an element + for ($i = ($key - 1); $i > $dom[$key]['parent']; --$i) { + if ($dom[$i]['tag'] AND $dom[$i]['opening']) { + $valid = $this->isValidCSSSelectorForTag($dom, $i, $selector); + break; + } + } + break; + } + case '~': { // preceded by an element + for ($i = ($key - 1); $i > $dom[$key]['parent']; --$i) { + if ($dom[$i]['tag'] AND $dom[$i]['opening']) { + if ($this->isValidCSSSelectorForTag($dom, $i, $selector)) { + break; + } + } + } + break; + } + } + } + } + } + return $valid; + } + + /** + * Returns the styles that apply for the selected HTML tag. + * @param $dom (array) array of HTML tags and properties + * @param $key (int) key of the current HTML tag + * @param $css (array) array of CSS properties + * @return string containing CSS properties + * @protected + * @since 5.1.000 (2010-05-25) + */ + protected function getTagStyleFromCSS($dom, $key, $css) { + $tagstyle = ''; // style to be returned + // get all styles that apply + foreach($css as $selector => $style) { + // remove specificity + $selector = substr($selector, strpos($selector, ' ')); + // check if this selector apply to current tag + if ($this->isValidCSSSelectorForTag($dom, $key, $selector)) { + // apply style + $tagstyle .= ';'.$style; + } + } + if (isset($dom[$key]['attribute']['style'])) { + // attach inline style (latest properties have high priority) + $tagstyle .= ';'.$dom[$key]['attribute']['style']; + } + // remove multiple semicolons + $tagstyle = preg_replace('/[;]+/', ';', $tagstyle); + return $tagstyle; + } + + /** + * Returns the border width from CSS property + * @param $width (string) border width + * @return int with in user units + * @protected + * @since 5.7.000 (2010-08-02) + */ + protected function getCSSBorderWidth($width) { + if ($width == 'thin') { + $width = (2 / $this->k); + } elseif ($width == 'medium') { + $width = (4 / $this->k); + } elseif ($width == 'thick') { + $width = (6 / $this->k); + } else { + $width = $this->getHTMLUnitToUnits($width, 1, 'px', false); + } + return $width; + } + + /** + * Returns the border dash style from CSS property + * @param $style (string) border style to convert + * @return int sash style (return -1 in case of none or hidden border) + * @protected + * @since 5.7.000 (2010-08-02) + */ + protected function getCSSBorderDashStyle($style) { + switch (strtolower($style)) { + case 'none': + case 'hidden': { + $dash = -1; + break; + } + case 'dotted': { + $dash = 1; + break; + } + case 'dashed': { + $dash = 3; + break; + } + case 'double': + case 'groove': + case 'ridge': + case 'inset': + case 'outset': + case 'solid': + default: { + $dash = 0; + break; + } + } + return $dash; + } + + /** + * Returns the border style array from CSS border properties + * @param $cssborder (string) border properties + * @return array containing border properties + * @protected + * @since 5.7.000 (2010-08-02) + */ + protected function getCSSBorderStyle($cssborder) { + $bprop = preg_split('/[\s]+/', trim($cssborder)); + $border = array(); // value to be returned + switch (count($bprop)) { + case 3: { + $width = $bprop[0]; + $style = $bprop[1]; + $color = $bprop[2]; + break; + } + case 2: { + $width = 'medium'; + $style = $bprop[0]; + $color = $bprop[1]; + break; + } + case 1: { + $width = 'medium'; + $style = $bprop[0]; + $color = 'black'; + break; + } + default: { + $width = 'medium'; + $style = 'solid'; + $color = 'black'; + break; + } + } + if ($style == 'none') { + return array(); + } + $border['cap'] = 'square'; + $border['join'] = 'miter'; + $border['dash'] = $this->getCSSBorderDashStyle($style); + if ($border['dash'] < 0) { + return array(); + } + $border['width'] = $this->getCSSBorderWidth($width); + $border['color'] = $this->convertHTMLColorToDec($color); + return $border; + } + + /** + * Get the internal Cell padding from CSS attribute. + * @param $csspadding (string) padding properties + * @param $width (float) width of the containing element + * @return array of cell paddings + * @public + * @since 5.9.000 (2010-10-04) + */ + public function getCSSPadding($csspadding, $width=0) { + $padding = preg_split('/[\s]+/', trim($csspadding)); + $cell_padding = array(); // value to be returned + switch (count($padding)) { + case 4: { + $cell_padding['T'] = $padding[0]; + $cell_padding['R'] = $padding[1]; + $cell_padding['B'] = $padding[2]; + $cell_padding['L'] = $padding[3]; + break; + } + case 3: { + $cell_padding['T'] = $padding[0]; + $cell_padding['R'] = $padding[1]; + $cell_padding['B'] = $padding[2]; + $cell_padding['L'] = $padding[1]; + break; + } + case 2: { + $cell_padding['T'] = $padding[0]; + $cell_padding['R'] = $padding[1]; + $cell_padding['B'] = $padding[0]; + $cell_padding['L'] = $padding[1]; + break; + } + case 1: { + $cell_padding['T'] = $padding[0]; + $cell_padding['R'] = $padding[0]; + $cell_padding['B'] = $padding[0]; + $cell_padding['L'] = $padding[0]; + break; + } + default: { + return $this->cell_padding; + } + } + if ($width == 0) { + $width = $this->w - $this->lMargin - $this->rMargin; + } + $cell_padding['T'] = $this->getHTMLUnitToUnits($cell_padding['T'], $width, 'px', false); + $cell_padding['R'] = $this->getHTMLUnitToUnits($cell_padding['R'], $width, 'px', false); + $cell_padding['B'] = $this->getHTMLUnitToUnits($cell_padding['B'], $width, 'px', false); + $cell_padding['L'] = $this->getHTMLUnitToUnits($cell_padding['L'], $width, 'px', false); + return $cell_padding; + } + + /** + * Get the internal Cell margin from CSS attribute. + * @param $cssmargin (string) margin properties + * @param $width (float) width of the containing element + * @return array of cell margins + * @public + * @since 5.9.000 (2010-10-04) + */ + public function getCSSMargin($cssmargin, $width=0) { + $margin = preg_split('/[\s]+/', trim($cssmargin)); + $cell_margin = array(); // value to be returned + switch (count($margin)) { + case 4: { + $cell_margin['T'] = $margin[0]; + $cell_margin['R'] = $margin[1]; + $cell_margin['B'] = $margin[2]; + $cell_margin['L'] = $margin[3]; + break; + } + case 3: { + $cell_margin['T'] = $margin[0]; + $cell_margin['R'] = $margin[1]; + $cell_margin['B'] = $margin[2]; + $cell_margin['L'] = $margin[1]; + break; + } + case 2: { + $cell_margin['T'] = $margin[0]; + $cell_margin['R'] = $margin[1]; + $cell_margin['B'] = $margin[0]; + $cell_margin['L'] = $margin[1]; + break; + } + case 1: { + $cell_margin['T'] = $margin[0]; + $cell_margin['R'] = $margin[0]; + $cell_margin['B'] = $margin[0]; + $cell_margin['L'] = $margin[0]; + break; + } + default: { + return $this->cell_margin; + } + } + if ($width == 0) { + $width = $this->w - $this->lMargin - $this->rMargin; + } + $cell_margin['T'] = $this->getHTMLUnitToUnits(str_replace('auto', '0', $cell_margin['T']), $width, 'px', false); + $cell_margin['R'] = $this->getHTMLUnitToUnits(str_replace('auto', '0', $cell_margin['R']), $width, 'px', false); + $cell_margin['B'] = $this->getHTMLUnitToUnits(str_replace('auto', '0', $cell_margin['B']), $width, 'px', false); + $cell_margin['L'] = $this->getHTMLUnitToUnits(str_replace('auto', '0', $cell_margin['L']), $width, 'px', false); + return $cell_margin; + } + + /** + * Get the border-spacing from CSS attribute. + * @param $cssbspace (string) border-spacing CSS properties + * @param $width (float) width of the containing element + * @return array of border spacings + * @public + * @since 5.9.010 (2010-10-27) + */ + public function getCSSBorderMargin($cssbspace, $width=0) { + $space = preg_split('/[\s]+/', trim($cssbspace)); + $border_spacing = array(); // value to be returned + switch (count($space)) { + case 2: { + $border_spacing['H'] = $space[0]; + $border_spacing['V'] = $space[1]; + break; + } + case 1: { + $border_spacing['H'] = $space[0]; + $border_spacing['V'] = $space[0]; + break; + } + default: { + return array('H' => 0, 'V' => 0); + } + } + if ($width == 0) { + $width = $this->w - $this->lMargin - $this->rMargin; + } + $border_spacing['H'] = $this->getHTMLUnitToUnits($border_spacing['H'], $width, 'px', false); + $border_spacing['V'] = $this->getHTMLUnitToUnits($border_spacing['V'], $width, 'px', false); + return $border_spacing; + } + + /** + * Returns the letter-spacing value from CSS value + * @param $spacing (string) letter-spacing value + * @param $parent (float) font spacing (tracking/kerning) value of the parent element + * @return float quantity to increases or decreases the space between characters in a text. + * @protected + * @since 5.9.000 (2010-10-02) + */ + protected function getCSSFontSpacing($spacing, $parent=0) { + $val = 0; // value to be returned + $spacing = trim($spacing); + switch ($spacing) { + case 'normal': { + $val = 0; + break; + } + case 'inherit': { + if ($parent == 'normal') { + $val = 0; + } else { + $val = $parent; + } + break; + } + default: { + $val = $this->getHTMLUnitToUnits($spacing, 0, 'px', false); + } + } + return $val; + } + + /** + * Returns the percentage of font stretching from CSS value + * @param $stretch (string) stretch mode + * @param $parent (float) stretch value of the parent element + * @return float font stretching percentage + * @protected + * @since 5.9.000 (2010-10-02) + */ + protected function getCSSFontStretching($stretch, $parent=100) { + $val = 100; // value to be returned + $stretch = trim($stretch); + switch ($stretch) { + case 'ultra-condensed': { + $val = 40; + break; + } + case 'extra-condensed': { + $val = 55; + break; + } + case 'condensed': { + $val = 70; + break; + } + case 'semi-condensed': { + $val = 85; + break; + } + case 'normal': { + $val = 100; + break; + } + case 'semi-expanded': { + $val = 115; + break; + } + case 'expanded': { + $val = 130; + break; + } + case 'extra-expanded': { + $val = 145; + break; + } + case 'ultra-expanded': { + $val = 160; + break; + } + case 'wider': { + $val = $parent + 10; + break; + } + case 'narrower': { + $val = $parent - 10; + break; + } + case 'inherit': { + if ($parent == 'normal') { + $val = 100; + } else { + $val = $parent; + } + break; + } + default: { + $val = $this->getHTMLUnitToUnits($stretch, 100, '%', false); + } + } + return $val; + } + + /** + * Returns the HTML DOM array. + * @param $html (string) html code + * @return array + * @protected + * @since 3.2.000 (2008-06-20) + */ + protected function getHtmlDomArray($html) { + // array of CSS styles ( selector => properties). + $css = array(); + // get CSS array defined at previous call + $matches = array(); + if (preg_match_all('/([^\<]*)<\/cssarray>/isU', $html, $matches) > 0) { + if (isset($matches[1][0])) { + $css = array_merge($css, unserialize($this->unhtmlentities($matches[1][0]))); + } + $html = preg_replace('/(.*?)<\/cssarray>/isU', '', $html); + } + // extract external CSS files + $matches = array(); + if (preg_match_all('/]*)>/isU', $html, $matches) > 0) { + foreach ($matches[1] as $key => $link) { + $type = array(); + if (preg_match('/type[\s]*=[\s]*"text\/css"/', $link, $type)) { + $type = array(); + preg_match('/media[\s]*=[\s]*"([^"]*)"/', $link, $type); + // get 'all' and 'print' media, other media types are discarded + // (all, braille, embossed, handheld, print, projection, screen, speech, tty, tv) + if (empty($type) OR (isset($type[1]) AND (($type[1] == 'all') OR ($type[1] == 'print')))) { + $type = array(); + if (preg_match('/href[\s]*=[\s]*"([^"]*)"/', $link, $type) > 0) { + // read CSS data file + $cssdata = file_get_contents(trim($type[1])); + $css = array_merge($css, $this->extractCSSproperties($cssdata)); + } + } + } + } + } + // extract style tags + $matches = array(); + if (preg_match_all('/]*)>([^\<]*)<\/style>/isU', $html, $matches) > 0) { + foreach ($matches[1] as $key => $media) { + $type = array(); + preg_match('/media[\s]*=[\s]*"([^"]*)"/', $media, $type); + // get 'all' and 'print' media, other media types are discarded + // (all, braille, embossed, handheld, print, projection, screen, speech, tty, tv) + if (empty($type) OR (isset($type[1]) AND (($type[1] == 'all') OR ($type[1] == 'print')))) { + $cssdata = $matches[2][$key]; + $css = array_merge($css, $this->extractCSSproperties($cssdata)); + } + } + } + // create a special tag to contain the CSS array (used for table content) + $csstagarray = ''.htmlentities(serialize($css)).''; + // remove head and style blocks + $html = preg_replace('/]*)>(.*?)<\/head>/siU', '', $html); + $html = preg_replace('/]*)>([^\<]*)<\/style>/isU', '', $html); + // define block tags + $blocktags = array('blockquote','br','dd','dl','div','dt','h1','h2','h3','h4','h5','h6','hr','li','ol','p','pre','ul','tcpdf','table','tr','td'); + // define self-closing tags + $selfclosingtags = array('area','base','basefont','br','hr','input','img','link','meta'); + // remove all unsupported tags (the line below lists all supported tags) + $html = strip_tags($html, '




        ', $offset)) !== false) { + $html_a = substr($html, 0, $offset); + $html_b = substr($html, $offset, ($pos - $offset + 11)); + while (preg_match("']*)>(.*?)\n(.*?)'si", $html_b)) { + // preserve newlines on 'si", "\\2\\3", $html_b); + $html_b = preg_replace("']*)>(.*?)[\"](.*?)'si", "\\2''\\3", $html_b); + } + $html = $html_a.$html_b.substr($html, $pos + 11); + $offset = strlen($html_a.$html_b); + } + $html = preg_replace('/([\s]*)', $html); + $offset = 0; + while (($offset < strlen($html)) AND ($pos = strpos($html, '', $offset)) !== false) { + $html_a = substr($html, 0, $offset); + $html_b = substr($html, $offset, ($pos - $offset + 9)); + while (preg_match("']*)>(.*?)'si", $html_b)) { + $html_b = preg_replace("']*)>(.*?)'si", "\\2#!TaB!#\\4#!NwL!#", $html_b); + $html_b = preg_replace("']*)>(.*?)'si", "\\2#!NwL!#", $html_b); + } + $html = $html_a.$html_b.substr($html, $pos + 9); + $offset = strlen($html_a.$html_b); + } + if (preg_match("']*)>'si", "'si", "\" />", $html); + } + $html = str_replace("\n", ' ', $html); + // restore textarea newlines + $html = str_replace('', "\n", $html); + // remove extra spaces from code + $html = preg_replace('/[\s]+<\/(table|tr|ul|ol|dl)>/', '', $html); + $html = preg_replace('/'.$this->re_space['p'].'+<\/(td|th|li|dt|dd)>/'.$this->re_space['m'], '', $html); + $html = preg_replace('/[\s]+<(tr|td|th|li|dt|dd)/', '<\\1', $html); + $html = preg_replace('/'.$this->re_space['p'].'+<(ul|ol|dl|br)/'.$this->re_space['m'], '<\\1', $html); + $html = preg_replace('/<\/(table|tr|td|th|blockquote|dd|dt|dl|div|dt|h1|h2|h3|h4|h5|h6|hr|li|ol|ul|p)>[\s]+<', $html); + $html = preg_replace('/<\/(td|th)>/', '', $html); + $html = preg_replace('/<\/table>([\s]*)/', '
        ', $html); + $html = preg_replace('/'.$this->re_space['p'].'+re_space['m'], chr(32).']*)>/xi', '', $html); + $html = preg_replace('/]*)>([^\<]*)<\/textarea>/xi', '', $html); + $html = preg_replace('/]*)><\/li>/', ' ', $html); + $html = preg_replace('/]*)>'.$this->re_space['p'].'*re_space['m'], ' \/]*)>[\s]/', '<\\1> ', $html); // preserve some spaces + $html = preg_replace('/[\s]<\/([^\>]*)>/', ' ', $html); // preserve some spaces + $html = preg_replace('/'.$this->re_space['p'].'+/'.$this->re_space['m'], chr(32), $html); // replace multiple spaces with a single space + // trim string + $html = $this->stringTrim($html); + // pattern for generic tag + $tagpattern = '/(<[^>]+>)/'; + // explodes the string + $a = preg_split($tagpattern, $html, -1, PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY); + // count elements + $maxel = count($a); + $elkey = 0; + $key = 0; + // create an array of elements + $dom = array(); + $dom[$key] = array(); + // set inheritable properties fot the first void element + // possible inheritable properties are: azimuth, border-collapse, border-spacing, caption-side, color, cursor, direction, empty-cells, font, font-family, font-stretch, font-size, font-size-adjust, font-style, font-variant, font-weight, letter-spacing, line-height, list-style, list-style-image, list-style-position, list-style-type, orphans, page, page-break-inside, quotes, speak, speak-header, text-align, text-indent, text-transform, volume, white-space, widows, word-spacing + $dom[$key]['tag'] = false; + $dom[$key]['block'] = false; + $dom[$key]['value'] = ''; + $dom[$key]['parent'] = 0; + $dom[$key]['fontname'] = $this->FontFamily; + $dom[$key]['fontstyle'] = $this->FontStyle; + $dom[$key]['fontsize'] = $this->FontSizePt; + $dom[$key]['font-stretch'] = $this->font_stretching; + $dom[$key]['letter-spacing'] = $this->font_spacing; + $dom[$key]['stroke'] = $this->textstrokewidth; + $dom[$key]['fill'] = (($this->textrendermode % 2) == 0); + $dom[$key]['clip'] = ($this->textrendermode > 3); + $dom[$key]['line-height'] = $this->cell_height_ratio; + $dom[$key]['bgcolor'] = false; + $dom[$key]['fgcolor'] = $this->fgcolor; // color + $dom[$key]['strokecolor'] = $this->strokecolor; + $dom[$key]['align'] = ''; + $dom[$key]['listtype'] = ''; + $dom[$key]['text-indent'] = 0; + $dom[$key]['border'] = array(); + $dom[$key]['dir'] = $this->rtl?'rtl':'ltr'; + $thead = false; // true when we are inside the THEAD tag + ++$key; + $level = array(); + array_push($level, 0); // root + while ($elkey < $maxel) { + $dom[$key] = array(); + $element = $a[$elkey]; + $dom[$key]['elkey'] = $elkey; + if (preg_match($tagpattern, $element)) { + // html tag + $element = substr($element, 1, -1); + // get tag name + preg_match('/[\/]?([a-zA-Z0-9]*)/', $element, $tag); + $tagname = strtolower($tag[1]); + // check if we are inside a table header + if ($tagname == 'thead') { + if ($element{0} == '/') { + $thead = false; + } else { + $thead = true; + } + ++$elkey; + continue; + } + $dom[$key]['tag'] = true; + $dom[$key]['value'] = $tagname; + if (in_array($dom[$key]['value'], $blocktags)) { + $dom[$key]['block'] = true; + } else { + $dom[$key]['block'] = false; + } + if ($element{0} == '/') { + // *** closing html tag + $dom[$key]['opening'] = false; + $dom[$key]['parent'] = end($level); + array_pop($level); + $dom[$key]['fontname'] = $dom[($dom[($dom[$key]['parent'])]['parent'])]['fontname']; + $dom[$key]['fontstyle'] = $dom[($dom[($dom[$key]['parent'])]['parent'])]['fontstyle']; + $dom[$key]['fontsize'] = $dom[($dom[($dom[$key]['parent'])]['parent'])]['fontsize']; + $dom[$key]['font-stretch'] = $dom[($dom[($dom[$key]['parent'])]['parent'])]['font-stretch']; + $dom[$key]['letter-spacing'] = $dom[($dom[($dom[$key]['parent'])]['parent'])]['letter-spacing']; + $dom[$key]['stroke'] = $dom[($dom[($dom[$key]['parent'])]['parent'])]['stroke']; + $dom[$key]['fill'] = $dom[($dom[($dom[$key]['parent'])]['parent'])]['fill']; + $dom[$key]['clip'] = $dom[($dom[($dom[$key]['parent'])]['parent'])]['clip']; + $dom[$key]['line-height'] = $dom[($dom[($dom[$key]['parent'])]['parent'])]['line-height']; + $dom[$key]['bgcolor'] = $dom[($dom[($dom[$key]['parent'])]['parent'])]['bgcolor']; + $dom[$key]['fgcolor'] = $dom[($dom[($dom[$key]['parent'])]['parent'])]['fgcolor']; + $dom[$key]['strokecolor'] = $dom[($dom[($dom[$key]['parent'])]['parent'])]['strokecolor']; + $dom[$key]['align'] = $dom[($dom[($dom[$key]['parent'])]['parent'])]['align']; + $dom[$key]['dir'] = $dom[($dom[($dom[$key]['parent'])]['parent'])]['dir']; + if (isset($dom[($dom[($dom[$key]['parent'])]['parent'])]['listtype'])) { + $dom[$key]['listtype'] = $dom[($dom[($dom[$key]['parent'])]['parent'])]['listtype']; + } + // set the number of columns in table tag + if (($dom[$key]['value'] == 'tr') AND (!isset($dom[($dom[($dom[$key]['parent'])]['parent'])]['cols']))) { + $dom[($dom[($dom[$key]['parent'])]['parent'])]['cols'] = $dom[($dom[$key]['parent'])]['cols']; + } + if (($dom[$key]['value'] == 'td') OR ($dom[$key]['value'] == 'th')) { + $dom[($dom[$key]['parent'])]['content'] = $csstagarray; + for ($i = ($dom[$key]['parent'] + 1); $i < $key; ++$i) { + $dom[($dom[$key]['parent'])]['content'] .= $a[$dom[$i]['elkey']]; + } + $key = $i; + // mark nested tables + $dom[($dom[$key]['parent'])]['content'] = str_replace('', '', $dom[($dom[$key]['parent'])]['content']); + $dom[($dom[$key]['parent'])]['content'] = str_replace('', '', $dom[($dom[$key]['parent'])]['content']); + } + // store header rows on a new table + if (($dom[$key]['value'] == 'tr') AND ($dom[($dom[$key]['parent'])]['thead'] === true)) { + if ($this->empty_string($dom[($dom[($dom[$key]['parent'])]['parent'])]['thead'])) { + $dom[($dom[($dom[$key]['parent'])]['parent'])]['thead'] = $a[$dom[($dom[($dom[$key]['parent'])]['parent'])]['elkey']]; + } + for ($i = $dom[$key]['parent']; $i <= $key; ++$i) { + $dom[($dom[($dom[$key]['parent'])]['parent'])]['thead'] .= $a[$dom[$i]['elkey']]; + } + if (!isset($dom[($dom[$key]['parent'])]['attribute'])) { + $dom[($dom[$key]['parent'])]['attribute'] = array(); + } + // header elements must be always contained in a single page + $dom[($dom[$key]['parent'])]['attribute']['nobr'] = 'true'; + } + if (($dom[$key]['value'] == 'table') AND (!$this->empty_string($dom[($dom[$key]['parent'])]['thead']))) { + // remove the nobr attributes from the table header + $dom[($dom[$key]['parent'])]['thead'] = str_replace(' nobr="true"', '', $dom[($dom[$key]['parent'])]['thead']); + $dom[($dom[$key]['parent'])]['thead'] .= ''; + } + } else { + // *** opening or self-closing html tag + $dom[$key]['opening'] = true; + $dom[$key]['parent'] = end($level); + if ((substr($element, -1, 1) == '/') OR (in_array($dom[$key]['value'], $selfclosingtags))) { + // self-closing tag + $dom[$key]['self'] = true; + } else { + // opening tag + array_push($level, $key); + $dom[$key]['self'] = false; + } + // copy some values from parent + $parentkey = 0; + if ($key > 0) { + $parentkey = $dom[$key]['parent']; + $dom[$key]['fontname'] = $dom[$parentkey]['fontname']; + $dom[$key]['fontstyle'] = $dom[$parentkey]['fontstyle']; + $dom[$key]['fontsize'] = $dom[$parentkey]['fontsize']; + $dom[$key]['font-stretch'] = $dom[$parentkey]['font-stretch']; + $dom[$key]['letter-spacing'] = $dom[$parentkey]['letter-spacing']; + $dom[$key]['stroke'] = $dom[$parentkey]['stroke']; + $dom[$key]['fill'] = $dom[$parentkey]['fill']; + $dom[$key]['clip'] = $dom[$parentkey]['clip']; + $dom[$key]['line-height'] = $dom[$parentkey]['line-height']; + $dom[$key]['bgcolor'] = $dom[$parentkey]['bgcolor']; + $dom[$key]['fgcolor'] = $dom[$parentkey]['fgcolor']; + $dom[$key]['strokecolor'] = $dom[$parentkey]['strokecolor']; + $dom[$key]['align'] = $dom[$parentkey]['align']; + $dom[$key]['listtype'] = $dom[$parentkey]['listtype']; + $dom[$key]['text-indent'] = $dom[$parentkey]['text-indent']; + $dom[$key]['border'] = array(); + $dom[$key]['dir'] = $dom[$parentkey]['dir']; + } + // get attributes + preg_match_all('/([^=\s]*)[\s]*=[\s]*"([^"]*)"/', $element, $attr_array, PREG_PATTERN_ORDER); + $dom[$key]['attribute'] = array(); // reset attribute array + while (list($id, $name) = each($attr_array[1])) { + $dom[$key]['attribute'][strtolower($name)] = $attr_array[2][$id]; + } + if (!empty($css)) { + // merge eternal CSS style to current style + $dom[$key]['attribute']['style'] = $this->getTagStyleFromCSS($dom, $key, $css); + } + // split style attributes + if (isset($dom[$key]['attribute']['style']) AND !empty($dom[$key]['attribute']['style'])) { + // get style attributes + preg_match_all('/([^;:\s]*):([^;]*)/', $dom[$key]['attribute']['style'], $style_array, PREG_PATTERN_ORDER); + $dom[$key]['style'] = array(); // reset style attribute array + while (list($id, $name) = each($style_array[1])) { + // in case of duplicate attribute the last replace the previous + $dom[$key]['style'][strtolower($name)] = trim($style_array[2][$id]); + } + // --- get some style attributes --- + // text direction + if (isset($dom[$key]['style']['direction'])) { + $dom[$key]['dir'] = $dom[$key]['style']['direction']; + } + // font family + if (isset($dom[$key]['style']['font-family'])) { + $dom[$key]['fontname'] = $this->getFontFamilyName($dom[$key]['style']['font-family']); + } + // list-style-type + if (isset($dom[$key]['style']['list-style-type'])) { + $dom[$key]['listtype'] = trim(strtolower($dom[$key]['style']['list-style-type'])); + if ($dom[$key]['listtype'] == 'inherit') { + $dom[$key]['listtype'] = $dom[$parentkey]['listtype']; + } + } + // text-indent + if (isset($dom[$key]['style']['text-indent'])) { + $dom[$key]['text-indent'] = $this->getHTMLUnitToUnits($dom[$key]['style']['text-indent']); + if ($dom[$key]['text-indent'] == 'inherit') { + $dom[$key]['text-indent'] = $dom[$parentkey]['text-indent']; + } + } + // font size + if (isset($dom[$key]['style']['font-size'])) { + $fsize = trim($dom[$key]['style']['font-size']); + switch ($fsize) { + // absolute-size + case 'xx-small': { + $dom[$key]['fontsize'] = $dom[0]['fontsize'] - 4; + break; + } + case 'x-small': { + $dom[$key]['fontsize'] = $dom[0]['fontsize'] - 3; + break; + } + case 'small': { + $dom[$key]['fontsize'] = $dom[0]['fontsize'] - 2; + break; + } + case 'medium': { + $dom[$key]['fontsize'] = $dom[0]['fontsize']; + break; + } + case 'large': { + $dom[$key]['fontsize'] = $dom[0]['fontsize'] + 2; + break; + } + case 'x-large': { + $dom[$key]['fontsize'] = $dom[0]['fontsize'] + 4; + break; + } + case 'xx-large': { + $dom[$key]['fontsize'] = $dom[0]['fontsize'] + 6; + break; + } + // relative-size + case 'smaller': { + $dom[$key]['fontsize'] = $dom[$parentkey]['fontsize'] - 3; + break; + } + case 'larger': { + $dom[$key]['fontsize'] = $dom[$parentkey]['fontsize'] + 3; + break; + } + default: { + $dom[$key]['fontsize'] = $this->getHTMLUnitToUnits($fsize, $dom[$parentkey]['fontsize'], 'pt', true); + } + } + } + // font-stretch + if (isset($dom[$key]['style']['font-stretch'])) { + $dom[$key]['font-stretch'] = $this->getCSSFontStretching($dom[$key]['style']['font-stretch'], $dom[$parentkey]['font-stretch']); + } + // letter-spacing + if (isset($dom[$key]['style']['letter-spacing'])) { + $dom[$key]['letter-spacing'] = $this->getCSSFontSpacing($dom[$key]['style']['letter-spacing'], $dom[$parentkey]['letter-spacing']); + } + // line-height + if (isset($dom[$key]['style']['line-height'])) { + $lineheight = trim($dom[$key]['style']['line-height']); + switch ($lineheight) { + // A normal line height. This is default + case 'normal': { + $dom[$key]['line-height'] = $dom[0]['line-height']; + break; + } + default: { + if (is_numeric($lineheight)) { + $lineheight = $lineheight * 100; + } + $dom[$key]['line-height'] = $this->getHTMLUnitToUnits($lineheight, 1, '%', true); + } + } + } + // font style + if (isset($dom[$key]['style']['font-weight']) AND (strtolower($dom[$key]['style']['font-weight']{0}) == 'b')) { + $dom[$key]['fontstyle'] .= 'B'; + } + if (isset($dom[$key]['style']['font-style']) AND (strtolower($dom[$key]['style']['font-style']{0}) == 'i')) { + $dom[$key]['fontstyle'] .= 'I'; + } + // font color + if (isset($dom[$key]['style']['color']) AND (!$this->empty_string($dom[$key]['style']['color']))) { + $dom[$key]['fgcolor'] = $this->convertHTMLColorToDec($dom[$key]['style']['color']); + } elseif ($dom[$key]['value'] == 'a') { + $dom[$key]['fgcolor'] = $this->htmlLinkColorArray; + } + // background color + if (isset($dom[$key]['style']['background-color']) AND (!$this->empty_string($dom[$key]['style']['background-color']))) { + $dom[$key]['bgcolor'] = $this->convertHTMLColorToDec($dom[$key]['style']['background-color']); + } + // text-decoration + if (isset($dom[$key]['style']['text-decoration'])) { + $decors = explode(' ', strtolower($dom[$key]['style']['text-decoration'])); + foreach ($decors as $dec) { + $dec = trim($dec); + if (!$this->empty_string($dec)) { + if ($dec{0} == 'u') { + // underline + $dom[$key]['fontstyle'] .= 'U'; + } elseif ($dec{0} == 'l') { + // line-trough + $dom[$key]['fontstyle'] .= 'D'; + } elseif ($dec{0} == 'o') { + // overline + $dom[$key]['fontstyle'] .= 'O'; + } + } + } + } elseif ($dom[$key]['value'] == 'a') { + $dom[$key]['fontstyle'] = $this->htmlLinkFontStyle; + } + // check for width attribute + if (isset($dom[$key]['style']['width'])) { + $dom[$key]['width'] = $dom[$key]['style']['width']; + } + // check for height attribute + if (isset($dom[$key]['style']['height'])) { + $dom[$key]['height'] = $dom[$key]['style']['height']; + } + // check for text alignment + if (isset($dom[$key]['style']['text-align'])) { + $dom[$key]['align'] = strtoupper($dom[$key]['style']['text-align']{0}); + } + // check for CSS border properties + if (isset($dom[$key]['style']['border'])) { + $borderstyle = $this->getCSSBorderStyle($dom[$key]['style']['border']); + if (!empty($borderstyle)) { + $dom[$key]['border']['LTRB'] = $borderstyle; + } + } + if (isset($dom[$key]['style']['border-color'])) { + $brd_colors = preg_split('/[\s]+/', trim($dom[$key]['style']['border-color'])); + if (isset($brd_colors[3])) { + $dom[$key]['border']['L']['color'] = $this->convertHTMLColorToDec($brd_colors[3]); + } + if (isset($brd_colors[1])) { + $dom[$key]['border']['R']['color'] = $this->convertHTMLColorToDec($brd_colors[1]); + } + if (isset($brd_colors[0])) { + $dom[$key]['border']['T']['color'] = $this->convertHTMLColorToDec($brd_colors[0]); + } + if (isset($brd_colors[2])) { + $dom[$key]['border']['B']['color'] = $this->convertHTMLColorToDec($brd_colors[2]); + } + } + if (isset($dom[$key]['style']['border-width'])) { + $brd_widths = preg_split('/[\s]+/', trim($dom[$key]['style']['border-width'])); + if (isset($brd_widths[3])) { + $dom[$key]['border']['L']['width'] = $this->getCSSBorderWidth($brd_widths[3]); + } + if (isset($brd_widths[1])) { + $dom[$key]['border']['R']['width'] = $this->getCSSBorderWidth($brd_widths[1]); + } + if (isset($brd_widths[0])) { + $dom[$key]['border']['T']['width'] = $this->getCSSBorderWidth($brd_widths[0]); + } + if (isset($brd_widths[2])) { + $dom[$key]['border']['B']['width'] = $this->getCSSBorderWidth($brd_widths[2]); + } + } + if (isset($dom[$key]['style']['border-style'])) { + $brd_styles = preg_split('/[\s]+/', trim($dom[$key]['style']['border-style'])); + if (isset($brd_styles[3])) { + $dom[$key]['border']['L']['cap'] = 'square'; + $dom[$key]['border']['L']['join'] = 'miter'; + $dom[$key]['border']['L']['dash'] = $this->getCSSBorderDashStyle($brd_styles[3]); + if ($dom[$key]['border']['L']['dash'] < 0) { + $dom[$key]['border']['L'] = array(); + } + } + if (isset($brd_styles[1])) { + $dom[$key]['border']['R']['cap'] = 'square'; + $dom[$key]['border']['R']['join'] = 'miter'; + $dom[$key]['border']['R']['dash'] = $this->getCSSBorderDashStyle($brd_styles[1]); + if ($dom[$key]['border']['R']['dash'] < 0) { + $dom[$key]['border']['R'] = array(); + } + } + if (isset($brd_styles[0])) { + $dom[$key]['border']['T']['cap'] = 'square'; + $dom[$key]['border']['T']['join'] = 'miter'; + $dom[$key]['border']['T']['dash'] = $this->getCSSBorderDashStyle($brd_styles[0]); + if ($dom[$key]['border']['T']['dash'] < 0) { + $dom[$key]['border']['T'] = array(); + } + } + if (isset($brd_styles[2])) { + $dom[$key]['border']['B']['cap'] = 'square'; + $dom[$key]['border']['B']['join'] = 'miter'; + $dom[$key]['border']['B']['dash'] = $this->getCSSBorderDashStyle($brd_styles[2]); + if ($dom[$key]['border']['B']['dash'] < 0) { + $dom[$key]['border']['B'] = array(); + } + } + } + $cellside = array('L' => 'left', 'R' => 'right', 'T' => 'top', 'B' => 'bottom'); + foreach ($cellside as $bsk => $bsv) { + if (isset($dom[$key]['style']['border-'.$bsv])) { + $borderstyle = $this->getCSSBorderStyle($dom[$key]['style']['border-'.$bsv]); + if (!empty($borderstyle)) { + $dom[$key]['border'][$bsk] = $borderstyle; + } + } + if (isset($dom[$key]['style']['border-'.$bsv.'-color'])) { + $dom[$key]['border'][$bsk]['color'] = $this->convertHTMLColorToDec($dom[$key]['style']['border-'.$bsv.'-color']); + } + if (isset($dom[$key]['style']['border-'.$bsv.'-width'])) { + $dom[$key]['border'][$bsk]['width'] = $this->getCSSBorderWidth($dom[$key]['style']['border-'.$bsv.'-width']); + } + if (isset($dom[$key]['style']['border-'.$bsv.'-style'])) { + $dom[$key]['border'][$bsk]['dash'] = $this->getCSSBorderDashStyle($dom[$key]['style']['border-'.$bsv.'-style']); + if ($dom[$key]['border'][$bsk]['dash'] < 0) { + $dom[$key]['border'][$bsk] = array(); + } + } + } + // check for CSS padding properties + if (isset($dom[$key]['style']['padding'])) { + $dom[$key]['padding'] = $this->getCSSPadding($dom[$key]['style']['padding']); + } else { + $dom[$key]['padding'] = $this->cell_padding; + } + foreach ($cellside as $psk => $psv) { + if (isset($dom[$key]['style']['padding-'.$psv])) { + $dom[$key]['padding'][$psk] = $this->getHTMLUnitToUnits($dom[$key]['style']['padding-'.$psv], 0, 'px', false); + } + } + // check for CSS margin properties + if (isset($dom[$key]['style']['margin'])) { + $dom[$key]['margin'] = $this->getCSSMargin($dom[$key]['style']['margin']); + } else { + $dom[$key]['margin'] = $this->cell_margin; + } + foreach ($cellside as $psk => $psv) { + if (isset($dom[$key]['style']['margin-'.$psv])) { + $dom[$key]['margin'][$psk] = $this->getHTMLUnitToUnits(str_replace('auto', '0', $dom[$key]['style']['margin-'.$psv]), 0, 'px', false); + } + } + // check for CSS border-spacing properties + if (isset($dom[$key]['style']['border-spacing'])) { + $dom[$key]['border-spacing'] = $this->getCSSBorderMargin($dom[$key]['style']['border-spacing']); + } + // page-break-inside + if (isset($dom[$key]['style']['page-break-inside']) AND ($dom[$key]['style']['page-break-inside'] == 'avoid')) { + $dom[$key]['attribute']['nobr'] = 'true'; + } + // page-break-before + if (isset($dom[$key]['style']['page-break-before'])) { + if ($dom[$key]['style']['page-break-before'] == 'always') { + $dom[$key]['attribute']['pagebreak'] = 'true'; + } elseif ($dom[$key]['style']['page-break-before'] == 'left') { + $dom[$key]['attribute']['pagebreak'] = 'left'; + } elseif ($dom[$key]['style']['page-break-before'] == 'right') { + $dom[$key]['attribute']['pagebreak'] = 'right'; + } + } + // page-break-after + if (isset($dom[$key]['style']['page-break-after'])) { + if ($dom[$key]['style']['page-break-after'] == 'always') { + $dom[$key]['attribute']['pagebreakafter'] = 'true'; + } elseif ($dom[$key]['style']['page-break-after'] == 'left') { + $dom[$key]['attribute']['pagebreakafter'] = 'left'; + } elseif ($dom[$key]['style']['page-break-after'] == 'right') { + $dom[$key]['attribute']['pagebreakafter'] = 'right'; + } + } + } + if (isset($dom[$key]['attribute']['border']) AND ($dom[$key]['attribute']['border'] != 0)) { + $borderstyle = $this->getCSSBorderStyle($dom[$key]['attribute']['border'].' solid black'); + if (!empty($borderstyle)) { + $dom[$key]['border']['LTRB'] = $borderstyle; + } + } + // check for font tag + if ($dom[$key]['value'] == 'font') { + // font family + if (isset($dom[$key]['attribute']['face'])) { + $dom[$key]['fontname'] = $this->getFontFamilyName($dom[$key]['attribute']['face']); + } + // font size + if (isset($dom[$key]['attribute']['size'])) { + if ($key > 0) { + if ($dom[$key]['attribute']['size']{0} == '+') { + $dom[$key]['fontsize'] = $dom[($dom[$key]['parent'])]['fontsize'] + intval(substr($dom[$key]['attribute']['size'], 1)); + } elseif ($dom[$key]['attribute']['size']{0} == '-') { + $dom[$key]['fontsize'] = $dom[($dom[$key]['parent'])]['fontsize'] - intval(substr($dom[$key]['attribute']['size'], 1)); + } else { + $dom[$key]['fontsize'] = intval($dom[$key]['attribute']['size']); + } + } else { + $dom[$key]['fontsize'] = intval($dom[$key]['attribute']['size']); + } + } + } + // force natural alignment for lists + if ((($dom[$key]['value'] == 'ul') OR ($dom[$key]['value'] == 'ol') OR ($dom[$key]['value'] == 'dl')) + AND (!isset($dom[$key]['align']) OR $this->empty_string($dom[$key]['align']) OR ($dom[$key]['align'] != 'J'))) { + if ($this->rtl) { + $dom[$key]['align'] = 'R'; + } else { + $dom[$key]['align'] = 'L'; + } + } + if (($dom[$key]['value'] == 'small') OR ($dom[$key]['value'] == 'sup') OR ($dom[$key]['value'] == 'sub')) { + if (!isset($dom[$key]['attribute']['size']) AND !isset($dom[$key]['style']['font-size'])) { + $dom[$key]['fontsize'] = $dom[$key]['fontsize'] * K_SMALL_RATIO; + } + } + if (($dom[$key]['value'] == 'strong') OR ($dom[$key]['value'] == 'b')) { + $dom[$key]['fontstyle'] .= 'B'; + } + if (($dom[$key]['value'] == 'em') OR ($dom[$key]['value'] == 'i')) { + $dom[$key]['fontstyle'] .= 'I'; + } + if ($dom[$key]['value'] == 'u') { + $dom[$key]['fontstyle'] .= 'U'; + } + if (($dom[$key]['value'] == 'del') OR ($dom[$key]['value'] == 's') OR ($dom[$key]['value'] == 'strike')) { + $dom[$key]['fontstyle'] .= 'D'; + } + if (!isset($dom[$key]['style']['text-decoration']) AND ($dom[$key]['value'] == 'a')) { + $dom[$key]['fontstyle'] = $this->htmlLinkFontStyle; + } + if (($dom[$key]['value'] == 'pre') OR ($dom[$key]['value'] == 'tt')) { + $dom[$key]['fontname'] = $this->default_monospaced_font; + } + if (($dom[$key]['value']{0} == 'h') AND (intval($dom[$key]['value']{1}) > 0) AND (intval($dom[$key]['value']{1}) < 7)) { + // headings h1, h2, h3, h4, h5, h6 + if (!isset($dom[$key]['attribute']['size']) AND !isset($dom[$key]['style']['font-size'])) { + $headsize = (4 - intval($dom[$key]['value']{1})) * 2; + $dom[$key]['fontsize'] = $dom[0]['fontsize'] + $headsize; + } + if (!isset($dom[$key]['style']['font-weight'])) { + $dom[$key]['fontstyle'] .= 'B'; + } + } + if (($dom[$key]['value'] == 'table')) { + $dom[$key]['rows'] = 0; // number of rows + $dom[$key]['trids'] = array(); // IDs of TR elements + $dom[$key]['thead'] = ''; // table header rows + } + if (($dom[$key]['value'] == 'tr')) { + $dom[$key]['cols'] = 0; + if ($thead) { + $dom[$key]['thead'] = true; + // rows on thead block are printed as a separate table + } else { + $dom[$key]['thead'] = false; + // store the number of rows on table element + ++$dom[($dom[$key]['parent'])]['rows']; + // store the TR elements IDs on table element + array_push($dom[($dom[$key]['parent'])]['trids'], $key); + } + } + if (($dom[$key]['value'] == 'th') OR ($dom[$key]['value'] == 'td')) { + if (isset($dom[$key]['attribute']['colspan'])) { + $colspan = intval($dom[$key]['attribute']['colspan']); + } else { + $colspan = 1; + } + $dom[$key]['attribute']['colspan'] = $colspan; + $dom[($dom[$key]['parent'])]['cols'] += $colspan; + } + // text direction + if (isset($dom[$key]['attribute']['dir'])) { + $dom[$key]['dir'] = $dom[$key]['attribute']['dir']; + } + // set foreground color attribute + if (isset($dom[$key]['attribute']['color']) AND (!$this->empty_string($dom[$key]['attribute']['color']))) { + $dom[$key]['fgcolor'] = $this->convertHTMLColorToDec($dom[$key]['attribute']['color']); + } elseif (!isset($dom[$key]['style']['color']) AND ($dom[$key]['value'] == 'a')) { + $dom[$key]['fgcolor'] = $this->htmlLinkColorArray; + } + // set background color attribute + if (isset($dom[$key]['attribute']['bgcolor']) AND (!$this->empty_string($dom[$key]['attribute']['bgcolor']))) { + $dom[$key]['bgcolor'] = $this->convertHTMLColorToDec($dom[$key]['attribute']['bgcolor']); + } + // set stroke color attribute + if (isset($dom[$key]['attribute']['strokecolor']) AND (!$this->empty_string($dom[$key]['attribute']['strokecolor']))) { + $dom[$key]['strokecolor'] = $this->convertHTMLColorToDec($dom[$key]['attribute']['strokecolor']); + } + // check for width attribute + if (isset($dom[$key]['attribute']['width'])) { + $dom[$key]['width'] = $dom[$key]['attribute']['width']; + } + // check for height attribute + if (isset($dom[$key]['attribute']['height'])) { + $dom[$key]['height'] = $dom[$key]['attribute']['height']; + } + // check for text alignment + if (isset($dom[$key]['attribute']['align']) AND (!$this->empty_string($dom[$key]['attribute']['align'])) AND ($dom[$key]['value'] !== 'img')) { + $dom[$key]['align'] = strtoupper($dom[$key]['attribute']['align']{0}); + } + // check for text rendering mode (the following attributes do not exist in HTML) + if (isset($dom[$key]['attribute']['stroke'])) { + // font stroke width + $dom[$key]['stroke'] = $this->getHTMLUnitToUnits($dom[$key]['attribute']['stroke'], $dom[$key]['fontsize'], 'pt', true); + } + if (isset($dom[$key]['attribute']['fill'])) { + // font fill + if ($dom[$key]['attribute']['fill'] == 'true') { + $dom[$key]['fill'] = true; + } else { + $dom[$key]['fill'] = false; + } + } + if (isset($dom[$key]['attribute']['clip'])) { + // clipping mode + if ($dom[$key]['attribute']['clip'] == 'true') { + $dom[$key]['clip'] = true; + } else { + $dom[$key]['clip'] = false; + } + } + } // end opening tag + } else { + // text + $dom[$key]['tag'] = false; + $dom[$key]['block'] = false; + $element = str_replace('$nbsp;', $this->unichr(160), $element); + $dom[$key]['value'] = stripslashes($this->unhtmlentities($element)); + $dom[$key]['parent'] = end($level); + $dom[$key]['dir'] = $dom[$dom[$key]['parent']]['dir']; + } + ++$elkey; + ++$key; + } + return $dom; + } + + /** + * Returns the string used to find spaces + * @return string + * @protected + * @author Nicola Asuni + * @since 4.8.024 (2010-01-15) + */ + protected function getSpaceString() { + $spacestr = chr(32); + if ($this->isUnicodeFont()) { + $spacestr = chr(0).chr(32); + } + return $spacestr; + } + + /** + * Prints a cell (rectangular area) with optional borders, background color and html text string. + * The upper-left corner of the cell corresponds to the current position. After the call, the current position moves to the right or to the next line.
        + * If automatic page breaking is enabled and the cell goes beyond the limit, a page break is done before outputting. + * @param $w (float) Cell width. If 0, the cell extends up to the right margin. + * @param $h (float) Cell minimum height. The cell extends automatically if needed. + * @param $x (float) upper-left corner X coordinate + * @param $y (float) upper-left corner Y coordinate + * @param $html (string) html text to print. Default value: empty string. + * @param $border (mixed) Indicates if borders must be drawn around the cell. The value can be a number:
        • 0: no border (default)
        • 1: frame
        or a string containing some or all of the following characters (in any order):
        • L: left
        • T: top
        • R: right
        • B: bottom
        or an array of line styles for each border group - for example: array('LTRB' => array('width' => 2, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0))) + * @param $ln (int) Indicates where the current position should go after the call. Possible values are:
        • 0: to the right (or left for RTL language)
        • 1: to the beginning of the next line
        • 2: below
        +Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: 0. + * @param $fill (boolean) Indicates if the cell background must be painted (true) or transparent (false). + * @param $reseth (boolean) if true reset the last cell height (default true). + * @param $align (string) Allows to center or align the text. Possible values are:
        • L : left align
        • C : center
        • R : right align
        • '' : empty string : left for LTR or right for RTL
        + * @param $autopadding (boolean) if true, uses internal padding and automatically adjust it to account for line width. + * @see Multicell(), writeHTML() + * @public + */ + public function writeHTMLCell($w, $h, $x, $y, $html='', $border=0, $ln=0, $fill=false, $reseth=true, $align='', $autopadding=true) { + return $this->MultiCell($w, $h, $html, $border, $align, $fill, $ln, $x, $y, $reseth, 0, true, $autopadding, 0); + } + + /** + * Allows to preserve some HTML formatting (limited support).
        + * IMPORTANT: The HTML must be well formatted - try to clean-up it using an application like HTML-Tidy before submitting. + * Supported tags are: a, b, blockquote, br, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, img, li, ol, p, pre, small, span, strong, sub, sup, table, tcpdf, td, th, thead, tr, tt, u, ul + * @param $html (string) text to display + * @param $ln (boolean) if true add a new line after text (default = true) + * @param $fill (boolean) Indicates if the background must be painted (true) or transparent (false). + * @param $reseth (boolean) if true reset the last cell height (default false). + * @param $cell (boolean) if true add the current left (or right for RTL) padding to each Write (default false). + * @param $align (string) Allows to center or align the text. Possible values are:
        • L : left align
        • C : center
        • R : right align
        • '' : empty string : left for LTR or right for RTL
        + * @public + */ + public function writeHTML($html, $ln=true, $fill=false, $reseth=false, $cell=false, $align='') { + $gvars = $this->getGraphicVars(); + // store current values + $prev_cell_margin = $this->cell_margin; + $prev_cell_padding = $this->cell_padding; + $prevPage = $this->page; + $prevlMargin = $this->lMargin; + $prevrMargin = $this->rMargin; + $curfontname = $this->FontFamily; + $curfontstyle = $this->FontStyle; + $curfontsize = $this->FontSizePt; + $curfontascent = $this->getFontAscent($curfontname, $curfontstyle, $curfontsize); + $curfontdescent = $this->getFontDescent($curfontname, $curfontstyle, $curfontsize); + $curfontstretcing = $this->font_stretching; + $curfontkerning = $this->font_spacing; + $this->newline = true; + $newline = true; + $startlinepage = $this->page; + $minstartliney = $this->y; + $maxbottomliney = 0; + $startlinex = $this->x; + $startliney = $this->y; + $yshift = 0; + $loop = 0; + $curpos = 0; + $this_method_vars = array(); + $undo = false; + $fontaligned = false; + $reverse_dir = false; // true when the text direction is reversed + $this->premode = false; + if ($this->inxobj) { + // we are inside an XObject template + $pask = count($this->xobjects[$this->xobjid]['annotations']); + } elseif (isset($this->PageAnnots[$this->page])) { + $pask = count($this->PageAnnots[$this->page]); + } else { + $pask = 0; + } + if ($this->inxobj) { + // we are inside an XObject template + $startlinepos = strlen($this->xobjects[$this->xobjid]['outdata']); + } elseif (!$this->InFooter) { + if (isset($this->footerlen[$this->page])) { + $this->footerpos[$this->page] = $this->pagelen[$this->page] - $this->footerlen[$this->page]; + } else { + $this->footerpos[$this->page] = $this->pagelen[$this->page]; + } + $startlinepos = $this->footerpos[$this->page]; + } else { + // we are inside the footer + $startlinepos = $this->pagelen[$this->page]; + } + $lalign = $align; + $plalign = $align; + if ($this->rtl) { + $w = $this->x - $this->lMargin; + } else { + $w = $this->w - $this->rMargin - $this->x; + } + $w -= ($this->cell_padding['L'] + $this->cell_padding['R']); + if ($cell) { + if ($this->rtl) { + $this->x -= $this->cell_padding['R']; + $this->lMargin += $this->cell_padding['R']; + } else { + $this->x += $this->cell_padding['L']; + $this->rMargin += $this->cell_padding['L']; + } + } + if ($this->customlistindent >= 0) { + $this->listindent = $this->customlistindent; + } else { + $this->listindent = $this->GetStringWidth('0000'); + } + $this->listindentlevel = 0; + // save previous states + $prev_cell_height_ratio = $this->cell_height_ratio; + $prev_listnum = $this->listnum; + $prev_listordered = $this->listordered; + $prev_listcount = $this->listcount; + $prev_lispacer = $this->lispacer; + $this->listnum = 0; + $this->listordered = array(); + $this->listcount = array(); + $this->lispacer = ''; + if (($this->empty_string($this->lasth)) OR ($reseth)) { + // reset row height + $this->resetLastH(); + } + $dom = $this->getHtmlDomArray($html); + $maxel = count($dom); + $key = 0; + while ($key < $maxel) { + if ($dom[$key]['tag'] AND isset($dom[$key]['attribute']['pagebreak'])) { + // check for pagebreak + if (($dom[$key]['attribute']['pagebreak'] == 'true') OR ($dom[$key]['attribute']['pagebreak'] == 'left') OR ($dom[$key]['attribute']['pagebreak'] == 'right')) { + // add a page (or trig AcceptPageBreak() for multicolumn mode) + $this->checkPageBreak($this->PageBreakTrigger + 1); + } + if ((($dom[$key]['attribute']['pagebreak'] == 'left') AND (((!$this->rtl) AND (($this->page % 2) == 0)) OR (($this->rtl) AND (($this->page % 2) != 0)))) + OR (($dom[$key]['attribute']['pagebreak'] == 'right') AND (((!$this->rtl) AND (($this->page % 2) != 0)) OR (($this->rtl) AND (($this->page % 2) == 0))))) { + // add a page (or trig AcceptPageBreak() for multicolumn mode) + $this->checkPageBreak($this->PageBreakTrigger + 1); + } + } + if ($dom[$key]['tag'] AND $dom[$key]['opening'] AND isset($dom[$key]['attribute']['nobr']) AND ($dom[$key]['attribute']['nobr'] == 'true')) { + if (isset($dom[($dom[$key]['parent'])]['attribute']['nobr']) AND ($dom[($dom[$key]['parent'])]['attribute']['nobr'] == 'true')) { + $dom[$key]['attribute']['nobr'] = false; + } else { + // store current object + $this->startTransaction(); + // save this method vars + $this_method_vars['html'] = $html; + $this_method_vars['ln'] = $ln; + $this_method_vars['fill'] = $fill; + $this_method_vars['reseth'] = $reseth; + $this_method_vars['cell'] = $cell; + $this_method_vars['align'] = $align; + $this_method_vars['gvars'] = $gvars; + $this_method_vars['prevPage'] = $prevPage; + $this_method_vars['prev_cell_margin'] = $prev_cell_margin; + $this_method_vars['prev_cell_padding'] = $prev_cell_padding; + $this_method_vars['prevlMargin'] = $prevlMargin; + $this_method_vars['prevrMargin'] = $prevrMargin; + $this_method_vars['curfontname'] = $curfontname; + $this_method_vars['curfontstyle'] = $curfontstyle; + $this_method_vars['curfontsize'] = $curfontsize; + $this_method_vars['curfontascent'] = $curfontascent; + $this_method_vars['curfontdescent'] = $curfontdescent; + $this_method_vars['curfontstretcing'] = $curfontstretcing; + $this_method_vars['curfontkerning'] = $curfontkerning; + $this_method_vars['minstartliney'] = $minstartliney; + $this_method_vars['maxbottomliney'] = $maxbottomliney; + $this_method_vars['yshift'] = $yshift; + $this_method_vars['startlinepage'] = $startlinepage; + $this_method_vars['startlinepos'] = $startlinepos; + $this_method_vars['startlinex'] = $startlinex; + $this_method_vars['startliney'] = $startliney; + $this_method_vars['newline'] = $newline; + $this_method_vars['loop'] = $loop; + $this_method_vars['curpos'] = $curpos; + $this_method_vars['pask'] = $pask; + $this_method_vars['lalign'] = $lalign; + $this_method_vars['plalign'] = $plalign; + $this_method_vars['w'] = $w; + $this_method_vars['prev_cell_height_ratio'] = $prev_cell_height_ratio; + $this_method_vars['prev_listnum'] = $prev_listnum; + $this_method_vars['prev_listordered'] = $prev_listordered; + $this_method_vars['prev_listcount'] = $prev_listcount; + $this_method_vars['prev_lispacer'] = $prev_lispacer; + $this_method_vars['fontaligned'] = $fontaligned; + $this_method_vars['key'] = $key; + $this_method_vars['dom'] = $dom; + } + } + // print THEAD block + if (($dom[$key]['value'] == 'tr') AND isset($dom[$key]['thead']) AND $dom[$key]['thead']) { + if (isset($dom[$key]['parent']) AND isset($dom[$dom[$key]['parent']]['thead']) AND !$this->empty_string($dom[$dom[$key]['parent']]['thead'])) { + $this->inthead = true; + // print table header (thead) + $this->writeHTML($this->thead, false, false, false, false, ''); + // check if we are on a new page or on a new column + if (($this->y < $this->start_transaction_y) OR ($this->checkPageBreak($this->lasth, '', false))) { + // we are on a new page or on a new column and the total object height is less than the available vertical space. + // restore previous object + $this->rollbackTransaction(true); + // restore previous values + foreach ($this_method_vars as $vkey => $vval) { + $$vkey = $vval; + } + // disable table header + $tmp_thead = $this->thead; + $this->thead = ''; + // add a page (or trig AcceptPageBreak() for multicolumn mode) + $pre_y = $this->y; + if ((!$this->checkPageBreak($this->PageBreakTrigger + 1)) AND ($this->y < $pre_y)) { + // fix for multicolumn mode + $startliney = $this->y; + } + $this->start_transaction_page = $this->page; + $this->start_transaction_y = $this->y; + // restore table header + $this->thead = $tmp_thead; + // fix table border properties + if (isset($dom[$dom[$key]['parent']]['attribute']['cellspacing'])) { + $tmp_cellspacing = $this->getHTMLUnitToUnits($dom[$dom[$key]['parent']]['attribute']['cellspacing'], 1, 'px'); + } elseif (isset($dom[$dom[$key]['parent']]['border-spacing'])) { + $tmp_cellspacing = $dom[$dom[$key]['parent']]['border-spacing']['V']; + } else { + $tmp_cellspacing = 0; + } + $dom[$dom[$key]['parent']]['borderposition']['page'] = $this->page; + $dom[$dom[$key]['parent']]['borderposition']['column'] = $this->current_column; + $dom[$dom[$key]['parent']]['borderposition']['y'] = $this->y + $tmp_cellspacing; + $xoffset = ($this->x - $dom[$dom[$key]['parent']]['borderposition']['x']); + $dom[$dom[$key]['parent']]['borderposition']['x'] += $xoffset; + $dom[$dom[$key]['parent']]['borderposition']['xmax'] += $xoffset; + // print table header (thead) + $this->writeHTML($this->thead, false, false, false, false, ''); + } + } + // move $key index forward to skip THEAD block + while ( ($key < $maxel) AND (!( + ($dom[$key]['tag'] AND $dom[$key]['opening'] AND ($dom[$key]['value'] == 'tr') AND (!isset($dom[$key]['thead']) OR !$dom[$key]['thead'])) + OR ($dom[$key]['tag'] AND (!$dom[$key]['opening']) AND ($dom[$key]['value'] == 'table'))) )) { + ++$key; + } + } + if ($dom[$key]['tag'] OR ($key == 0)) { + if ((($dom[$key]['value'] == 'table') OR ($dom[$key]['value'] == 'tr')) AND (isset($dom[$key]['align']))) { + $dom[$key]['align'] = ($this->rtl) ? 'R' : 'L'; + } + // vertically align image in line + if ((!$this->newline) AND ($dom[$key]['value'] == 'img') AND (isset($dom[$key]['height'])) AND ($dom[$key]['height'] > 0)) { + // get image height + $imgh = $this->getHTMLUnitToUnits($dom[$key]['height'], $this->lasth, 'px'); + // check for automatic line break + $autolinebreak = false; + if (isset($dom[$key]['width']) AND ($dom[$key]['width'] > 0)) { + $imgw = $this->getHTMLUnitToUnits($dom[$key]['width'], 1, 'px', false); + if (($this->rtl AND (($this->x - $imgw) < ($this->lMargin + $this->cell_padding['L']))) + OR (!$this->rtl AND (($this->x + $imgw) > ($this->w - $this->rMargin - $this->cell_padding['R'])))) { + // add automatic line break + $autolinebreak = true; + $this->Ln('', $cell); + // go back to evaluate this line break + --$key; + } + } + if (!$autolinebreak) { + if (!$this->InFooter) { + $pre_y = $this->y; + // check for page break + if ((!$this->checkPageBreak($imgh)) AND ($this->y < $pre_y)) { + // fix for multicolumn mode + $startliney = $this->y; + } + } + if ($this->page > $startlinepage) { + // fix line splitted over two pages + if (isset($this->footerlen[$startlinepage])) { + $curpos = $this->pagelen[$startlinepage] - $this->footerlen[$startlinepage]; + } + // line to be moved one page forward + $pagebuff = $this->getPageBuffer($startlinepage); + $linebeg = substr($pagebuff, $startlinepos, ($curpos - $startlinepos)); + $tstart = substr($pagebuff, 0, $startlinepos); + $tend = substr($this->getPageBuffer($startlinepage), $curpos); + // remove line from previous page + $this->setPageBuffer($startlinepage, $tstart.''.$tend); + $pagebuff = $this->getPageBuffer($this->page); + $tstart = substr($pagebuff, 0, $this->cntmrk[$this->page]); + $tend = substr($pagebuff, $this->cntmrk[$this->page]); + // add line start to current page + $yshift = $minstartliney - $this->y; + if ($fontaligned) { + $yshift += ($curfontsize / $this->k); + } + $try = sprintf('1 0 0 1 0 %.3F cm', ($yshift * $this->k)); + $this->setPageBuffer($this->page, $tstart."\nq\n".$try."\n".$linebeg."\nQ\n".$tend); + // shift the annotations and links + if (isset($this->PageAnnots[$this->page])) { + $next_pask = count($this->PageAnnots[$this->page]); + } else { + $next_pask = 0; + } + if (isset($this->PageAnnots[$startlinepage])) { + foreach ($this->PageAnnots[$startlinepage] as $pak => $pac) { + if ($pak >= $pask) { + $this->PageAnnots[$this->page][] = $pac; + unset($this->PageAnnots[$startlinepage][$pak]); + $npak = count($this->PageAnnots[$this->page]) - 1; + $this->PageAnnots[$this->page][$npak]['y'] -= $yshift; + } + } + } + $pask = $next_pask; + $startlinepos = $this->cntmrk[$this->page]; + $startlinepage = $this->page; + $startliney = $this->y; + $this->newline = false; + } + $this->y += ((($curfontsize * $this->cell_height_ratio / $this->k) + $curfontascent - $curfontdescent) / 2) - $imgh; + $minstartliney = min($this->y, $minstartliney); + $maxbottomliney = ($startliney + ($this->FontSize * $this->cell_height_ratio)); + } + } elseif (isset($dom[$key]['fontname']) OR isset($dom[$key]['fontstyle']) OR isset($dom[$key]['fontsize']) OR isset($dom[$key]['line-height'])) { + // account for different font size + $pfontname = $curfontname; + $pfontstyle = $curfontstyle; + $pfontsize = $curfontsize; + $fontname = isset($dom[$key]['fontname']) ? $dom[$key]['fontname'] : $curfontname; + $fontstyle = isset($dom[$key]['fontstyle']) ? $dom[$key]['fontstyle'] : $curfontstyle; + $fontsize = isset($dom[$key]['fontsize']) ? $dom[$key]['fontsize'] : $curfontsize; + $fontascent = $this->getFontAscent($fontname, $fontstyle, $fontsize); + $fontdescent = $this->getFontDescent($fontname, $fontstyle, $fontsize); + if ( ($fontname != $curfontname) OR ($fontstyle != $curfontstyle) OR ($fontsize != $curfontsize) + OR ($this->cell_height_ratio != $dom[$key]['line-height']) + OR ($dom[$key]['tag'] AND $dom[$key]['opening'] AND ($dom[$key]['value'] == 'li')) ) { + if ((!$this->newline) AND ($key < ($maxel - 1)) + AND ( (is_numeric($fontsize) AND ($fontsize >= 0) AND is_numeric($curfontsize) AND ($curfontsize >= 0) AND ($fontsize != $curfontsize)) + OR ($this->cell_height_ratio != $dom[$key]['line-height'])) + OR ($dom[$key]['tag'] AND $dom[$key]['opening'] AND ($dom[$key]['value'] == 'li')) ) { + if ($this->page > $startlinepage) { + // fix lines splitted over two pages + if (isset($this->footerlen[$startlinepage])) { + $curpos = $this->pagelen[$startlinepage] - $this->footerlen[$startlinepage]; + } + // line to be moved one page forward + $pagebuff = $this->getPageBuffer($startlinepage); + $linebeg = substr($pagebuff, $startlinepos, ($curpos - $startlinepos)); + $tstart = substr($pagebuff, 0, $startlinepos); + $tend = substr($this->getPageBuffer($startlinepage), $curpos); + // remove line start from previous page + $this->setPageBuffer($startlinepage, $tstart.''.$tend); + $pagebuff = $this->getPageBuffer($this->page); + $tstart = substr($pagebuff, 0, $this->cntmrk[$this->page]); + $tend = substr($pagebuff, $this->cntmrk[$this->page]); + // add line start to current page + $yshift = $minstartliney - $this->y; + $try = sprintf('1 0 0 1 0 %.3F cm', ($yshift * $this->k)); + $this->setPageBuffer($this->page, $tstart."\nq\n".$try."\n".$linebeg."\nQ\n".$tend); + // shift the annotations and links + if (isset($this->PageAnnots[$this->page])) { + $next_pask = count($this->PageAnnots[$this->page]); + } else { + $next_pask = 0; + } + if (isset($this->PageAnnots[$startlinepage])) { + foreach ($this->PageAnnots[$startlinepage] as $pak => $pac) { + if ($pak >= $pask) { + $this->PageAnnots[$this->page][] = $pac; + unset($this->PageAnnots[$startlinepage][$pak]); + $npak = count($this->PageAnnots[$this->page]) - 1; + $this->PageAnnots[$this->page][$npak]['y'] -= $yshift; + } + } + } + $pask = $next_pask; + $startlinepos = $this->cntmrk[$this->page]; + $startlinepage = $this->page; + $startliney = $this->y; + } + if (!isset($dom[$key]['line-height'])) { + $dom[$key]['line-height'] = $this->cell_height_ratio; + } + if (!$dom[$key]['block']) { + $this->y += (((($curfontsize * $this->cell_height_ratio ) - ($fontsize * $dom[$key]['line-height'])) / $this->k) + $curfontascent - $fontascent - $curfontdescent + $fontdescent) / 2; + if (($dom[$key]['value'] != 'sup') AND ($dom[$key]['value'] != 'sub')) { + $minstartliney = min($this->y, $minstartliney); + $maxbottomliney = max(($this->y + (($fontsize * $this->cell_height_ratio) / $this->k)), $maxbottomliney); + } + } + $this->cell_height_ratio = $dom[$key]['line-height']; + $fontaligned = true; + } + $this->SetFont($fontname, $fontstyle, $fontsize); + // reset row height + $this->resetLastH(); + $curfontname = $fontname; + $curfontstyle = $fontstyle; + $curfontsize = $fontsize; + $curfontascent = $fontascent; + $curfontdescent = $fontdescent; + } + } + // set text rendering mode + $textstroke = isset($dom[$key]['stroke']) ? $dom[$key]['stroke'] : $this->textstrokewidth; + $textfill = isset($dom[$key]['fill']) ? $dom[$key]['fill'] : (($this->textrendermode % 2) == 0); + $textclip = isset($dom[$key]['clip']) ? $dom[$key]['clip'] : ($this->textrendermode > 3); + $this->setTextRenderingMode($textstroke, $textfill, $textclip); + if (isset($dom[$key]['font-stretch']) AND ($dom[$key]['font-stretch'] !== false)) { + $this->setFontStretching($dom[$key]['font-stretch']); + } + if (isset($dom[$key]['letter-spacing']) AND ($dom[$key]['letter-spacing'] !== false)) { + $this->setFontSpacing($dom[$key]['letter-spacing']); + } + if (($plalign == 'J') AND $dom[$key]['block']) { + $plalign = ''; + } + // get current position on page buffer + $curpos = $this->pagelen[$startlinepage]; + if (isset($dom[$key]['bgcolor']) AND ($dom[$key]['bgcolor'] !== false)) { + $this->SetFillColorArray($dom[$key]['bgcolor']); + $wfill = true; + } else { + $wfill = $fill | false; + } + if (isset($dom[$key]['fgcolor']) AND ($dom[$key]['fgcolor'] !== false)) { + $this->SetTextColorArray($dom[$key]['fgcolor']); + } + if (isset($dom[$key]['strokecolor']) AND ($dom[$key]['strokecolor'] !== false)) { + $this->SetDrawColorArray($dom[$key]['strokecolor']); + } + if (isset($dom[$key]['align'])) { + $lalign = $dom[$key]['align']; + } + if ($this->empty_string($lalign)) { + $lalign = $align; + } + } + // align lines + if ($this->newline AND (strlen($dom[$key]['value']) > 0) AND ($dom[$key]['value'] != 'td') AND ($dom[$key]['value'] != 'th')) { + $newline = true; + $fontaligned = false; + // we are at the beginning of a new line + if (isset($startlinex)) { + $yshift = $minstartliney - $startliney; + if (($yshift > 0) OR ($this->page > $startlinepage)) { + $yshift = 0; + } + $t_x = 0; + // the last line must be shifted to be aligned as requested + $linew = abs($this->endlinex - $startlinex); + if ($this->inxobj) { + // we are inside an XObject template + $pstart = substr($this->xobjects[$this->xobjid]['outdata'], 0, $startlinepos); + if (isset($opentagpos)) { + $midpos = $opentagpos; + } else { + $midpos = 0; + } + if ($midpos > 0) { + $pmid = substr($this->xobjects[$this->xobjid]['outdata'], $startlinepos, ($midpos - $startlinepos)); + $pend = substr($this->xobjects[$this->xobjid]['outdata'], $midpos); + } else { + $pmid = substr($this->xobjects[$this->xobjid]['outdata'], $startlinepos); + $pend = ''; + } + } else { + $pstart = substr($this->getPageBuffer($startlinepage), 0, $startlinepos); + if (isset($opentagpos) AND isset($this->footerlen[$startlinepage]) AND (!$this->InFooter)) { + $this->footerpos[$startlinepage] = $this->pagelen[$startlinepage] - $this->footerlen[$startlinepage]; + $midpos = min($opentagpos, $this->footerpos[$startlinepage]); + } elseif (isset($opentagpos)) { + $midpos = $opentagpos; + } elseif (isset($this->footerlen[$startlinepage]) AND (!$this->InFooter)) { + $this->footerpos[$startlinepage] = $this->pagelen[$startlinepage] - $this->footerlen[$startlinepage]; + $midpos = $this->footerpos[$startlinepage]; + } else { + $midpos = 0; + } + if ($midpos > 0) { + $pmid = substr($this->getPageBuffer($startlinepage), $startlinepos, ($midpos - $startlinepos)); + $pend = substr($this->getPageBuffer($startlinepage), $midpos); + } else { + $pmid = substr($this->getPageBuffer($startlinepage), $startlinepos); + $pend = ''; + } + } + if ((isset($plalign) AND ((($plalign == 'C') OR ($plalign == 'J') OR (($plalign == 'R') AND (!$this->rtl)) OR (($plalign == 'L') AND ($this->rtl)))))) { + // calculate shifting amount + $tw = $w; + if (($plalign == 'J') AND $this->isRTLTextDir() AND ($this->num_columns > 1)) { + $tw += $this->cell_padding['R']; + } + if ($this->lMargin != $prevlMargin) { + $tw += ($prevlMargin - $this->lMargin); + } + if ($this->rMargin != $prevrMargin) { + $tw += ($prevrMargin - $this->rMargin); + } + $one_space_width = $this->GetStringWidth(chr(32)); + $no = 0; // number of spaces on a line contained on a single block + if ($this->isRTLTextDir()) { // RTL + // remove left space if exist + $pos1 = $this->revstrpos($pmid, '[('); + if ($pos1 > 0) { + $pos1 = intval($pos1); + if ($this->isUnicodeFont()) { + $pos2 = intval($this->revstrpos($pmid, '[('.chr(0).chr(32))); + $spacelen = 2; + } else { + $pos2 = intval($this->revstrpos($pmid, '[('.chr(32))); + $spacelen = 1; + } + if ($pos1 == $pos2) { + $pmid = substr($pmid, 0, ($pos1 + 2)).substr($pmid, ($pos1 + 2 + $spacelen)); + if (substr($pmid, $pos1, 4) == '[()]') { + $linew -= $one_space_width; + } elseif ($pos1 == strpos($pmid, '[(')) { + $no = 1; + } + } + } + } else { // LTR + // remove right space if exist + $pos1 = $this->revstrpos($pmid, ')]'); + if ($pos1 > 0) { + $pos1 = intval($pos1); + if ($this->isUnicodeFont()) { + $pos2 = intval($this->revstrpos($pmid, chr(0).chr(32).')]')) + 2; + $spacelen = 2; + } else { + $pos2 = intval($this->revstrpos($pmid, chr(32).')]')) + 1; + $spacelen = 1; + } + if ($pos1 == $pos2) { + $pmid = substr($pmid, 0, ($pos1 - $spacelen)).substr($pmid, $pos1); + $linew -= $one_space_width; + } + } + } + $mdiff = ($tw - $linew); + if ($plalign == 'C') { + if ($this->rtl) { + $t_x = -($mdiff / 2); + } else { + $t_x = ($mdiff / 2); + } + } elseif ($plalign == 'R') { + // right alignment on LTR document + $t_x = $mdiff; + } elseif ($plalign == 'L') { + // left alignment on RTL document + $t_x = -$mdiff; + } elseif (($plalign == 'J') AND ($plalign == $lalign)) { + // Justification + if ($this->isRTLTextDir()) { + // align text on the left + $t_x = -$mdiff; + } + $ns = 0; // number of spaces + $pmidtemp = $pmid; + // escape special characters + $pmidtemp = preg_replace('/[\\\][\(]/x', '\\#!#OP#!#', $pmidtemp); + $pmidtemp = preg_replace('/[\\\][\)]/x', '\\#!#CP#!#', $pmidtemp); + // search spaces + if (preg_match_all('/\[\(([^\)]*)\)\]/x', $pmidtemp, $lnstring, PREG_PATTERN_ORDER)) { + $spacestr = $this->getSpaceString(); + $maxkk = count($lnstring[1]) - 1; + for ($kk=0; $kk <= $maxkk; ++$kk) { + // restore special characters + $lnstring[1][$kk] = str_replace('#!#OP#!#', '(', $lnstring[1][$kk]); + $lnstring[1][$kk] = str_replace('#!#CP#!#', ')', $lnstring[1][$kk]); + // store number of spaces on the strings + $lnstring[2][$kk] = substr_count($lnstring[1][$kk], $spacestr); + // count total spaces on line + $ns += $lnstring[2][$kk]; + $lnstring[3][$kk] = $ns; + } + if ($ns == 0) { + $ns = 1; + } + // calculate additional space to add to each existing space + $spacewidth = ($mdiff / ($ns - $no)) * $this->k; + $spacewidthu = -1000 * ($mdiff + (($ns + $no) * $one_space_width)) / $ns / $this->FontSize; + if ($this->font_spacing != 0) { + // fixed spacing mode + $osw = -1000 * $this->font_spacing / $this->FontSize; + $spacewidthu += $osw; + } + $nsmax = $ns; + $ns = 0; + reset($lnstring); + $offset = 0; + $strcount = 0; + $prev_epsposbeg = 0; + $textpos = 0; + if ($this->isRTLTextDir()) { + $textpos = $this->wPt; + } + global $spacew; + while (preg_match('/([0-9\.\+\-]*)[\s](Td|cm|m|l|c|re)[\s]/x', $pmid, $strpiece, PREG_OFFSET_CAPTURE, $offset) == 1) { + // check if we are inside a string section '[( ... )]' + $stroffset = strpos($pmid, '[(', $offset); + if (($stroffset !== false) AND ($stroffset <= $strpiece[2][1])) { + // set offset to the end of string section + $offset = strpos($pmid, ')]', $stroffset); + while (($offset !== false) AND ($pmid{($offset - 1)} == '\\')) { + $offset = strpos($pmid, ')]', ($offset + 1)); + } + if ($offset === false) { + $this->Error('HTML Justification: malformed PDF code.'); + } + continue; + } + if ($this->isRTLTextDir()) { + $spacew = ($spacewidth * ($nsmax - $ns)); + } else { + $spacew = ($spacewidth * $ns); + } + $offset = $strpiece[2][1] + strlen($strpiece[2][0]); + $epsposbeg = strpos($pmid, 'q'.$this->epsmarker, $offset); + $epsposend = strpos($pmid, $this->epsmarker.'Q', $offset) + strlen($this->epsmarker.'Q'); + if ((($epsposbeg > 0) AND ($epsposend > 0) AND ($offset > $epsposbeg) AND ($offset < $epsposend)) + OR (($epsposbeg === false) AND ($epsposend > 0) AND ($offset < $epsposend))) { + // shift EPS images + $trx = sprintf('1 0 0 1 %.3F 0 cm', $spacew); + $epsposbeg = strpos($pmid, 'q'.$this->epsmarker, ($prev_epsposbeg - 6)); + $pmid_b = substr($pmid, 0, $epsposbeg); + $pmid_m = substr($pmid, $epsposbeg, ($epsposend - $epsposbeg)); + $pmid_e = substr($pmid, $epsposend); + $pmid = $pmid_b."\nq\n".$trx."\n".$pmid_m."\nQ\n".$pmid_e; + $offset = $epsposend; + continue; + + } + $prev_epsposbeg = $epsposbeg; + $currentxpos = 0; + // shift blocks of code + switch ($strpiece[2][0]) { + case 'Td': + case 'cm': + case 'm': + case 'l': { + // get current X position + preg_match('/([0-9\.\+\-]*)[\s]('.$strpiece[1][0].')[\s]('.$strpiece[2][0].')([\s]*)/x', $pmid, $xmatches); + $currentxpos = $xmatches[1]; + $textpos = $currentxpos; + if (($strcount <= $maxkk) AND ($strpiece[2][0] == 'Td')) { + $ns = $lnstring[3][$strcount]; + if ($this->isRTLTextDir()) { + $spacew = ($spacewidth * ($nsmax - $ns)); + } + ++$strcount; + } + // justify block + $pmid = preg_replace_callback('/([0-9\.\+\-]*)[\s]('.$strpiece[1][0].')[\s]('.$strpiece[2][0].')([\s]*)/x', + create_function('$matches', 'global $spacew; + $newx = sprintf("%.2F",(floatval($matches[1]) + $spacew)); + return "".$newx." ".$matches[2]." x*#!#*x".$matches[3].$matches[4];'), $pmid, 1); + break; + } + case 're': { + // justify block + if (!$this->empty_string($this->lispacer)) { + $this->lispacer = ''; + continue; + } + preg_match('/([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]('.$strpiece[1][0].')[\s](re)([\s]*)/x', $pmid, $xmatches); + $currentxpos = $xmatches[1]; + global $x_diff, $w_diff; + $x_diff = 0; + $w_diff = 0; + if ($this->isRTLTextDir()) { // RTL + if ($currentxpos < $textpos) { + $x_diff = ($spacewidth * ($nsmax - $lnstring[3][$strcount])); + $w_diff = ($spacewidth * $lnstring[2][$strcount]); + } else { + if ($strcount > 0) { + $x_diff = ($spacewidth * ($nsmax - $lnstring[3][($strcount - 1)])); + $w_diff = ($spacewidth * $lnstring[2][($strcount - 1)]); + } + } + } else { // LTR + if ($currentxpos > $textpos) { + if ($strcount > 0) { + $x_diff = ($spacewidth * $lnstring[3][($strcount - 1)]); + } + $w_diff = ($spacewidth * $lnstring[2][$strcount]); + } else { + if ($strcount > 1) { + $x_diff = ($spacewidth * $lnstring[3][($strcount - 2)]); + } + if ($strcount > 0) { + $w_diff = ($spacewidth * $lnstring[2][($strcount - 1)]); + } + } + } + $pmid = preg_replace_callback('/('.$xmatches[1].')[\s]('.$xmatches[2].')[\s]('.$xmatches[3].')[\s]('.$strpiece[1][0].')[\s](re)([\s]*)/x', + create_function('$matches', 'global $x_diff, $w_diff; + $newx = sprintf("%.2F",(floatval($matches[1]) + $x_diff)); + $neww = sprintf("%.2F",(floatval($matches[3]) + $w_diff)); + return "".$newx." ".$matches[2]." ".$neww." ".$matches[4]." x*#!#*x".$matches[5].$matches[6];'), $pmid, 1); + break; + } + case 'c': { + // get current X position + preg_match('/([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]('.$strpiece[1][0].')[\s](c)([\s]*)/x', $pmid, $xmatches); + $currentxpos = $xmatches[1]; + // justify block + $pmid = preg_replace_callback('/('.$xmatches[1].')[\s]('.$xmatches[2].')[\s]('.$xmatches[3].')[\s]('.$xmatches[4].')[\s]('.$xmatches[5].')[\s]('.$strpiece[1][0].')[\s](c)([\s]*)/x', + create_function('$matches', 'global $spacew; + $newx1 = sprintf("%.3F",(floatval($matches[1]) + $spacew)); + $newx2 = sprintf("%.3F",(floatval($matches[3]) + $spacew)); + $newx3 = sprintf("%.3F",(floatval($matches[5]) + $spacew)); + return "".$newx1." ".$matches[2]." ".$newx2." ".$matches[4]." ".$newx3." ".$matches[6]." x*#!#*x".$matches[7].$matches[8];'), $pmid, 1); + break; + } + } + // shift the annotations and links + $cxpos = ($currentxpos / $this->k); + $lmpos = ($this->lMargin + $this->cell_padding['L'] + $this->feps); + if ($this->inxobj) { + // we are inside an XObject template + foreach ($this->xobjects[$this->xobjid]['annotations'] as $pak => $pac) { + if (($pac['y'] >= $minstartliney) AND (($pac['x'] * $this->k) >= ($currentxpos - $this->feps)) AND (($pac['x'] * $this->k) <= ($currentxpos + $this->feps))) { + if ($cxpos > $lmpos) { + $this->xobjects[$this->xobjid]['annotations'][$pak]['x'] += ($spacew / $this->k); + $this->xobjects[$this->xobjid]['annotations'][$pak]['w'] += (($spacewidth * $pac['numspaces']) / $this->k); + } else { + $this->xobjects[$this->xobjid]['annotations'][$pak]['w'] += (($spacewidth * $pac['numspaces']) / $this->k); + } + break; + } + } + } elseif (isset($this->PageAnnots[$this->page])) { + foreach ($this->PageAnnots[$this->page] as $pak => $pac) { + if (($pac['y'] >= $minstartliney) AND (($pac['x'] * $this->k) >= ($currentxpos - $this->feps)) AND (($pac['x'] * $this->k) <= ($currentxpos + $this->feps))) { + if ($cxpos > $lmpos) { + $this->PageAnnots[$this->page][$pak]['x'] += ($spacew / $this->k); + $this->PageAnnots[$this->page][$pak]['w'] += (($spacewidth * $pac['numspaces']) / $this->k); + } else { + $this->PageAnnots[$this->page][$pak]['w'] += (($spacewidth * $pac['numspaces']) / $this->k); + } + break; + } + } + } + } // end of while + // remove markers + $pmid = str_replace('x*#!#*x', '', $pmid); + if ($this->isUnicodeFont()) { + // multibyte characters + $spacew = $spacewidthu; + if ($this->font_stretching != 100) { + // word spacing is affected by stretching + $spacew /= ($this->font_stretching / 100); + } + $pmidtemp = $pmid; + // escape special characters + $pmidtemp = preg_replace('/[\\\][\(]/x', '\\#!#OP#!#', $pmidtemp); + $pmidtemp = preg_replace('/[\\\][\)]/x', '\\#!#CP#!#', $pmidtemp); + $pmid = preg_replace_callback("/\[\(([^\)]*)\)\]/x", + create_function('$matches', 'global $spacew; + $matches[1] = str_replace("#!#OP#!#", "(", $matches[1]); + $matches[1] = str_replace("#!#CP#!#", ")", $matches[1]); + return "[(".str_replace(chr(0).chr(32), ") ".sprintf("%.3F", $spacew)." (", $matches[1]).")]";'), $pmidtemp); + if ($this->inxobj) { + // we are inside an XObject template + $this->xobjects[$this->xobjid]['outdata'] = $pstart."\n".$pmid."\n".$pend; + } else { + $this->setPageBuffer($startlinepage, $pstart."\n".$pmid."\n".$pend); + } + $endlinepos = strlen($pstart."\n".$pmid."\n"); + } else { + // non-unicode (single-byte characters) + if ($this->font_stretching != 100) { + // word spacing (Tw) is affected by stretching + $spacewidth /= ($this->font_stretching / 100); + } + $rs = sprintf('%.3F Tw', $spacewidth); + $pmid = preg_replace("/\[\(/x", $rs.' [(', $pmid); + if ($this->inxobj) { + // we are inside an XObject template + $this->xobjects[$this->xobjid]['outdata'] = $pstart."\n".$pmid."\nBT 0 Tw ET\n".$pend; + } else { + $this->setPageBuffer($startlinepage, $pstart."\n".$pmid."\nBT 0 Tw ET\n".$pend); + } + $endlinepos = strlen($pstart."\n".$pmid."\nBT 0 Tw ET\n"); + } + } + } // end of J + } // end if $startlinex + if (($t_x != 0) OR ($yshift < 0)) { + // shift the line + $trx = sprintf('1 0 0 1 %.3F %.3F cm', ($t_x * $this->k), ($yshift * $this->k)); + $pstart .= "\nq\n".$trx."\n".$pmid."\nQ\n"; + $endlinepos = strlen($pstart); + if ($this->inxobj) { + // we are inside an XObject template + $this->xobjects[$this->xobjid]['outdata'] = $pstart.$pend; + foreach ($this->xobjects[$this->xobjid]['annotations'] as $pak => $pac) { + if ($pak >= $pask) { + $this->xobjects[$this->xobjid]['annotations'][$pak]['x'] += $t_x; + $this->xobjects[$this->xobjid]['annotations'][$pak]['y'] -= $yshift; + } + } + } else { + $this->setPageBuffer($startlinepage, $pstart.$pend); + // shift the annotations and links + if (isset($this->PageAnnots[$this->page])) { + foreach ($this->PageAnnots[$this->page] as $pak => $pac) { + if ($pak >= $pask) { + $this->PageAnnots[$this->page][$pak]['x'] += $t_x; + $this->PageAnnots[$this->page][$pak]['y'] -= $yshift; + } + } + } + } + $this->y -= $yshift; + } + } + $pbrk = $this->checkPageBreak($this->lasth); + $this->newline = false; + $startlinex = $this->x; + $startliney = $this->y; + if ($dom[$dom[$key]['parent']]['value'] == 'sup') { + $startliney -= ((0.3 * $this->FontSizePt) / $this->k); + } elseif ($dom[$dom[$key]['parent']]['value'] == 'sub') { + $startliney -= (($this->FontSizePt / 0.7) / $this->k); + } else { + $minstartliney = $startliney; + $maxbottomliney = ($this->y + (($fontsize * $this->cell_height_ratio) / $this->k)); + } + $startlinepage = $this->page; + if (isset($endlinepos) AND (!$pbrk)) { + $startlinepos = $endlinepos; + } else { + if ($this->inxobj) { + // we are inside an XObject template + $startlinepos = strlen($this->xobjects[$this->xobjid]['outdata']); + } elseif (!$this->InFooter) { + if (isset($this->footerlen[$this->page])) { + $this->footerpos[$this->page] = $this->pagelen[$this->page] - $this->footerlen[$this->page]; + } else { + $this->footerpos[$this->page] = $this->pagelen[$this->page]; + } + $startlinepos = $this->footerpos[$this->page]; + } else { + $startlinepos = $this->pagelen[$this->page]; + } + } + unset($endlinepos); + $plalign = $lalign; + if (isset($this->PageAnnots[$this->page])) { + $pask = count($this->PageAnnots[$this->page]); + } else { + $pask = 0; + } + if (!($dom[$key]['tag'] AND !$dom[$key]['opening'] AND ($dom[$key]['value'] == 'table') + AND (isset($this->emptypagemrk[$this->page])) + AND ($this->emptypagemrk[$this->page] == $this->pagelen[$this->page]))) { + $this->SetFont($fontname, $fontstyle, $fontsize); + if ($wfill) { + $this->SetFillColorArray($this->bgcolor); + } + } + } // end newline + if (isset($opentagpos)) { + unset($opentagpos); + } + if ($dom[$key]['tag']) { + if ($dom[$key]['opening']) { + // get text indentation (if any) + if (isset($dom[$key]['text-indent']) AND $dom[$key]['block']) { + $this->textindent = $dom[$key]['text-indent']; + $this->newline = true; + } + // table + if ($dom[$key]['value'] == 'table') { + // available page width + if ($this->rtl) { + $wtmp = $this->x - $this->lMargin; + } else { + $wtmp = $this->w - $this->rMargin - $this->x; + } + // get cell spacing + if (isset($dom[$key]['attribute']['cellspacing'])) { + $clsp = $this->getHTMLUnitToUnits($dom[$key]['attribute']['cellspacing'], 1, 'px'); + $cellspacing = array('H' => $clsp, 'V' => $clsp); + } elseif (isset($dom[$key]['border-spacing'])) { + $cellspacing = $dom[$key]['border-spacing']; + } else { + $cellspacing = array('H' => 0, 'V' => 0); + } + // table width + if (isset($dom[$key]['width'])) { + $table_width = $this->getHTMLUnitToUnits($dom[$key]['width'], $wtmp, 'px'); + } else { + $table_width = $wtmp; + } + $table_width -= (2 * $cellspacing['H']); + if (!$this->inthead) { + $this->y += $cellspacing['V']; + } + if ($this->rtl) { + $cellspacingx = -$cellspacing['H']; + } else { + $cellspacingx = $cellspacing['H']; + } + // total table width without cellspaces + $table_columns_width = ($table_width - ($cellspacing['H'] * ($dom[$key]['cols'] - 1))); + // minimum column width + $table_min_column_width = ($table_columns_width / $dom[$key]['cols']); + // array of custom column widths + $table_colwidths = array_fill(0, $dom[$key]['cols'], $table_min_column_width); + } + // table row + if ($dom[$key]['value'] == 'tr') { + // reset column counter + $colid = 0; + } + // table cell + if (($dom[$key]['value'] == 'td') OR ($dom[$key]['value'] == 'th')) { + $trid = $dom[$key]['parent']; + $table_el = $dom[$trid]['parent']; + if (!isset($dom[$table_el]['cols'])) { + $dom[$table_el]['cols'] = $dom[$trid]['cols']; + } + // store border info + $tdborder = 0; + if (isset($dom[$key]['border']) AND !empty($dom[$key]['border'])) { + $tdborder = $dom[$key]['border']; + } + $colspan = $dom[$key]['attribute']['colspan']; + $old_cell_padding = $this->cell_padding; + if (isset($dom[($dom[$trid]['parent'])]['attribute']['cellpadding'])) { + $crclpd = $this->getHTMLUnitToUnits($dom[($dom[$trid]['parent'])]['attribute']['cellpadding'], 1, 'px'); + $current_cell_padding = array('L' => $crclpd, 'T' => $crclpd, 'R' => $crclpd, 'B' => $crclpd); + } elseif (isset($dom[($dom[$trid]['parent'])]['padding'])) { + $current_cell_padding = $dom[($dom[$trid]['parent'])]['padding']; + } else { + $current_cell_padding = array('L' => 0, 'T' => 0, 'R' => 0, 'B' => 0); + } + $this->cell_padding = $current_cell_padding; + if (isset($dom[$key]['height'])) { + // minimum cell height + $cellh = $this->getHTMLUnitToUnits($dom[$key]['height'], 0, 'px'); + } else { + $cellh = 0; + } + if (isset($dom[$key]['content'])) { + $cell_content = $dom[$key]['content']; + } else { + $cell_content = ' '; + } + $tagtype = $dom[$key]['value']; + $parentid = $key; + while (($key < $maxel) AND (!(($dom[$key]['tag']) AND (!$dom[$key]['opening']) AND ($dom[$key]['value'] == $tagtype) AND ($dom[$key]['parent'] == $parentid)))) { + // move $key index forward + ++$key; + } + if (!isset($dom[$trid]['startpage'])) { + $dom[$trid]['startpage'] = $this->page; + } else { + $this->setPage($dom[$trid]['startpage']); + } + if (!isset($dom[$trid]['startcolumn'])) { + $dom[$trid]['startcolumn'] = $this->current_column; + } elseif ($this->current_column != $dom[$trid]['startcolumn']) { + $tmpx = $this->x; + $this->selectColumn($dom[$trid]['startcolumn']); + $this->x = $tmpx; + } + if (!isset($dom[$trid]['starty'])) { + $dom[$trid]['starty'] = $this->y; + } else { + $this->y = $dom[$trid]['starty']; + } + if (!isset($dom[$trid]['startx'])) { + $dom[$trid]['startx'] = $this->x; + $this->x += $cellspacingx; + } else { + $this->x += ($cellspacingx / 2); + } + if (isset($dom[$parentid]['attribute']['rowspan'])) { + $rowspan = intval($dom[$parentid]['attribute']['rowspan']); + } else { + $rowspan = 1; + } + // skip row-spanned cells started on the previous rows + if (isset($dom[$table_el]['rowspans'])) { + $rsk = 0; + $rskmax = count($dom[$table_el]['rowspans']); + while ($rsk < $rskmax) { + $trwsp = $dom[$table_el]['rowspans'][$rsk]; + $rsstartx = $trwsp['startx']; + $rsendx = $trwsp['endx']; + // account for margin changes + if ($trwsp['startpage'] < $this->page) { + if (($this->rtl) AND ($this->pagedim[$this->page]['orm'] != $this->pagedim[$trwsp['startpage']]['orm'])) { + $dl = ($this->pagedim[$this->page]['orm'] - $this->pagedim[$trwsp['startpage']]['orm']); + $rsstartx -= $dl; + $rsendx -= $dl; + } elseif ((!$this->rtl) AND ($this->pagedim[$this->page]['olm'] != $this->pagedim[$trwsp['startpage']]['olm'])) { + $dl = ($this->pagedim[$this->page]['olm'] - $this->pagedim[$trwsp['startpage']]['olm']); + $rsstartx += $dl; + $rsendx += $dl; + } + } + if (($trwsp['rowspan'] > 0) + AND ($rsstartx > ($this->x - $cellspacing['H'] - $current_cell_padding['L'] - $this->feps)) + AND ($rsstartx < ($this->x + $cellspacing['H'] + $current_cell_padding['R'] + $this->feps)) + AND (($trwsp['starty'] < ($this->y - $this->feps)) OR ($trwsp['startpage'] < $this->page) OR ($trwsp['startcolumn'] < $this->current_column))) { + // set the starting X position of the current cell + $this->x = $rsendx + $cellspacingx; + // increment column indicator + $colid += $trwsp['colspan']; + if (($trwsp['rowspan'] == 1) + AND (isset($dom[$trid]['endy'])) + AND (isset($dom[$trid]['endpage'])) + AND (isset($dom[$trid]['endcolumn'])) + AND ($trwsp['endpage'] == $dom[$trid]['endpage']) + AND ($trwsp['endcolumn'] == $dom[$trid]['endcolumn'])) { + // set ending Y position for row + $dom[$table_el]['rowspans'][$rsk]['endy'] = max($dom[$trid]['endy'], $trwsp['endy']); + $dom[$trid]['endy'] = $dom[$table_el]['rowspans'][$rsk]['endy']; + } + $rsk = 0; + } else { + ++$rsk; + } + } + } + if (isset($dom[$parentid]['width'])) { + // user specified width + $cellw = $this->getHTMLUnitToUnits($dom[$parentid]['width'], $table_columns_width, 'px'); + $tmpcw = ($cellw / $colspan); + for ($i = 0; $i < $colspan; ++$i) { + $table_colwidths[($colid + $i)] = $tmpcw; + } + } else { + // inherit column width + $cellw = 0; + for ($i = 0; $i < $colspan; ++$i) { + $cellw += $table_colwidths[($colid + $i)]; + } + } + $cellw += (($colspan - 1) * $cellspacing['H']); + // increment column indicator + $colid += $colspan; + // add rowspan information to table element + if ($rowspan > 1) { + $trsid = array_push($dom[$table_el]['rowspans'], array('trid' => $trid, 'rowspan' => $rowspan, 'mrowspan' => $rowspan, 'colspan' => $colspan, 'startpage' => $this->page, 'startcolumn' => $this->current_column, 'startx' => $this->x, 'starty' => $this->y)); + } + $cellid = array_push($dom[$trid]['cellpos'], array('startx' => $this->x)); + if ($rowspan > 1) { + $dom[$trid]['cellpos'][($cellid - 1)]['rowspanid'] = ($trsid - 1); + } + // push background colors + if (isset($dom[$parentid]['bgcolor']) AND ($dom[$parentid]['bgcolor'] !== false)) { + $dom[$trid]['cellpos'][($cellid - 1)]['bgcolor'] = $dom[$parentid]['bgcolor']; + } + // store border info + if (isset($tdborder) AND !empty($tdborder)) { + $dom[$trid]['cellpos'][($cellid - 1)]['border'] = $tdborder; + } + $prevLastH = $this->lasth; + // store some info for multicolumn mode + if ($this->rtl) { + $this->colxshift['x'] = $this->w - $this->x - $this->rMargin; + } else { + $this->colxshift['x'] = $this->x - $this->lMargin; + } + $this->colxshift['s'] = $cellspacing; + $this->colxshift['p'] = $current_cell_padding; + // ****** write the cell content ****** + $this->MultiCell($cellw, $cellh, $cell_content, false, $lalign, false, 2, '', '', true, 0, true); + // restore some values + $this->colxshift = array('x' => 0, 's' => array('H' => 0, 'V' => 0), 'p' => array('L' => 0, 'T' => 0, 'R' => 0, 'B' => 0)); + $this->lasth = $prevLastH; + $this->cell_padding = $old_cell_padding; + $dom[$trid]['cellpos'][($cellid - 1)]['endx'] = $this->x; + // update the end of row position + if ($rowspan <= 1) { + if (isset($dom[$trid]['endy'])) { + if (($this->page == $dom[$trid]['endpage']) AND ($this->current_column == $dom[$trid]['endcolumn'])) { + $dom[$trid]['endy'] = max($this->y, $dom[$trid]['endy']); + } elseif (($this->page > $dom[$trid]['endpage']) OR ($this->current_column > $dom[$trid]['endcolumn'])) { + $dom[$trid]['endy'] = $this->y; + } + } else { + $dom[$trid]['endy'] = $this->y; + } + if (isset($dom[$trid]['endpage'])) { + $dom[$trid]['endpage'] = max($this->page, $dom[$trid]['endpage']); + } else { + $dom[$trid]['endpage'] = $this->page; + } + if (isset($dom[$trid]['endcolumn'])) { + $dom[$trid]['endcolumn'] = max($this->current_column, $dom[$trid]['endcolumn']); + } else { + $dom[$trid]['endcolumn'] = $this->current_column; + } + } else { + // account for row-spanned cells + $dom[$table_el]['rowspans'][($trsid - 1)]['endx'] = $this->x; + $dom[$table_el]['rowspans'][($trsid - 1)]['endy'] = $this->y; + $dom[$table_el]['rowspans'][($trsid - 1)]['endpage'] = $this->page; + $dom[$table_el]['rowspans'][($trsid - 1)]['endcolumn'] = $this->current_column; + } + if (isset($dom[$table_el]['rowspans'])) { + // update endy and endpage on rowspanned cells + foreach ($dom[$table_el]['rowspans'] as $k => $trwsp) { + if ($trwsp['rowspan'] > 0) { + if (isset($dom[$trid]['endpage'])) { + if (($trwsp['endpage'] == $dom[$trid]['endpage']) AND ($trwsp['endcolumn'] == $dom[$trid]['endcolumn'])) { + $dom[$table_el]['rowspans'][$k]['endy'] = max($dom[$trid]['endy'], $trwsp['endy']); + } elseif (($trwsp['endpage'] < $dom[$trid]['endpage']) OR ($trwsp['endcolumn'] < $dom[$trid]['endcolumn'])) { + $dom[$table_el]['rowspans'][$k]['endy'] = $dom[$trid]['endy']; + $dom[$table_el]['rowspans'][$k]['endpage'] = $dom[$trid]['endpage']; + $dom[$table_el]['rowspans'][$k]['endcolumn'] = $dom[$trid]['endcolumn']; + } else { + $dom[$trid]['endy'] = $this->pagedim[$dom[$trid]['endpage']]['hk'] - $this->pagedim[$dom[$trid]['endpage']]['bm']; + } + } + } + } + } + $this->x += ($cellspacingx / 2); + } else { + // opening tag (or self-closing tag) + if (!isset($opentagpos)) { + if ($this->inxobj) { + // we are inside an XObject template + $opentagpos = strlen($this->xobjects[$this->xobjid]['outdata']); + } elseif (!$this->InFooter) { + if (isset($this->footerlen[$this->page])) { + $this->footerpos[$this->page] = $this->pagelen[$this->page] - $this->footerlen[$this->page]; + } else { + $this->footerpos[$this->page] = $this->pagelen[$this->page]; + } + $opentagpos = $this->footerpos[$this->page]; + } + } + $this->openHTMLTagHandler($dom, $key, $cell); + } + } else { // closing tag + $prev_numpages = $this->numpages; + $old_bordermrk = $this->bordermrk[$this->page]; + $this->closeHTMLTagHandler($dom, $key, $cell, $maxbottomliney); + if ($this->bordermrk[$this->page] > $old_bordermrk) { + $startlinepos += ($this->bordermrk[$this->page] - $old_bordermrk); + } + if ($prev_numpages > $this->numpages) { + $startlinepage = $this->page; + } + } + } elseif (strlen($dom[$key]['value']) > 0) { + // print list-item + if (!$this->empty_string($this->lispacer) AND ($this->lispacer != '^')) { + $this->SetFont($pfontname, $pfontstyle, $pfontsize); + $this->resetLastH(); + $minstartliney = $this->y; + $maxbottomliney = ($startliney + ($this->FontSize * $this->cell_height_ratio)); + $this->putHtmlListBullet($this->listnum, $this->lispacer, $pfontsize); + $this->SetFont($curfontname, $curfontstyle, $curfontsize); + $this->resetLastH(); + if (is_numeric($pfontsize) AND ($pfontsize > 0) AND is_numeric($curfontsize) AND ($curfontsize > 0) AND ($pfontsize != $curfontsize)) { + $pfontascent = $this->getFontAscent($pfontname, $pfontstyle, $pfontsize); + $pfontdescent = $this->getFontDescent($pfontname, $pfontstyle, $pfontsize); + $this->y += ((($pfontsize - $curfontsize) * $this->cell_height_ratio / $this->k) + $pfontascent - $curfontascent - $pfontdescent + $curfontdescent) / 2; + $minstartliney = min($this->y, $minstartliney); + $maxbottomliney = max(($this->y + (($pfontsize * $this->cell_height_ratio) / $this->k)), $maxbottomliney); + } + } + // text + $this->htmlvspace = 0; + if ((!$this->premode) AND $this->isRTLTextDir()) { + // reverse spaces order + $lsp = ''; // left spaces + $rsp = ''; // right spaces + if (preg_match('/^('.$this->re_space['p'].'+)/'.$this->re_space['m'], $dom[$key]['value'], $matches)) { + $lsp = $matches[1]; + } + if (preg_match('/('.$this->re_space['p'].'+)$/'.$this->re_space['m'], $dom[$key]['value'], $matches)) { + $rsp = $matches[1]; + } + $dom[$key]['value'] = $rsp.$this->stringTrim($dom[$key]['value']).$lsp; + } + if ($newline) { + if (!$this->premode) { + $prelen = strlen($dom[$key]['value']); + if ($this->isRTLTextDir()) { + // right trim except non-breaking space + $dom[$key]['value'] = $this->stringRightTrim($dom[$key]['value']); + } else { + // left trim except non-breaking space + $dom[$key]['value'] = $this->stringLeftTrim($dom[$key]['value']); + } + $postlen = strlen($dom[$key]['value']); + if (($postlen == 0) AND ($prelen > 0)) { + $dom[$key]['trimmed_space'] = true; + } + } + $newline = false; + $firstblock = true; + } else { + $firstblock = false; + // replace empty multiple spaces string with a single space + $dom[$key]['value'] = preg_replace('/^'.$this->re_space['p'].'+$/'.$this->re_space['m'], chr(32), $dom[$key]['value']); + } + $strrest = ''; + if ($this->rtl) { + $this->x -= $this->textindent; + } else { + $this->x += $this->textindent; + } + if (!isset($dom[$key]['trimmed_space']) OR !$dom[$key]['trimmed_space']) { + $strlinelen = $this->GetStringWidth($dom[$key]['value']); + if (!empty($this->HREF) AND (isset($this->HREF['url']))) { + // HTML
        Link + $hrefcolor = ''; + if (isset($dom[($dom[$key]['parent'])]['fgcolor']) AND ($dom[($dom[$key]['parent'])]['fgcolor'] !== false)) { + $hrefcolor = $dom[($dom[$key]['parent'])]['fgcolor']; + } + $hrefstyle = -1; + if (isset($dom[($dom[$key]['parent'])]['fontstyle']) AND ($dom[($dom[$key]['parent'])]['fontstyle'] !== false)) { + $hrefstyle = $dom[($dom[$key]['parent'])]['fontstyle']; + } + $strrest = $this->addHtmlLink($this->HREF['url'], $dom[$key]['value'], $wfill, true, $hrefcolor, $hrefstyle, true); + } else { + $wadj = 0; // space to leave for block continuity + $adjblks = 0; // number of blocks + if ($this->rtl) { + $cwa = $this->x - $this->lMargin; + } else { + $cwa = $this->w - $this->rMargin - $this->x; + } + if ($strlinelen < $cwa) { + // check the next text blocks for continuity + $nkey = ($key + 1); + $write_block = true; + $same_textdir = true; + $tmp_fontname = $this->FontFamily; + $tmp_fontstyle = $this->FontStyle; + $tmp_fontsize = $this->FontSizePt; + while ($write_block AND isset($dom[$nkey])) { + if ($dom[$nkey]['tag']) { + if ($dom[$nkey]['block']) { + // end of block + $write_block = false; + } + $tmp_fontname = isset($dom[$nkey]['fontname']) ? $dom[$nkey]['fontname'] : $this->FontFamily; + $tmp_fontstyle = isset($dom[$nkey]['fontstyle']) ? $dom[$nkey]['fontstyle'] : $this->FontStyle; + $tmp_fontsize = isset($dom[$nkey]['fontsize']) ? $dom[$nkey]['fontsize'] : $this->FontSizePt; + $same_textdir = ($dom[$nkey]['dir'] == $dom[$key]['dir']); + } else { + $nextstr = preg_split('/'.$this->re_space['p'].'+/'.$this->re_space['m'], $dom[$nkey]['value']); + if (isset($nextstr[0])) { + if ($same_textdir) { + $wadj += $this->GetStringWidth($nextstr[0], $tmp_fontname, $tmp_fontstyle, $tmp_fontsize); + } + ++$adjblks; + } + if (isset($nextstr[1])) { + $write_block = false; + } + } + ++$nkey; + } + } + // check for reversed text direction + if (($wadj > 0) AND (($this->rtl AND ($this->tmprtl === 'L')) OR (!$this->rtl AND ($this->tmprtl === 'R')))) { + // LTR text on RTL direction or RTL text on LTR direction + $reverse_dir = true; + $this->rtl = !$this->rtl; + $revshift = ($strlinelen + $wadj + 0.000001); // add little quantity for rounding problems + if ($this->rtl) { + $this->x += $revshift; + } else { + $this->x -= $revshift; + } + $xws = $this->x; + } + // ****** write only until the end of the line and get the rest ****** + $strrest = $this->Write($this->lasth, $dom[$key]['value'], '', $wfill, '', false, 0, true, $firstblock, 0, $wadj); + // restore default direction + if ($reverse_dir AND ($wadj == 0)) { + $this->x = $xws; + $this->rtl = !$this->rtl; + $reverse_dir = false; + } + } + } + $this->textindent = 0; + if (strlen($strrest) > 0) { + // store the remaining string on the previous $key position + $this->newline = true; + if ($strrest == $dom[$key]['value']) { + // used to avoid infinite loop + ++$loop; + } else { + $loop = 0; + } + $dom[$key]['value'] = $strrest; + if ($cell) { + if ($this->rtl) { + $this->x -= $this->cell_padding['R']; + } else { + $this->x += $this->cell_padding['L']; + } + } + if ($loop < 3) { + --$key; + } + } else { + $loop = 0; + } + } + ++$key; + if (isset($dom[$key]['tag']) AND $dom[$key]['tag'] AND (!isset($dom[$key]['opening']) OR !$dom[$key]['opening']) AND isset($dom[($dom[$key]['parent'])]['attribute']['nobr']) AND ($dom[($dom[$key]['parent'])]['attribute']['nobr'] == 'true')) { + // check if we are on a new page or on a new column + if ((!$undo) AND ($this->y < $this->start_transaction_y)) { + // we are on a new page or on a new column and the total object height is less than the available vertical space. + // restore previous object + $this->rollbackTransaction(true); + // restore previous values + foreach ($this_method_vars as $vkey => $vval) { + $$vkey = $vval; + } + // add a page (or trig AcceptPageBreak() for multicolumn mode) + $pre_y = $this->y; + if ((!$this->checkPageBreak($this->PageBreakTrigger + 1)) AND ($this->y < $pre_y)) { + $startliney = $this->y; + } + $undo = true; // avoid infinite loop + } else { + $undo = false; + } + } + } // end for each $key + // align the last line + if (isset($startlinex)) { + $yshift = $minstartliney - $startliney; + if (($yshift > 0) OR ($this->page > $startlinepage)) { + $yshift = 0; + } + $t_x = 0; + // the last line must be shifted to be aligned as requested + $linew = abs($this->endlinex - $startlinex); + if ($this->inxobj) { + // we are inside an XObject template + $pstart = substr($this->xobjects[$this->xobjid]['outdata'], 0, $startlinepos); + if (isset($opentagpos)) { + $midpos = $opentagpos; + } else { + $midpos = 0; + } + if ($midpos > 0) { + $pmid = substr($this->xobjects[$this->xobjid]['outdata'], $startlinepos, ($midpos - $startlinepos)); + $pend = substr($this->xobjects[$this->xobjid]['outdata'], $midpos); + } else { + $pmid = substr($this->xobjects[$this->xobjid]['outdata'], $startlinepos); + $pend = ''; + } + } else { + $pstart = substr($this->getPageBuffer($startlinepage), 0, $startlinepos); + if (isset($opentagpos) AND isset($this->footerlen[$startlinepage]) AND (!$this->InFooter)) { + $this->footerpos[$startlinepage] = $this->pagelen[$startlinepage] - $this->footerlen[$startlinepage]; + $midpos = min($opentagpos, $this->footerpos[$startlinepage]); + } elseif (isset($opentagpos)) { + $midpos = $opentagpos; + } elseif (isset($this->footerlen[$startlinepage]) AND (!$this->InFooter)) { + $this->footerpos[$startlinepage] = $this->pagelen[$startlinepage] - $this->footerlen[$startlinepage]; + $midpos = $this->footerpos[$startlinepage]; + } else { + $midpos = 0; + } + if ($midpos > 0) { + $pmid = substr($this->getPageBuffer($startlinepage), $startlinepos, ($midpos - $startlinepos)); + $pend = substr($this->getPageBuffer($startlinepage), $midpos); + } else { + $pmid = substr($this->getPageBuffer($startlinepage), $startlinepos); + $pend = ''; + } + } + if ((isset($plalign) AND ((($plalign == 'C') OR (($plalign == 'R') AND (!$this->rtl)) OR (($plalign == 'L') AND ($this->rtl)))))) { + // calculate shifting amount + $tw = $w; + if ($this->lMargin != $prevlMargin) { + $tw += ($prevlMargin - $this->lMargin); + } + if ($this->rMargin != $prevrMargin) { + $tw += ($prevrMargin - $this->rMargin); + } + $one_space_width = $this->GetStringWidth(chr(32)); + $no = 0; // number of spaces on a line contained on a single block + if ($this->isRTLTextDir()) { // RTL + // remove left space if exist + $pos1 = $this->revstrpos($pmid, '[('); + if ($pos1 > 0) { + $pos1 = intval($pos1); + if ($this->isUnicodeFont()) { + $pos2 = intval($this->revstrpos($pmid, '[('.chr(0).chr(32))); + $spacelen = 2; + } else { + $pos2 = intval($this->revstrpos($pmid, '[('.chr(32))); + $spacelen = 1; + } + if ($pos1 == $pos2) { + $pmid = substr($pmid, 0, ($pos1 + 2)).substr($pmid, ($pos1 + 2 + $spacelen)); + if (substr($pmid, $pos1, 4) == '[()]') { + $linew -= $one_space_width; + } elseif ($pos1 == strpos($pmid, '[(')) { + $no = 1; + } + } + } + } else { // LTR + // remove right space if exist + $pos1 = $this->revstrpos($pmid, ')]'); + if ($pos1 > 0) { + $pos1 = intval($pos1); + if ($this->isUnicodeFont()) { + $pos2 = intval($this->revstrpos($pmid, chr(0).chr(32).')]')) + 2; + $spacelen = 2; + } else { + $pos2 = intval($this->revstrpos($pmid, chr(32).')]')) + 1; + $spacelen = 1; + } + if ($pos1 == $pos2) { + $pmid = substr($pmid, 0, ($pos1 - $spacelen)).substr($pmid, $pos1); + $linew -= $one_space_width; + } + } + } + $mdiff = ($tw - $linew); + if ($plalign == 'C') { + if ($this->rtl) { + $t_x = -($mdiff / 2); + } else { + $t_x = ($mdiff / 2); + } + } elseif ($plalign == 'R') { + // right alignment on LTR document + $t_x = $mdiff; + } elseif ($plalign == 'L') { + // left alignment on RTL document + $t_x = -$mdiff; + } + } // end if startlinex + if (($t_x != 0) OR ($yshift < 0)) { + // shift the line + $trx = sprintf('1 0 0 1 %.3F %.3F cm', ($t_x * $this->k), ($yshift * $this->k)); + $pstart .= "\nq\n".$trx."\n".$pmid."\nQ\n"; + $endlinepos = strlen($pstart); + if ($this->inxobj) { + // we are inside an XObject template + $this->xobjects[$this->xobjid]['outdata'] = $pstart.$pend; + foreach ($this->xobjects[$this->xobjid]['annotations'] as $pak => $pac) { + if ($pak >= $pask) { + $this->xobjects[$this->xobjid]['annotations'][$pak]['x'] += $t_x; + $this->xobjects[$this->xobjid]['annotations'][$pak]['y'] -= $yshift; + } + } + } else { + $this->setPageBuffer($startlinepage, $pstart.$pend); + // shift the annotations and links + if (isset($this->PageAnnots[$this->page])) { + foreach ($this->PageAnnots[$this->page] as $pak => $pac) { + if ($pak >= $pask) { + $this->PageAnnots[$this->page][$pak]['x'] += $t_x; + $this->PageAnnots[$this->page][$pak]['y'] -= $yshift; + } + } + } + } + $this->y -= $yshift; + } + } + // restore previous values + $this->setGraphicVars($gvars); + if ($this->num_columns > 1) { + $this->selectColumn(); + } elseif ($this->page > $prevPage) { + $this->lMargin = $this->pagedim[$this->page]['olm']; + $this->rMargin = $this->pagedim[$this->page]['orm']; + } + // restore previous list state + $this->cell_height_ratio = $prev_cell_height_ratio; + $this->listnum = $prev_listnum; + $this->listordered = $prev_listordered; + $this->listcount = $prev_listcount; + $this->lispacer = $prev_lispacer; + if ($ln AND (!($cell AND ($dom[$key-1]['value'] == 'table')))) { + $this->Ln($this->lasth); + if ($this->y < $maxbottomliney) { + $this->y = $maxbottomliney; + } + } + unset($dom); + } + + /** + * Process opening tags. + * @param $dom (array) html dom array + * @param $key (int) current element id + * @param $cell (boolean) if true add the default left (or right if RTL) padding to each new line (default false). + * @protected + */ + protected function openHTMLTagHandler(&$dom, $key, $cell) { + $tag = $dom[$key]; + $parent = $dom[($dom[$key]['parent'])]; + $firsttag = ($key == 1); + // check for text direction attribute + if (isset($tag['dir'])) { + $this->setTempRTL($tag['dir']); + } else { + $this->tmprtl = false; + } + if ($tag['block']) { + $hbz = 0; // distance from y to line bottom + $hb = 0; // vertical space between block tags + // calculate vertical space for block tags + if (isset($this->tagvspaces[$tag['value']][0]['h']) AND ($this->tagvspaces[$tag['value']][0]['h'] >= 0)) { + $cur_h = $this->tagvspaces[$tag['value']][0]['h']; + } elseif (isset($tag['fontsize'])) { + $cur_h = ($tag['fontsize'] / $this->k) * $this->cell_height_ratio; + } else { + $cur_h = $this->FontSize * $this->cell_height_ratio; + } + if (isset($this->tagvspaces[$tag['value']][0]['n'])) { + $n = $this->tagvspaces[$tag['value']][0]['n']; + } elseif (preg_match('/[h][0-9]/', $tag['value']) > 0) { + $n = 0.6; + } else { + $n = 1; + } + $hb = ($n * $cur_h); + if (($this->htmlvspace <= 0) AND ($n > 0)) { + if (isset($parent['fontsize'])) { + $hbz = (($parent['fontsize'] / $this->k) * $this->cell_height_ratio); + } else { + $hbz = $this->FontSize * $this->cell_height_ratio; + } + } + } + // Opening tag + switch($tag['value']) { + case 'table': { + $cp = 0; + $cs = 0; + $dom[$key]['rowspans'] = array(); + if (!isset($dom[$key]['attribute']['nested']) OR ($dom[$key]['attribute']['nested'] != 'true')) { + // set table header + if (!$this->empty_string($dom[$key]['thead'])) { + // set table header + $this->thead = $dom[$key]['thead']; + if (!isset($this->theadMargins) OR (empty($this->theadMargins))) { + $this->theadMargins = array(); + $this->theadMargins['cell_padding'] = $this->cell_padding; + $this->theadMargins['lmargin'] = $this->lMargin; + $this->theadMargins['rmargin'] = $this->rMargin; + $this->theadMargins['page'] = $this->page; + } + } + } + // store current margins and page + $dom[$key]['old_cell_padding'] = $this->cell_padding; + if (isset($tag['attribute']['cellpadding'])) { + $pad = $this->getHTMLUnitToUnits($tag['attribute']['cellpadding'], 1, 'px'); + $this->SetCellPadding($pad); + } elseif (isset($tag['padding'])) { + $this->cell_padding = $tag['padding']; + } + if (isset($tag['attribute']['cellspacing'])) { + $cs = $this->getHTMLUnitToUnits($tag['attribute']['cellspacing'], 1, 'px'); + } elseif (isset($tag['border-spacing'])) { + $cs = $tag['border-spacing']['V']; + } + $prev_y = $this->y; + if ($this->checkPageBreak(((2 * $cp) + (2 * $cs) + $this->lasth), '', false) OR ($this->y < $prev_y)) { + $this->inthead = true; + // add a page (or trig AcceptPageBreak() for multicolumn mode) + $this->checkPageBreak($this->PageBreakTrigger + 1); + } + break; + } + case 'tr': { + // array of columns positions + $dom[$key]['cellpos'] = array(); + break; + } + case 'hr': { + if ((isset($tag['height'])) AND ($tag['height'] != '')) { + $hrHeight = $this->getHTMLUnitToUnits($tag['height'], 1, 'px'); + } else { + $hrHeight = $this->GetLineWidth(); + } + $this->addHTMLVertSpace($hbz, ($hrHeight / 2), $cell, $firsttag); + $x = $this->GetX(); + $y = $this->GetY(); + $wtmp = $this->w - $this->lMargin - $this->rMargin; + if ($cell) { + $wtmp -= ($this->cell_padding['L'] + $this->cell_padding['R']); + } + if ((isset($tag['width'])) AND ($tag['width'] != '')) { + $hrWidth = $this->getHTMLUnitToUnits($tag['width'], $wtmp, 'px'); + } else { + $hrWidth = $wtmp; + } + $prevlinewidth = $this->GetLineWidth(); + $this->SetLineWidth($hrHeight); + $this->Line($x, $y, $x + $hrWidth, $y); + $this->SetLineWidth($prevlinewidth); + $this->addHTMLVertSpace(($hrHeight / 2), 0, $cell, !isset($dom[($key + 1)])); + break; + } + case 'a': { + if (array_key_exists('href', $tag['attribute'])) { + $this->HREF['url'] = $tag['attribute']['href']; + } + break; + } + case 'img': { + if (isset($tag['attribute']['src'])) { + // replace relative path with real server path + if (($tag['attribute']['src'][0] == '/') AND ($_SERVER['DOCUMENT_ROOT'] != '/')) { + $findroot = strpos($tag['attribute']['src'], $_SERVER['DOCUMENT_ROOT']); + if (($findroot === false) OR ($findroot > 1)) { + $tag['attribute']['src'] = $_SERVER['DOCUMENT_ROOT'].$tag['attribute']['src']; + } + } + $tag['attribute']['src'] = urldecode($tag['attribute']['src']); + $type = $this->getImageFileType($tag['attribute']['src']); + $testscrtype = @parse_url($tag['attribute']['src']); + if (!isset($testscrtype['query']) OR empty($testscrtype['query'])) { + // convert URL to server path + $tag['attribute']['src'] = str_replace(K_PATH_URL, K_PATH_MAIN, $tag['attribute']['src']); + } + if (!isset($tag['width'])) { + $tag['width'] = 0; + } + if (!isset($tag['height'])) { + $tag['height'] = 0; + } + //if (!isset($tag['attribute']['align'])) { + // the only alignment supported is "bottom" + // further development is required for other modes. + $tag['attribute']['align'] = 'bottom'; + //} + switch($tag['attribute']['align']) { + case 'top': { + $align = 'T'; + break; + } + case 'middle': { + $align = 'M'; + break; + } + case 'bottom': { + $align = 'B'; + break; + } + default: { + $align = 'B'; + break; + } + } + $prevy = $this->y; + $xpos = $this->x; + // eliminate marker spaces + if (isset($dom[($key - 1)])) { + if (($dom[($key - 1)]['value'] == ' ') OR (isset($dom[($key - 1)]['trimmed_space']))) { + $xpos -= $this->GetStringWidth(chr(32)); + } elseif ($this->rtl AND $dom[($key - 1)]['value'] == ' ') { + $xpos += (2 * $this->GetStringWidth(chr(32))); + } + } + $imglink = ''; + if (isset($this->HREF['url']) AND !$this->empty_string($this->HREF['url'])) { + $imglink = $this->HREF['url']; + if ($imglink{0} == '#') { + // convert url to internal link + $lnkdata = explode(',', $imglink); + if (isset($lnkdata[0])) { + $page = intval(substr($lnkdata[0], 1)); + if (empty($page) OR ($page <= 0)) { + $page = $this->page; + } + if (isset($lnkdata[1]) AND (strlen($lnkdata[1]) > 0)) { + $lnky = floatval($lnkdata[1]); + } else { + $lnky = 0; + } + $imglink = $this->AddLink(); + $this->SetLink($imglink, $lnky, $page); + } + } + } + $border = 0; + if (isset($tag['border']) AND !empty($tag['border'])) { + // currently only support 1 (frame) or a combination of 'LTRB' + $border = $tag['border']; + } + $iw = ''; + if (isset($tag['width'])) { + $iw = $this->getHTMLUnitToUnits($tag['width'], 1, 'px', false); + } + $ih = ''; + if (isset($tag['height'])) { + $ih = $this->getHTMLUnitToUnits($tag['height'], 1, 'px', false); + } + if (($type == 'eps') OR ($type == 'ai')) { + $this->ImageEps($tag['attribute']['src'], $xpos, $this->y, $iw, $ih, $imglink, true, $align, '', $border, true); + } elseif ($type == 'svg') { + $this->ImageSVG($tag['attribute']['src'], $xpos, $this->y, $iw, $ih, $imglink, $align, '', $border, true); + } else { + $this->Image($tag['attribute']['src'], $xpos, $this->y, $iw, $ih, '', $imglink, $align, false, 300, '', false, false, $border, false, false, true); + } + switch($align) { + case 'T': { + $this->y = $prevy; + break; + } + case 'M': { + $this->y = (($this->img_rb_y + $prevy - ($tag['fontsize'] / $this->k)) / 2) ; + break; + } + case 'B': { + $this->y = $this->img_rb_y - ($tag['fontsize'] / $this->k); + break; + } + } + } + break; + } + case 'dl': { + ++$this->listnum; + if ($this->listnum == 1) { + $this->addHTMLVertSpace($hbz, $hb, $cell, $firsttag); + } else { + $this->addHTMLVertSpace(0, 0, $cell, $firsttag); + } + break; + } + case 'dt': { + $this->addHTMLVertSpace($hbz, 0, $cell, $firsttag); + break; + } + case 'dd': { + if ($this->rtl) { + $this->rMargin += $this->listindent; + } else { + $this->lMargin += $this->listindent; + } + ++$this->listindentlevel; + $this->addHTMLVertSpace($hbz, 0, $cell, $firsttag); + break; + } + case 'ul': + case 'ol': { + ++$this->listnum; + if ($tag['value'] == 'ol') { + $this->listordered[$this->listnum] = true; + } else { + $this->listordered[$this->listnum] = false; + } + if (isset($tag['attribute']['start'])) { + $this->listcount[$this->listnum] = intval($tag['attribute']['start']) - 1; + } else { + $this->listcount[$this->listnum] = 0; + } + if ($this->rtl) { + $this->rMargin += $this->listindent; + $this->x -= $this->listindent; + } else { + $this->lMargin += $this->listindent; + $this->x += $this->listindent; + } + ++$this->listindentlevel; + if ($this->listnum == 1) { + $this->addHTMLVertSpace($hbz, $hb, $cell, $firsttag); + } else { + $this->addHTMLVertSpace(0, 0, $cell, $firsttag); + } + break; + } + case 'li': { + $this->addHTMLVertSpace($hbz, 0, $cell, $firsttag); + if ($this->listordered[$this->listnum]) { + // ordered item + if (isset($parent['attribute']['type']) AND !$this->empty_string($parent['attribute']['type'])) { + $this->lispacer = $parent['attribute']['type']; + } elseif (isset($parent['listtype']) AND !$this->empty_string($parent['listtype'])) { + $this->lispacer = $parent['listtype']; + } elseif (isset($this->lisymbol) AND !$this->empty_string($this->lisymbol)) { + $this->lispacer = $this->lisymbol; + } else { + $this->lispacer = '#'; + } + ++$this->listcount[$this->listnum]; + if (isset($tag['attribute']['value'])) { + $this->listcount[$this->listnum] = intval($tag['attribute']['value']); + } + } else { + // unordered item + if (isset($parent['attribute']['type']) AND !$this->empty_string($parent['attribute']['type'])) { + $this->lispacer = $parent['attribute']['type']; + } elseif (isset($parent['listtype']) AND !$this->empty_string($parent['listtype'])) { + $this->lispacer = $parent['listtype']; + } elseif (isset($this->lisymbol) AND !$this->empty_string($this->lisymbol)) { + $this->lispacer = $this->lisymbol; + } else { + $this->lispacer = '!'; + } + } + break; + } + case 'blockquote': { + if ($this->rtl) { + $this->rMargin += $this->listindent; + } else { + $this->lMargin += $this->listindent; + } + ++$this->listindentlevel; + $this->addHTMLVertSpace($hbz, $hb, $cell, $firsttag); + break; + } + case 'br': { + $this->addHTMLVertSpace($hbz, 0, $cell, $firsttag); + break; + } + case 'div': { + $this->addHTMLVertSpace($hbz, 0, $cell, $firsttag); + break; + } + case 'p': { + $this->addHTMLVertSpace($hbz, $hb, $cell, $firsttag); + break; + } + case 'pre': { + $this->addHTMLVertSpace($hbz, $hb, $cell, $firsttag); + $this->premode = true; + break; + } + case 'sup': { + $this->SetXY($this->GetX(), $this->GetY() - ((0.7 * $this->FontSizePt) / $this->k)); + break; + } + case 'sub': { + $this->SetXY($this->GetX(), $this->GetY() + ((0.3 * $this->FontSizePt) / $this->k)); + break; + } + case 'h1': + case 'h2': + case 'h3': + case 'h4': + case 'h5': + case 'h6': { + $this->addHTMLVertSpace($hbz, $hb, $cell, $firsttag); + break; + } + // Form fields (since 4.8.000 - 2009-09-07) + case 'form': { + if (isset($tag['attribute']['action'])) { + $this->form_action = $tag['attribute']['action']; + } else { + $this->form_action = K_PATH_URL.$_SERVER['SCRIPT_NAME']; + } + if (isset($tag['attribute']['enctype'])) { + $this->form_enctype = $tag['attribute']['enctype']; + } else { + $this->form_enctype = 'application/x-www-form-urlencoded'; + } + if (isset($tag['attribute']['method'])) { + $this->form_mode = $tag['attribute']['method']; + } else { + $this->form_mode = 'post'; + } + break; + } + case 'input': { + if (isset($tag['attribute']['name']) AND !$this->empty_string($tag['attribute']['name'])) { + $name = $tag['attribute']['name']; + } else { + break; + } + $prop = array(); + $opt = array(); + if (isset($tag['attribute']['readonly']) AND !$this->empty_string($tag['attribute']['readonly'])) { + $prop['readonly'] = true; + } + if (isset($tag['attribute']['value']) AND !$this->empty_string($tag['attribute']['value'])) { + $value = $tag['attribute']['value']; + } + if (isset($tag['attribute']['maxlength']) AND !$this->empty_string($tag['attribute']['maxlength'])) { + $opt['maxlen'] = intval($tag['attribute']['value']); + } + $h = $this->FontSize * $this->cell_height_ratio; + if (isset($tag['attribute']['size']) AND !$this->empty_string($tag['attribute']['size'])) { + $w = intval($tag['attribute']['size']) * $this->GetStringWidth(chr(32)) * 2; + } else { + $w = $h; + } + if (isset($tag['attribute']['checked']) AND (($tag['attribute']['checked'] == 'checked') OR ($tag['attribute']['checked'] == 'true'))) { + $checked = true; + } else { + $checked = false; + } + switch ($tag['attribute']['type']) { + case 'text': { + if (isset($value)) { + $opt['v'] = $value; + } + $this->TextField($name, $w, $h, $prop, $opt, '', '', false); + break; + } + case 'password': { + if (isset($value)) { + $opt['v'] = $value; + } + $prop['password'] = 'true'; + $this->TextField($name, $w, $h, $prop, $opt, '', '', false); + break; + } + case 'checkbox': { + $this->CheckBox($name, $w, $checked, $prop, $opt, $value, '', '', false); + break; + } + case 'radio': { + $this->RadioButton($name, $w, $prop, $opt, $value, $checked, '', '', false); + break; + } + case 'submit': { + $w = $this->GetStringWidth($value) * 1.5; + $h *= 1.6; + $prop = array('lineWidth'=>1, 'borderStyle'=>'beveled', 'fillColor'=>array(196, 196, 196), 'strokeColor'=>array(255, 255, 255)); + $action = array(); + $action['S'] = 'SubmitForm'; + $action['F'] = $this->form_action; + if ($this->form_enctype != 'FDF') { + $action['Flags'] = array('ExportFormat'); + } + if ($this->form_mode == 'get') { + $action['Flags'] = array('GetMethod'); + } + $this->Button($name, $w, $h, $value, $action, $prop, $opt, '', '', false); + break; + } + case 'reset': { + $w = $this->GetStringWidth($value) * 1.5; + $h *= 1.6; + $prop = array('lineWidth'=>1, 'borderStyle'=>'beveled', 'fillColor'=>array(196, 196, 196), 'strokeColor'=>array(255, 255, 255)); + $this->Button($name, $w, $h, $value, array('S'=>'ResetForm'), $prop, $opt, '', '', false); + break; + } + case 'file': { + $prop['fileSelect'] = 'true'; + $this->TextField($name, $w, $h, $prop, $opt, '', '', false); + if (!isset($value)) { + $value = '*'; + } + $w = $this->GetStringWidth($value) * 2; + $h *= 1.2; + $prop = array('lineWidth'=>1, 'borderStyle'=>'beveled', 'fillColor'=>array(196, 196, 196), 'strokeColor'=>array(255, 255, 255)); + $jsaction = 'var f=this.getField(\''.$name.'\'); f.browseForFileToSubmit();'; + $this->Button('FB_'.$name, $w, $h, $value, $jsaction, $prop, $opt, '', '', false); + break; + } + case 'hidden': { + if (isset($value)) { + $opt['v'] = $value; + } + $opt['f'] = array('invisible', 'hidden'); + $this->TextField($name, 0, 0, $prop, $opt, '', '', false); + break; + } + case 'image': { + // THIS TYPE MUST BE FIXED + if (isset($tag['attribute']['src']) AND !$this->empty_string($tag['attribute']['src'])) { + $img = $tag['attribute']['src']; + } else { + break; + } + $value = 'img'; + //$opt['mk'] = array('i'=>$img, 'tp'=>1, 'if'=>array('sw'=>'A', 's'=>'A', 'fb'=>false)); + if (isset($tag['attribute']['onclick']) AND !empty($tag['attribute']['onclick'])) { + $jsaction = $tag['attribute']['onclick']; + } else { + $jsaction = ''; + } + $this->Button($name, $w, $h, $value, $jsaction, $prop, $opt, '', '', false); + break; + } + case 'button': { + $w = $this->GetStringWidth($value) * 1.5; + $h *= 1.6; + $prop = array('lineWidth'=>1, 'borderStyle'=>'beveled', 'fillColor'=>array(196, 196, 196), 'strokeColor'=>array(255, 255, 255)); + if (isset($tag['attribute']['onclick']) AND !empty($tag['attribute']['onclick'])) { + $jsaction = $tag['attribute']['onclick']; + } else { + $jsaction = ''; + } + $this->Button($name, $w, $h, $value, $jsaction, $prop, $opt, '', '', false); + break; + } + } + break; + } + case 'textarea': { + $prop = array(); + $opt = array(); + if (isset($tag['attribute']['readonly']) AND !$this->empty_string($tag['attribute']['readonly'])) { + $prop['readonly'] = true; + } + if (isset($tag['attribute']['name']) AND !$this->empty_string($tag['attribute']['name'])) { + $name = $tag['attribute']['name']; + } else { + break; + } + if (isset($tag['attribute']['value']) AND !$this->empty_string($tag['attribute']['value'])) { + $opt['v'] = $tag['attribute']['value']; + } + if (isset($tag['attribute']['cols']) AND !$this->empty_string($tag['attribute']['cols'])) { + $w = intval($tag['attribute']['cols']) * $this->GetStringWidth(chr(32)) * 2; + } else { + $w = 40; + } + if (isset($tag['attribute']['rows']) AND !$this->empty_string($tag['attribute']['rows'])) { + $h = intval($tag['attribute']['rows']) * $this->FontSize * $this->cell_height_ratio; + } else { + $h = 10; + } + $prop['multiline'] = 'true'; + $this->TextField($name, $w, $h, $prop, $opt, '', '', false); + break; + } + case 'select': { + $h = $this->FontSize * $this->cell_height_ratio; + if (isset($tag['attribute']['size']) AND !$this->empty_string($tag['attribute']['size'])) { + $h *= ($tag['attribute']['size'] + 1); + } + $prop = array(); + $opt = array(); + if (isset($tag['attribute']['name']) AND !$this->empty_string($tag['attribute']['name'])) { + $name = $tag['attribute']['name']; + } else { + break; + } + $w = 0; + if (isset($tag['attribute']['opt']) AND !$this->empty_string($tag['attribute']['opt'])) { + $options = explode('#!NwL!#', $tag['attribute']['opt']); + $values = array(); + foreach ($options as $val) { + if (strpos($val, '#!TaB!#') !== false) { + $opts = explode('#!TaB!#', $val); + $values[] = $opts; + $w = max($w, $this->GetStringWidth($opts[1])); + } else { + $values[] = $val; + $w = max($w, $this->GetStringWidth($val)); + } + } + } else { + break; + } + $w *= 2; + if (isset($tag['attribute']['multiple']) AND ($tag['attribute']['multiple']='multiple')) { + $prop['multipleSelection'] = 'true'; + $this->ListBox($name, $w, $h, $values, $prop, $opt, '', '', false); + } else { + $this->ComboBox($name, $w, $h, $values, $prop, $opt, '', '', false); + } + break; + } + case 'tcpdf': { + if (defined('K_TCPDF_CALLS_IN_HTML') AND (K_TCPDF_CALLS_IN_HTML === true)) { + // Special tag used to call TCPDF methods + if (isset($tag['attribute']['method'])) { + $tcpdf_method = $tag['attribute']['method']; + if (method_exists($this, $tcpdf_method)) { + if (isset($tag['attribute']['params']) AND (!empty($tag['attribute']['params']))) { + $params = unserialize(urldecode($tag['attribute']['params'])); + call_user_func_array(array($this, $tcpdf_method), $params); + } else { + $this->$tcpdf_method(); + } + $this->newline = true; + } + } + } + break; + } + default: { + break; + } + } + // define tags that support borders and background colors + $bordertags = array('blockquote','br','dd','dl','div','dt','h1','h2','h3','h4','h5','h6','hr','li','ol','p','pre','ul','tcpdf','table'); + if (in_array($tag['value'], $bordertags)) { + // set border + $dom[$key]['borderposition'] = $this->getBorderStartPosition(); + } + if ($dom[$key]['self'] AND isset($dom[$key]['attribute']['pagebreakafter'])) { + $pba = $dom[$key]['attribute']['pagebreakafter']; + // check for pagebreak + if (($pba == 'true') OR ($pba == 'left') OR ($pba == 'right')) { + // add a page (or trig AcceptPageBreak() for multicolumn mode) + $this->checkPageBreak($this->PageBreakTrigger + 1); + } + if ((($pba == 'left') AND (((!$this->rtl) AND (($this->page % 2) == 0)) OR (($this->rtl) AND (($this->page % 2) != 0)))) + OR (($pba == 'right') AND (((!$this->rtl) AND (($this->page % 2) != 0)) OR (($this->rtl) AND (($this->page % 2) == 0))))) { + // add a page (or trig AcceptPageBreak() for multicolumn mode) + $this->checkPageBreak($this->PageBreakTrigger + 1); + } + } + } + + /** + * Process closing tags. + * @param $dom (array) html dom array + * @param $key (int) current element id + * @param $cell (boolean) if true add the default left (or right if RTL) padding to each new line (default false). + * @param $maxbottomliney (int) maximum y value of current line + * @protected + */ + protected function closeHTMLTagHandler(&$dom, $key, $cell, $maxbottomliney=0) { + $tag = $dom[$key]; + $parent = $dom[($dom[$key]['parent'])]; + $lasttag = ((!isset($dom[($key + 1)])) OR ((!isset($dom[($key + 2)])) AND ($dom[($key + 1)]['value'] == 'marker'))); + $in_table_head = false; + // maximum x position (used to draw borders) + if ($this->rtl) { + $xmax = $this->w; + } else { + $xmax = 0; + } + if ($tag['block']) { + $hbz = 0; // distance from y to line bottom + $hb = 0; // vertical space between block tags + // calculate vertical space for block tags + if (isset($this->tagvspaces[$tag['value']][1]['h']) AND ($this->tagvspaces[$tag['value']][1]['h'] >= 0)) { + $pre_h = $this->tagvspaces[$tag['value']][1]['h']; + } elseif (isset($parent['fontsize'])) { + $pre_h = (($parent['fontsize'] / $this->k) * $this->cell_height_ratio); + } else { + $pre_h = $this->FontSize * $this->cell_height_ratio; + } + if (isset($this->tagvspaces[$tag['value']][1]['n'])) { + $n = $this->tagvspaces[$tag['value']][1]['n']; + } elseif (preg_match('/[h][0-9]/', $tag['value']) > 0) { + $n = 0.6; + } else { + $n = 1; + } + $hb = ($n * $pre_h); + if ($this->y < $maxbottomliney) { + $hbz = ($maxbottomliney - $this->y); + } + } + // Closing tag + switch($tag['value']) { + case 'tr': { + $table_el = $dom[($dom[$key]['parent'])]['parent']; + if (!isset($parent['endy'])) { + $dom[($dom[$key]['parent'])]['endy'] = $this->y; + $parent['endy'] = $this->y; + } + if (!isset($parent['endpage'])) { + $dom[($dom[$key]['parent'])]['endpage'] = $this->page; + $parent['endpage'] = $this->page; + } + if (!isset($parent['endcolumn'])) { + $dom[($dom[$key]['parent'])]['endcolumn'] = $this->current_column; + $parent['endcolumn'] = $this->current_column; + } + // update row-spanned cells + if (isset($dom[$table_el]['rowspans'])) { + foreach ($dom[$table_el]['rowspans'] as $k => $trwsp) { + $dom[$table_el]['rowspans'][$k]['rowspan'] -= 1; + if ($dom[$table_el]['rowspans'][$k]['rowspan'] == 0) { + if (($dom[$table_el]['rowspans'][$k]['endpage'] == $parent['endpage']) AND ($dom[$table_el]['rowspans'][$k]['endcolumn'] == $parent['endcolumn'])) { + $dom[($dom[$key]['parent'])]['endy'] = max($dom[$table_el]['rowspans'][$k]['endy'], $parent['endy']); + } elseif (($dom[$table_el]['rowspans'][$k]['endpage'] > $parent['endpage']) OR ($dom[$table_el]['rowspans'][$k]['endcolumn'] > $parent['endcolumn'])) { + $dom[($dom[$key]['parent'])]['endy'] = $dom[$table_el]['rowspans'][$k]['endy']; + $dom[($dom[$key]['parent'])]['endpage'] = $dom[$table_el]['rowspans'][$k]['endpage']; + $dom[($dom[$key]['parent'])]['endcolumn'] = $dom[$table_el]['rowspans'][$k]['endcolumn']; + } + } + } + // report new endy and endpage to the rowspanned cells + foreach ($dom[$table_el]['rowspans'] as $k => $trwsp) { + if ($dom[$table_el]['rowspans'][$k]['rowspan'] == 0) { + $dom[$table_el]['rowspans'][$k]['endpage'] = max($dom[$table_el]['rowspans'][$k]['endpage'], $dom[($dom[$key]['parent'])]['endpage']); + $dom[($dom[$key]['parent'])]['endpage'] = $dom[$table_el]['rowspans'][$k]['endpage']; + $dom[$table_el]['rowspans'][$k]['endcolumn'] = max($dom[$table_el]['rowspans'][$k]['endcolumn'], $dom[($dom[$key]['parent'])]['endcolumn']); + $dom[($dom[$key]['parent'])]['endcolumn'] = $dom[$table_el]['rowspans'][$k]['endcolumn']; + $dom[$table_el]['rowspans'][$k]['endy'] = max($dom[$table_el]['rowspans'][$k]['endy'], $dom[($dom[$key]['parent'])]['endy']); + $dom[($dom[$key]['parent'])]['endy'] = $dom[$table_el]['rowspans'][$k]['endy']; + } + } + // update remaining rowspanned cells + foreach ($dom[$table_el]['rowspans'] as $k => $trwsp) { + if ($dom[$table_el]['rowspans'][$k]['rowspan'] == 0) { + $dom[$table_el]['rowspans'][$k]['endpage'] = $dom[($dom[$key]['parent'])]['endpage']; + $dom[$table_el]['rowspans'][$k]['endcolumn'] = $dom[($dom[$key]['parent'])]['endcolumn']; + $dom[$table_el]['rowspans'][$k]['endy'] = $dom[($dom[$key]['parent'])]['endy']; + } + } + } + $this->setPage($dom[($dom[$key]['parent'])]['endpage']); + if ($this->num_columns > 1) { + $this->selectColumn($dom[($dom[$key]['parent'])]['endcolumn']); + } + $this->y = $dom[($dom[$key]['parent'])]['endy']; + if (isset($dom[$table_el]['attribute']['cellspacing'])) { + $this->y += $this->getHTMLUnitToUnits($dom[$table_el]['attribute']['cellspacing'], 1, 'px'); + } elseif (isset($dom[$table_el]['border-spacing'])) { + $this->y += $dom[$table_el]['border-spacing']['V']; + } + $this->Ln(0, $cell); + if ($this->current_column == $parent['startcolumn']) { + $this->x = $parent['startx']; + } + // account for booklet mode + if ($this->page > $parent['startpage']) { + if (($this->rtl) AND ($this->pagedim[$this->page]['orm'] != $this->pagedim[$parent['startpage']]['orm'])) { + $this->x -= ($this->pagedim[$this->page]['orm'] - $this->pagedim[$parent['startpage']]['orm']); + } elseif ((!$this->rtl) AND ($this->pagedim[$this->page]['olm'] != $this->pagedim[$parent['startpage']]['olm'])) { + $this->x += ($this->pagedim[$this->page]['olm'] - $this->pagedim[$parent['startpage']]['olm']); + } + } + break; + } + case 'tablehead': + // closing tag used for the thead part + $in_table_head = true; + $this->inthead = false; + case 'table': { + $table_el = $parent; + // set default border + if (isset($table_el['attribute']['border']) AND ($table_el['attribute']['border'] > 0)) { + // set default border + $border = array('LTRB' => array('width' => $this->getCSSBorderWidth($table_el['attribute']['border']), 'cap'=>'square', 'join'=>'miter', 'dash'=> 0, 'color'=>array(0,0,0))); + } else { + $border = 0; + } + $default_border = $border; + // fix bottom line alignment of last line before page break + foreach ($dom[($dom[$key]['parent'])]['trids'] as $j => $trkey) { + // update row-spanned cells + if (isset($dom[($dom[$key]['parent'])]['rowspans'])) { + foreach ($dom[($dom[$key]['parent'])]['rowspans'] as $k => $trwsp) { + if ($trwsp['trid'] == $trkey) { + $dom[($dom[$key]['parent'])]['rowspans'][$k]['mrowspan'] -= 1; + } + if (isset($prevtrkey) AND ($trwsp['trid'] == $prevtrkey) AND ($trwsp['mrowspan'] >= 0)) { + $dom[($dom[$key]['parent'])]['rowspans'][$k]['trid'] = $trkey; + } + } + } + if (isset($prevtrkey) AND ($dom[$trkey]['startpage'] > $dom[$prevtrkey]['endpage'])) { + $pgendy = $this->pagedim[$dom[$prevtrkey]['endpage']]['hk'] - $this->pagedim[$dom[$prevtrkey]['endpage']]['bm']; + $dom[$prevtrkey]['endy'] = $pgendy; + // update row-spanned cells + if (isset($dom[($dom[$key]['parent'])]['rowspans'])) { + foreach ($dom[($dom[$key]['parent'])]['rowspans'] as $k => $trwsp) { + if (($trwsp['trid'] == $trkey) AND ($trwsp['mrowspan'] > 1) AND ($trwsp['endpage'] == $dom[$prevtrkey]['endpage'])) { + $dom[($dom[$key]['parent'])]['rowspans'][$k]['endy'] = $pgendy; + $dom[($dom[$key]['parent'])]['rowspans'][$k]['mrowspan'] = -1; + } + } + } + } + $prevtrkey = $trkey; + $table_el = $dom[($dom[$key]['parent'])]; + } + // for each row + unset($xmax); + foreach ($table_el['trids'] as $j => $trkey) { + $parent = $dom[$trkey]; + if (!isset($xmax)) { + $xmax = $parent['cellpos'][(count($parent['cellpos']) - 1)]['endx']; + } + // for each cell on the row + foreach ($parent['cellpos'] as $k => $cellpos) { + if (isset($cellpos['rowspanid']) AND ($cellpos['rowspanid'] >= 0)) { + $cellpos['startx'] = $table_el['rowspans'][($cellpos['rowspanid'])]['startx']; + $cellpos['endx'] = $table_el['rowspans'][($cellpos['rowspanid'])]['endx']; + $endy = $table_el['rowspans'][($cellpos['rowspanid'])]['endy']; + $startpage = $table_el['rowspans'][($cellpos['rowspanid'])]['startpage']; + $endpage = $table_el['rowspans'][($cellpos['rowspanid'])]['endpage']; + $startcolumn = $table_el['rowspans'][($cellpos['rowspanid'])]['startcolumn']; + $endcolumn = $table_el['rowspans'][($cellpos['rowspanid'])]['endcolumn']; + } else { + $endy = $parent['endy']; + $startpage = $parent['startpage']; + $endpage = $parent['endpage']; + $startcolumn = $parent['startcolumn']; + $endcolumn = $parent['endcolumn']; + } + if ($this->num_columns == 0) { + $this->num_columns = 1; + } + if (isset($cellpos['border'])) { + $border = $cellpos['border']; + } + if (isset($cellpos['bgcolor']) AND ($cellpos['bgcolor']) !== false) { + $this->SetFillColorArray($cellpos['bgcolor']); + $fill = true; + } else { + $fill = false; + } + $x = $cellpos['startx']; + $y = $parent['starty']; + $starty = $y; + $w = abs($cellpos['endx'] - $cellpos['startx']); + // get border modes + $border_start = $this->getBorderMode($border, $position='start'); + $border_end = $this->getBorderMode($border, $position='end'); + $border_middle = $this->getBorderMode($border, $position='middle'); + // design borders around HTML cells. + for ($page = $startpage; $page <= $endpage; ++$page) { // for each page + $ccode = ''; + $this->setPage($page); + if ($this->num_columns < 2) { + // single-column mode + $this->x = $x; + $this->y = $this->tMargin; + } + // account for margin changes + if ($page > $startpage) { + if (($this->rtl) AND ($this->pagedim[$page]['orm'] != $this->pagedim[$startpage]['orm'])) { + $this->x -= ($this->pagedim[$page]['orm'] - $this->pagedim[$startpage]['orm']); + } elseif ((!$this->rtl) AND ($this->pagedim[$page]['olm'] != $this->pagedim[$startpage]['olm'])) { + $this->x += ($this->pagedim[$page]['olm'] - $this->pagedim[$startpage]['olm']); + } + } + if ($startpage == $endpage) { // single page + $deltacol = 0; + $deltath = 0; + for ($column = $startcolumn; $column <= $endcolumn; ++$column) { // for each column + $this->selectColumn($column); + if ($startcolumn == $endcolumn) { // single column + $cborder = $border; + $h = $endy - $parent['starty']; + $this->y = $y; + $this->x = $x; + } elseif ($column == $startcolumn) { // first column + $cborder = $border_start; + $this->y = $starty; + $this->x = $x; + $h = $this->h - $this->y - $this->bMargin; + if ($this->rtl) { + $deltacol = $this->x + $this->rMargin - $this->w; + } else { + $deltacol = $this->x - $this->lMargin; + } + } elseif ($column == $endcolumn) { // end column + $cborder = $border_end; + if (isset($this->columns[$column]['th']['\''.$page.'\''])) { + $this->y = $this->columns[$column]['th']['\''.$page.'\'']; + } + $this->x += $deltacol; + $h = $endy - $this->y; + } else { // middle column + $cborder = $border_middle; + if (isset($this->columns[$column]['th']['\''.$page.'\''])) { + $this->y = $this->columns[$column]['th']['\''.$page.'\'']; + } + $this->x += $deltacol; + $h = $this->h - $this->y - $this->bMargin; + } + $ccode .= $this->getCellCode($w, $h, '', $cborder, 1, '', $fill, '', 0, true)."\n"; + } // end for each column + } elseif ($page == $startpage) { // first page + $deltacol = 0; + $deltath = 0; + for ($column = $startcolumn; $column < $this->num_columns; ++$column) { // for each column + $this->selectColumn($column); + if ($column == $startcolumn) { // first column + $cborder = $border_start; + $this->y = $starty; + $this->x = $x; + $h = $this->h - $this->y - $this->bMargin; + if ($this->rtl) { + $deltacol = $this->x + $this->rMargin - $this->w; + } else { + $deltacol = $this->x - $this->lMargin; + } + } else { // middle column + $cborder = $border_middle; + if (isset($this->columns[$column]['th']['\''.$page.'\''])) { + $this->y = $this->columns[$column]['th']['\''.$page.'\'']; + } + $this->x += $deltacol; + $h = $this->h - $this->y - $this->bMargin; + } + $ccode .= $this->getCellCode($w, $h, '', $cborder, 1, '', $fill, '', 0, true)."\n"; + } // end for each column + } elseif ($page == $endpage) { // last page + $deltacol = 0; + $deltath = 0; + for ($column = 0; $column <= $endcolumn; ++$column) { // for each column + $this->selectColumn($column); + if ($column == $endcolumn) { // end column + $cborder = $border_end; + if (isset($this->columns[$column]['th']['\''.$page.'\''])) { + $this->y = $this->columns[$column]['th']['\''.$page.'\'']; + } + $this->x += $deltacol; + $h = $endy - $this->y; + } else { // middle column + $cborder = $border_middle; + if (isset($this->columns[$column]['th']['\''.$page.'\''])) { + $this->y = $this->columns[$column]['th']['\''.$page.'\'']; + } + $this->x += $deltacol; + $h = $this->h - $this->y - $this->bMargin; + } + $ccode .= $this->getCellCode($w, $h, '', $cborder, 1, '', $fill, '', 0, true)."\n"; + } // end for each column + } else { // middle page + $deltacol = 0; + $deltath = 0; + for ($column = 0; $column < $this->num_columns; ++$column) { // for each column + $this->selectColumn($column); + $cborder = $border_middle; + if (isset($this->columns[$column]['th']['\''.$page.'\''])) { + $this->y = $this->columns[$column]['th']['\''.$page.'\'']; + } + $this->x += $deltacol; + $h = $this->h - $this->y - $this->bMargin; + $ccode .= $this->getCellCode($w, $h, '', $cborder, 1, '', $fill, '', 0, true)."\n"; + } // end for each column + } + if ($cborder OR $fill) { + // draw border and fill + if ($this->inxobj) { + // we are inside an XObject template + if (end($this->xobjects[$this->xobjid]['transfmrk']) !== false) { + $pagemarkkey = key($this->xobjects[$this->xobjid]['transfmrk']); + $pagemark = &$this->xobjects[$this->xobjid]['transfmrk'][$pagemarkkey]; + } else { + $pagemark = &$this->xobjects[$this->xobjid]['intmrk']; + } + $pagebuff = $this->xobjects[$this->xobjid]['outdata']; + $pstart = substr($pagebuff, 0, $pagemark); + $pend = substr($pagebuff, $pagemark); + $this->xobjects[$this->xobjid]['outdata'] = $pstart.$ccode.$pend; + $pagemark += strlen($ccode); + } else { + // draw border and fill + if (end($this->transfmrk[$this->page]) !== false) { + $pagemarkkey = key($this->transfmrk[$this->page]); + $pagemark = &$this->transfmrk[$this->page][$pagemarkkey]; + } elseif ($this->InFooter) { + $pagemark = &$this->footerpos[$this->page]; + } else { + $pagemark = &$this->intmrk[$this->page]; + } + $pagebuff = $this->getPageBuffer($this->page); + $pstart = substr($pagebuff, 0, $pagemark); + $pend = substr($pagebuff, $pagemark); + $this->setPageBuffer($this->page, $pstart.$ccode.$pend); + $pagemark += strlen($ccode); + } + } + } // end for each page + // restore default border + $border = $default_border; + } // end for each cell on the row + if (isset($table_el['attribute']['cellspacing'])) { + $this->y += $this->getHTMLUnitToUnits($table_el['attribute']['cellspacing'], 1, 'px'); + } elseif (isset($table_el['border-spacing'])) { + $this->y += $table_el['border-spacing']['V']; + } + $this->Ln(0, $cell); + $this->x = $parent['startx']; + if ($endpage > $startpage) { + if (($this->rtl) AND ($this->pagedim[$endpage]['orm'] != $this->pagedim[$startpage]['orm'])) { + $this->x += ($this->pagedim[$endpage]['orm'] - $this->pagedim[$startpage]['orm']); + } elseif ((!$this->rtl) AND ($this->pagedim[$endpage]['olm'] != $this->pagedim[$startpage]['olm'])) { + $this->x += ($this->pagedim[$endpage]['olm'] - $this->pagedim[$startpage]['olm']); + } + } + } + if (!$in_table_head) { // we are not inside a thead section + $this->cell_padding = $table_el['old_cell_padding']; + // reset row height + $this->resetLastH(); + if (($this->page == ($this->numpages - 1)) AND ($this->pageopen[$this->numpages]) AND ($this->emptypagemrk[$this->numpages] == $this->pagelen[$this->numpages])) { + // remove last blank page + $this->deletePage($this->numpages); + } + if (isset($this->theadMargins['top'])) { + // restore top margin + $this->tMargin = $this->theadMargins['top']; + $this->pagedim[$this->page]['tm'] = $this->tMargin; + } + if (!isset($table_el['attribute']['nested']) OR ($table_el['attribute']['nested'] != 'true')) { + // reset main table header + $this->thead = ''; + $this->theadMargins = array(); + } + } + $parent = $table_el; + break; + } + case 'a': { + $this->HREF = ''; + break; + } + case 'sup': { + $this->SetXY($this->GetX(), $this->GetY() + ((0.7 * $parent['fontsize']) / $this->k)); + break; + } + case 'sub': { + $this->SetXY($this->GetX(), $this->GetY() - ((0.3 * $parent['fontsize'])/$this->k)); + break; + } + case 'div': { + $this->addHTMLVertSpace($hbz, 0, $cell, false, $lasttag); + break; + } + case 'blockquote': { + if ($this->rtl) { + $this->rMargin -= $this->listindent; + } else { + $this->lMargin -= $this->listindent; + } + --$this->listindentlevel; + $this->addHTMLVertSpace($hbz, $hb, $cell, false, $lasttag); + break; + } + case 'p': { + $this->addHTMLVertSpace($hbz, $hb, $cell, false, $lasttag); + break; + } + case 'pre': { + $this->addHTMLVertSpace($hbz, $hb, $cell, false, $lasttag); + $this->premode = false; + break; + } + case 'dl': { + --$this->listnum; + if ($this->listnum <= 0) { + $this->listnum = 0; + $this->addHTMLVertSpace($hbz, $hb, $cell, false, $lasttag); + } else { + $this->addHTMLVertSpace(0, 0, $cell, false, $lasttag); + } + $this->resetLastH(); + break; + } + case 'dt': { + $this->lispacer = ''; + $this->addHTMLVertSpace(0, 0, $cell, false, $lasttag); + break; + } + case 'dd': { + $this->lispacer = ''; + if ($this->rtl) { + $this->rMargin -= $this->listindent; + } else { + $this->lMargin -= $this->listindent; + } + --$this->listindentlevel; + $this->addHTMLVertSpace(0, 0, $cell, false, $lasttag); + break; + } + case 'ul': + case 'ol': { + --$this->listnum; + $this->lispacer = ''; + if ($this->rtl) { + $this->rMargin -= $this->listindent; + } else { + $this->lMargin -= $this->listindent; + } + --$this->listindentlevel; + if ($this->listnum <= 0) { + $this->listnum = 0; + $this->addHTMLVertSpace($hbz, $hb, $cell, false, $lasttag); + } else { + $this->addHTMLVertSpace(0, 0, $cell, false, $lasttag); + } + $this->resetLastH(); + break; + } + case 'li': { + $this->lispacer = ''; + $this->addHTMLVertSpace(0, 0, $cell, false, $lasttag); + break; + } + case 'h1': + case 'h2': + case 'h3': + case 'h4': + case 'h5': + case 'h6': { + $this->addHTMLVertSpace($hbz, $hb, $cell, false, $lasttag); + break; + } + // Form fields (since 4.8.000 - 2009-09-07) + case 'form': { + $this->form_action = ''; + $this->form_enctype = 'application/x-www-form-urlencoded'; + break; + } + default : { + break; + } + } + // draw border and background (if any) + $this->drawHTMLTagBorder($parent, $xmax); + if (isset($dom[($dom[$key]['parent'])]['attribute']['pagebreakafter'])) { + $pba = $dom[($dom[$key]['parent'])]['attribute']['pagebreakafter']; + // check for pagebreak + if (($pba == 'true') OR ($pba == 'left') OR ($pba == 'right')) { + // add a page (or trig AcceptPageBreak() for multicolumn mode) + $this->checkPageBreak($this->PageBreakTrigger + 1); + } + if ((($pba == 'left') AND (((!$this->rtl) AND (($this->page % 2) == 0)) OR (($this->rtl) AND (($this->page % 2) != 0)))) + OR (($pba == 'right') AND (((!$this->rtl) AND (($this->page % 2) != 0)) OR (($this->rtl) AND (($this->page % 2) == 0))))) { + // add a page (or trig AcceptPageBreak() for multicolumn mode) + $this->checkPageBreak($this->PageBreakTrigger + 1); + } + } + $this->tmprtl = false; + } + + /** + * Add vertical spaces if needed. + * @param $hbz (string) Distance between current y and line bottom. + * @param $hb (string) The height of the break. + * @param $cell (boolean) if true add the default left (or right if RTL) padding to each new line (default false). + * @param $firsttag (boolean) set to true when the tag is the first. + * @param $lasttag (boolean) set to true when the tag is the last. + * @protected + */ + protected function addHTMLVertSpace($hbz=0, $hb=0, $cell=false, $firsttag=false, $lasttag=false) { + if ($firsttag) { + $this->Ln(0, $cell); + $this->htmlvspace = 0; + return; + } + if ($lasttag) { + $this->Ln($hbz, $cell); + $this->htmlvspace = 0; + return; + } + if ($hb < $this->htmlvspace) { + $hd = 0; + } else { + $hd = $hb - $this->htmlvspace; + $this->htmlvspace = $hb; + } + $this->Ln(($hbz + $hd), $cell); + } + + /** + * Return the starting coordinates to draw an html border + * @return array containing top-left border coordinates + * @protected + * @since 5.7.000 (2010-08-03) + */ + protected function getBorderStartPosition() { + if ($this->rtl) { + $xmax = $this->lMargin; + } else { + $xmax = $this->w - $this->rMargin; + } + return array('page' => $this->page, 'column' => $this->current_column, 'x' => $this->x, 'y' => $this->y, 'xmax' => $xmax); + } + + /** + * Draw an HTML block border and fill + * @param $tag (array) array of tag properties. + * @param $xmax (int) end X coordinate for border. + * @protected + * @since 5.7.000 (2010-08-03) + */ + protected function drawHTMLTagBorder($tag, $xmax) { + if (!isset($tag['borderposition'])) { + // nothing to draw + return; + } + $prev_x = $this->x; + $prev_y = $this->y; + $prev_lasth = $this->lasth; + $border = 0; + $fill = false; + $this->lasth = 0; + if (isset($tag['border']) AND !empty($tag['border'])) { + // get border style + $border = $tag['border']; + if (!$this->empty_string($this->thead) AND (!$this->inthead)) { + // border for table header + $border = $this->getBorderMode($border, $position='middle'); + } + } + if (isset($tag['bgcolor']) AND ($tag['bgcolor'] !== false)) { + // get background color + $old_bgcolor = $this->bgcolor; + $this->SetFillColorArray($tag['bgcolor']); + $fill = true; + } + if (!$border AND !$fill) { + // nothing to draw + return; + } + if (isset($tag['attribute']['cellspacing'])) { + $clsp = $this->getHTMLUnitToUnits($tag['attribute']['cellspacing'], 1, 'px'); + $cellspacing = array('H' => $clsp, 'V' => $clsp); + } elseif (isset($tag['border-spacing'])) { + $cellspacing = $tag['border-spacing']; + } else { + $cellspacing = array('H' => 0, 'V' => 0); + } + if (($tag['value'] != 'table') AND (is_array($border)) AND (!empty($border))) { + // draw the border externally respect the sqare edge. + $border['mode'] = 'ext'; + } + if ($this->rtl) { + if ($xmax >= $tag['borderposition']['x']) { + $xmax = $tag['borderposition']['xmax']; + } + $w = ($tag['borderposition']['x'] - $xmax); + } else { + if ($xmax <= $tag['borderposition']['x']) { + $xmax = $tag['borderposition']['xmax']; + } + $w = ($xmax - $tag['borderposition']['x']); + } + if ($w <= 0) { + return; + } + $w += $cellspacing['H']; + $startpage = $tag['borderposition']['page']; + $startcolumn = $tag['borderposition']['column']; + $x = $tag['borderposition']['x']; + $y = $tag['borderposition']['y']; + $endpage = $this->page; + $starty = $tag['borderposition']['y'] - $cellspacing['V']; + $currentY = $this->y; + $this->x = $x; + // get latest column + $endcolumn = $this->current_column; + if ($this->num_columns == 0) { + $this->num_columns = 1; + } + // get border modes + $border_start = $this->getBorderMode($border, $position='start'); + $border_end = $this->getBorderMode($border, $position='end'); + $border_middle = $this->getBorderMode($border, $position='middle'); + // temporary disable page regions + $temp_page_regions = $this->page_regions; + $this->page_regions = array(); + // design borders around HTML cells. + for ($page = $startpage; $page <= $endpage; ++$page) { // for each page + $ccode = ''; + $this->setPage($page); + if ($this->num_columns < 2) { + // single-column mode + $this->x = $x; + $this->y = $this->tMargin; + } + // account for margin changes + if ($page > $startpage) { + if (($this->rtl) AND ($this->pagedim[$page]['orm'] != $this->pagedim[$startpage]['orm'])) { + $this->x -= ($this->pagedim[$page]['orm'] - $this->pagedim[$startpage]['orm']); + } elseif ((!$this->rtl) AND ($this->pagedim[$page]['olm'] != $this->pagedim[$startpage]['olm'])) { + $this->x += ($this->pagedim[$page]['olm'] - $this->pagedim[$startpage]['olm']); + } + } + if ($startpage == $endpage) { + // single page + for ($column = $startcolumn; $column <= $endcolumn; ++$column) { // for each column + $this->selectColumn($column); + if ($startcolumn == $endcolumn) { // single column + $cborder = $border; + $h = ($currentY - $y) + $cellspacing['V']; + $this->y = $starty; + } elseif ($column == $startcolumn) { // first column + $cborder = $border_start; + $this->y = $starty; + $h = $this->h - $this->y - $this->bMargin; + } elseif ($column == $endcolumn) { // end column + $cborder = $border_end; + $h = $currentY - $this->y; + } else { // middle column + $cborder = $border_middle; + $h = $this->h - $this->y - $this->bMargin; + } + $ccode .= $this->getCellCode($w, $h, '', $cborder, 1, '', $fill, '', 0, true)."\n"; + } // end for each column + } elseif ($page == $startpage) { // first page + for ($column = $startcolumn; $column < $this->num_columns; ++$column) { // for each column + $this->selectColumn($column); + if ($column == $startcolumn) { // first column + $cborder = $border_start; + $this->y = $starty; + $h = $this->h - $this->y - $this->bMargin; + } else { // middle column + $cborder = $border_middle; + $h = $this->h - $this->y - $this->bMargin; + } + $ccode .= $this->getCellCode($w, $h, '', $cborder, 1, '', $fill, '', 0, true)."\n"; + } // end for each column + } elseif ($page == $endpage) { // last page + for ($column = 0; $column <= $endcolumn; ++$column) { // for each column + $this->selectColumn($column); + if ($column == $endcolumn) { + // end column + $cborder = $border_end; + $h = $currentY - $this->y; + } else { + // middle column + $cborder = $border_middle; + $h = $this->h - $this->y - $this->bMargin; + } + $ccode .= $this->getCellCode($w, $h, '', $cborder, 1, '', $fill, '', 0, true)."\n"; + } // end for each column + } else { // middle page + for ($column = 0; $column < $this->num_columns; ++$column) { // for each column + $this->selectColumn($column); + $cborder = $border_middle; + $h = $this->h - $this->y - $this->bMargin; + $ccode .= $this->getCellCode($w, $h, '', $cborder, 1, '', $fill, '', 0, true)."\n"; + } // end for each column + } + if ($cborder OR $fill) { + // draw border and fill + if ($this->inxobj) { + // we are inside an XObject template + if (end($this->xobjects[$this->xobjid]['transfmrk']) !== false) { + $pagemarkkey = key($this->xobjects[$this->xobjid]['transfmrk']); + $pagemark = &$this->xobjects[$this->xobjid]['transfmrk'][$pagemarkkey]; + } else { + $pagemark = &$this->xobjects[$this->xobjid]['intmrk']; + } + $pagebuff = $this->xobjects[$this->xobjid]['outdata']; + $pstart = substr($pagebuff, 0, $pagemark); + $pend = substr($pagebuff, $pagemark); + $this->xobjects[$this->xobjid]['outdata'] = $pstart.$ccode.$pend; + $pagemark += strlen($ccode); + } else { + if (end($this->transfmrk[$this->page]) !== false) { + $pagemarkkey = key($this->transfmrk[$this->page]); + $pagemark = &$this->transfmrk[$this->page][$pagemarkkey]; + } elseif ($this->InFooter) { + $pagemark = &$this->footerpos[$this->page]; + } else { + $pagemark = &$this->intmrk[$this->page]; + } + $pagebuff = $this->getPageBuffer($this->page); + $pstart = substr($pagebuff, 0, $this->bordermrk[$this->page]); + $pend = substr($pagebuff, $this->bordermrk[$this->page]); + $this->setPageBuffer($this->page, $pstart.$ccode.$pend); + $offsetlen = strlen($ccode); + $this->bordermrk[$this->page] += $offsetlen; + $this->cntmrk[$this->page] += $offsetlen; + $pagemark += $offsetlen; + } + } + } // end for each page + // restore page regions + $this->page_regions = $temp_page_regions; + if (isset($old_bgcolor)) { + // restore background color + $this->SetFillColorArray($old_bgcolor); + } + // restore pointer position + $this->x = $prev_x; + $this->y = $prev_y; + $this->lasth = $prev_lasth; + } + + /** + * Set the default bullet to be used as LI bullet symbol + * @param $symbol (string) character or string to be used (legal values are: '' = automatic, '!' = auto bullet, '#' = auto numbering, 'disc', 'disc', 'circle', 'square', '1', 'decimal', 'decimal-leading-zero', 'i', 'lower-roman', 'I', 'upper-roman', 'a', 'lower-alpha', 'lower-latin', 'A', 'upper-alpha', 'upper-latin', 'lower-greek', 'img|type|width|height|image.ext') + * @public + * @since 4.0.028 (2008-09-26) + */ + public function setLIsymbol($symbol='!') { + // check for custom image symbol + if (substr($symbol, 0, 4) == 'img|') { + $this->lisymbol = $symbol; + return; + } + $symbol = strtolower($symbol); + switch ($symbol) { + case '!' : + case '#' : + case 'disc' : + case 'circle' : + case 'square' : + case '1': + case 'decimal': + case 'decimal-leading-zero': + case 'i': + case 'lower-roman': + case 'I': + case 'upper-roman': + case 'a': + case 'lower-alpha': + case 'lower-latin': + case 'A': + case 'upper-alpha': + case 'upper-latin': + case 'lower-greek': { + $this->lisymbol = $symbol; + break; + } + default : { + $this->lisymbol = ''; + } + } + } + + /** + * Set the booklet mode for double-sided pages. + * @param $booklet (boolean) true set the booklet mode on, false otherwise. + * @param $inner (float) Inner page margin. + * @param $outer (float) Outer page margin. + * @public + * @since 4.2.000 (2008-10-29) + */ + public function SetBooklet($booklet=true, $inner=-1, $outer=-1) { + $this->booklet = $booklet; + if ($inner >= 0) { + $this->lMargin = $inner; + } + if ($outer >= 0) { + $this->rMargin = $outer; + } + } + + /** + * Swap the left and right margins. + * @param $reverse (boolean) if true swap left and right margins. + * @protected + * @since 4.2.000 (2008-10-29) + */ + protected function swapMargins($reverse=true) { + if ($reverse) { + // swap left and right margins + $mtemp = $this->original_lMargin; + $this->original_lMargin = $this->original_rMargin; + $this->original_rMargin = $mtemp; + $deltam = $this->original_lMargin - $this->original_rMargin; + $this->lMargin += $deltam; + $this->rMargin -= $deltam; + } + } + + /** + * Set the vertical spaces for HTML tags. + * The array must have the following structure (example): + * $tagvs = array('h1' => array(0 => array('h' => '', 'n' => 2), 1 => array('h' => 1.3, 'n' => 1))); + * The first array level contains the tag names, + * the second level contains 0 for opening tags or 1 for closing tags, + * the third level contains the vertical space unit (h) and the number spaces to add (n). + * If the h parameter is not specified, default values are used. + * @param $tagvs (array) array of tags and relative vertical spaces. + * @public + * @since 4.2.001 (2008-10-30) + */ + public function setHtmlVSpace($tagvs) { + $this->tagvspaces = $tagvs; + } + + /** + * Set custom width for list indentation. + * @param $width (float) width of the indentation. Use negative value to disable it. + * @public + * @since 4.2.007 (2008-11-12) + */ + public function setListIndentWidth($width) { + return $this->customlistindent = floatval($width); + } + + /** + * Set the top/bottom cell sides to be open or closed when the cell cross the page. + * @param $isopen (boolean) if true keeps the top/bottom border open for the cell sides that cross the page. + * @public + * @since 4.2.010 (2008-11-14) + */ + public function setOpenCell($isopen) { + $this->opencell = $isopen; + } + + /** + * Set the color and font style for HTML links. + * @param $color (array) RGB array of colors + * @param $fontstyle (string) additional font styles to add + * @public + * @since 4.4.003 (2008-12-09) + */ + public function setHtmlLinksStyle($color=array(0,0,255), $fontstyle='U') { + $this->htmlLinkColorArray = $color; + $this->htmlLinkFontStyle = $fontstyle; + } + + /** + * Convert HTML string containing value and unit of measure to user's units or points. + * @param $htmlval (string) string containing values and unit + * @param $refsize (string) reference value in points + * @param $defaultunit (string) default unit (can be one of the following: %, em, ex, px, in, mm, pc, pt). + * @param $points (boolean) if true returns points, otherwise returns value in user's units + * @return float value in user's unit or point if $points=true + * @public + * @since 4.4.004 (2008-12-10) + */ + public function getHTMLUnitToUnits($htmlval, $refsize=1, $defaultunit='px', $points=false) { + $supportedunits = array('%', 'em', 'ex', 'px', 'in', 'cm', 'mm', 'pc', 'pt'); + $retval = 0; + $value = 0; + $unit = 'px'; + $k = $this->k; + if ($points) { + $k = 1; + } + if (in_array($defaultunit, $supportedunits)) { + $unit = $defaultunit; + } + if (is_numeric($htmlval)) { + $value = floatval($htmlval); + } elseif (preg_match('/([0-9\.\-\+]+)/', $htmlval, $mnum)) { + $value = floatval($mnum[1]); + if (preg_match('/([a-z%]+)/', $htmlval, $munit)) { + if (in_array($munit[1], $supportedunits)) { + $unit = $munit[1]; + } + } + } + switch ($unit) { + // percentage + case '%': { + $retval = (($value * $refsize) / 100); + break; + } + // relative-size + case 'em': { + $retval = ($value * $refsize); + break; + } + // height of lower case 'x' (about half the font-size) + case 'ex': { + $retval = $value * ($refsize / 2); + break; + } + // absolute-size + case 'in': { + $retval = ($value * $this->dpi) / $k; + break; + } + // centimeters + case 'cm': { + $retval = ($value / 2.54 * $this->dpi) / $k; + break; + } + // millimeters + case 'mm': { + $retval = ($value / 25.4 * $this->dpi) / $k; + break; + } + // one pica is 12 points + case 'pc': { + $retval = ($value * 12) / $k; + break; + } + // points + case 'pt': { + $retval = $value / $k; + break; + } + // pixels + case 'px': { + $retval = $this->pixelsToUnits($value); + break; + } + } + return $retval; + } + + /** + * Returns the Roman representation of an integer number + * @param $number (int) number to convert + * @return string roman representation of the specified number + * @since 4.4.004 (2008-12-10) + * @public + */ + public function intToRoman($number) { + $roman = ''; + while ($number >= 1000) { + $roman .= 'M'; + $number -= 1000; + } + while ($number >= 900) { + $roman .= 'CM'; + $number -= 900; + } + while ($number >= 500) { + $roman .= 'D'; + $number -= 500; + } + while ($number >= 400) { + $roman .= 'CD'; + $number -= 400; + } + while ($number >= 100) { + $roman .= 'C'; + $number -= 100; + } + while ($number >= 90) { + $roman .= 'XC'; + $number -= 90; + } + while ($number >= 50) { + $roman .= 'L'; + $number -= 50; + } + while ($number >= 40) { + $roman .= 'XL'; + $number -= 40; + } + while ($number >= 10) { + $roman .= 'X'; + $number -= 10; + } + while ($number >= 9) { + $roman .= 'IX'; + $number -= 9; + } + while ($number >= 5) { + $roman .= 'V'; + $number -= 5; + } + while ($number >= 4) { + $roman .= 'IV'; + $number -= 4; + } + while ($number >= 1) { + $roman .= 'I'; + --$number; + } + return $roman; + } + + /** + * Output an HTML list bullet or ordered item symbol + * @param $listdepth (int) list nesting level + * @param $listtype (string) type of list + * @param $size (float) current font size + * @protected + * @since 4.4.004 (2008-12-10) + */ + protected function putHtmlListBullet($listdepth, $listtype='', $size=10) { + $size /= $this->k; + $fill = ''; + $color = $this->fgcolor; + $width = 0; + $textitem = ''; + $tmpx = $this->x; + $lspace = $this->GetStringWidth(' '); + if ($listtype == '^') { + // special symbol used for avoid justification of rect bullet + $this->lispacer = ''; + return; + } elseif ($listtype == '!') { + // set default list type for unordered list + $deftypes = array('disc', 'circle', 'square'); + $listtype = $deftypes[($listdepth - 1) % 3]; + } elseif ($listtype == '#') { + // set default list type for ordered list + $listtype = 'decimal'; + } elseif(substr($listtype, 0, 4) == 'img|') { + // custom image type ('img|type|width|height|image.ext') + $img = explode('|', $listtype); + $listtype = 'img'; + } + switch ($listtype) { + // unordered types + case 'none': { + break; + } + case 'disc': { + $fill = 'F'; + } + case 'circle': { + $fill .= 'D'; + $r = $size / 6; + $lspace += (2 * $r); + if ($this->rtl) { + $this->x += $lspace; + } else { + $this->x -= $lspace; + } + $this->Circle(($this->x + $r), ($this->y + ($this->lasth / 2)), $r, 0, 360, $fill, array('color'=>$color), $color, 8); + break; + } + case 'square': { + $l = $size / 3; + $lspace += $l; + if ($this->rtl) {; + $this->x += $lspace; + } else { + $this->x -= $lspace; + } + $this->Rect($this->x, ($this->y + (($this->lasth - $l) / 2)), $l, $l, 'F', array(), $color); + break; + } + case 'img': { + // 1=>type, 2=>width, 3=>height, 4=>image.ext + $lspace += $img[2]; + if ($this->rtl) {; + $this->x += $lspace; + } else { + $this->x -= $lspace; + } + $imgtype = strtolower($img[1]); + $prev_y = $this->y; + switch ($imgtype) { + case 'svg': { + $this->ImageSVG($img[4], $this->x, ($this->y + (($this->lasth - $img[3]) / 2)), $img[2], $img[3], '', 'T', '', 0, false); + break; + } + case 'ai': + case 'eps': { + $this->ImageEps($img[4], $this->x, ($this->y + (($this->lasth - $img[3]) / 2)), $img[2], $img[3], '', true, 'T', '', 0, false); + break; + } + default: { + $this->Image($img[4], $this->x, ($this->y + (($this->lasth - $img[3]) / 2)), $img[2], $img[3], $img[1], '', 'T', false, 300, '', false, false, 0, false, false, false); + break; + } + } + $this->y = $prev_y; + break; + } + // ordered types + // $this->listcount[$this->listnum]; + // $textitem + case '1': + case 'decimal': { + $textitem = $this->listcount[$this->listnum]; + break; + } + case 'decimal-leading-zero': { + $textitem = sprintf('%02d', $this->listcount[$this->listnum]); + break; + } + case 'i': + case 'lower-roman': { + $textitem = strtolower($this->intToRoman($this->listcount[$this->listnum])); + break; + } + case 'I': + case 'upper-roman': { + $textitem = $this->intToRoman($this->listcount[$this->listnum]); + break; + } + case 'a': + case 'lower-alpha': + case 'lower-latin': { + $textitem = chr(97 + $this->listcount[$this->listnum] - 1); + break; + } + case 'A': + case 'upper-alpha': + case 'upper-latin': { + $textitem = chr(65 + $this->listcount[$this->listnum] - 1); + break; + } + case 'lower-greek': { + $textitem = $this->unichr(945 + $this->listcount[$this->listnum] - 1); + break; + } + /* + // Types to be implemented (special handling) + case 'hebrew': { + break; + } + case 'armenian': { + break; + } + case 'georgian': { + break; + } + case 'cjk-ideographic': { + break; + } + case 'hiragana': { + break; + } + case 'katakana': { + break; + } + case 'hiragana-iroha': { + break; + } + case 'katakana-iroha': { + break; + } + */ + default: { + $textitem = $this->listcount[$this->listnum]; + } + } + if (!$this->empty_string($textitem)) { + // Check whether we need a new page or new column + $prev_y = $this->y; + $h = ($this->FontSize * $this->cell_height_ratio) + $this->cell_padding['T'] + $this->cell_padding['B']; + if ($this->checkPageBreak($h) OR ($this->y < $prev_y)) { + $tmpx = $this->x; + } + // print ordered item + if ($this->rtl) { + $textitem = '.'.$textitem; + } else { + $textitem = $textitem.'.'; + } + $lspace += $this->GetStringWidth($textitem); + if ($this->rtl) { + $this->x += $lspace; + } else { + $this->x -= $lspace; + } + $this->Write($this->lasth, $textitem, '', false, '', false, 0, false); + } + $this->x = $tmpx; + $this->lispacer = '^'; + } + + /** + * Returns current graphic variables as array. + * @return array of graphic variables + * @protected + * @since 4.2.010 (2008-11-14) + */ + protected function getGraphicVars() { + $grapvars = array( + 'FontFamily' => $this->FontFamily, + 'FontStyle' => $this->FontStyle, + 'FontSizePt' => $this->FontSizePt, + 'rMargin' => $this->rMargin, + 'lMargin' => $this->lMargin, + 'cell_padding' => $this->cell_padding, + 'cell_margin' => $this->cell_margin, + 'LineWidth' => $this->LineWidth, + 'linestyleWidth' => $this->linestyleWidth, + 'linestyleCap' => $this->linestyleCap, + 'linestyleJoin' => $this->linestyleJoin, + 'linestyleDash' => $this->linestyleDash, + 'textrendermode' => $this->textrendermode, + 'textstrokewidth' => $this->textstrokewidth, + 'DrawColor' => $this->DrawColor, + 'FillColor' => $this->FillColor, + 'TextColor' => $this->TextColor, + 'ColorFlag' => $this->ColorFlag, + 'bgcolor' => $this->bgcolor, + 'fgcolor' => $this->fgcolor, + 'htmlvspace' => $this->htmlvspace, + 'listindent' => $this->listindent, + 'listindentlevel' => $this->listindentlevel, + 'listnum' => $this->listnum, + 'listordered' => $this->listordered, + 'listcount' => $this->listcount, + 'lispacer' => $this->lispacer, + 'cell_height_ratio' => $this->cell_height_ratio, + 'font_stretching' => $this->font_stretching, + 'font_spacing' => $this->font_spacing, + // extended + 'lasth' => $this->lasth, + 'tMargin' => $this->tMargin, + 'bMargin' => $this->bMargin, + 'AutoPageBreak' => $this->AutoPageBreak, + 'PageBreakTrigger' => $this->PageBreakTrigger, + 'x' => $this->x, + 'y' => $this->y, + 'w' => $this->w, + 'h' => $this->h, + 'wPt' => $this->wPt, + 'hPt' => $this->hPt, + 'fwPt' => $this->fwPt, + 'fhPt' => $this->fhPt, + 'page' => $this->page, + 'current_column' => $this->current_column, + 'num_columns' => $this->num_columns + ); + return $grapvars; + } + + /** + * Set graphic variables. + * @param $gvars (array) array of graphic variablesto restore + * @param $extended (boolean) if true restore extended graphic variables + * @protected + * @since 4.2.010 (2008-11-14) + */ + protected function setGraphicVars($gvars, $extended=false) { + $this->FontFamily = $gvars['FontFamily']; + $this->FontStyle = $gvars['FontStyle']; + $this->FontSizePt = $gvars['FontSizePt']; + $this->rMargin = $gvars['rMargin']; + $this->lMargin = $gvars['lMargin']; + $this->cell_padding = $gvars['cell_padding']; + $this->cell_margin = $gvars['cell_margin']; + $this->LineWidth = $gvars['LineWidth']; + $this->linestyleWidth = $gvars['linestyleWidth']; + $this->linestyleCap = $gvars['linestyleCap']; + $this->linestyleJoin = $gvars['linestyleJoin']; + $this->linestyleDash = $gvars['linestyleDash']; + $this->textrendermode = $gvars['textrendermode']; + $this->textstrokewidth = $gvars['textstrokewidth']; + $this->DrawColor = $gvars['DrawColor']; + $this->FillColor = $gvars['FillColor']; + $this->TextColor = $gvars['TextColor']; + $this->ColorFlag = $gvars['ColorFlag']; + $this->bgcolor = $gvars['bgcolor']; + $this->fgcolor = $gvars['fgcolor']; + $this->htmlvspace = $gvars['htmlvspace']; + $this->listindent = $gvars['listindent']; + $this->listindentlevel = $gvars['listindentlevel']; + $this->listnum = $gvars['listnum']; + $this->listordered = $gvars['listordered']; + $this->listcount = $gvars['listcount']; + $this->lispacer = $gvars['lispacer']; + $this->cell_height_ratio = $gvars['cell_height_ratio']; + $this->font_stretching = $gvars['font_stretching']; + $this->font_spacing = $gvars['font_spacing']; + if ($extended) { + // restore extended values + $this->lasth = $gvars['lasth']; + $this->tMargin = $gvars['tMargin']; + $this->bMargin = $gvars['bMargin']; + $this->AutoPageBreak = $gvars['AutoPageBreak']; + $this->PageBreakTrigger = $gvars['PageBreakTrigger']; + $this->x = $gvars['x']; + $this->y = $gvars['y']; + $this->w = $gvars['w']; + $this->h = $gvars['h']; + $this->wPt = $gvars['wPt']; + $this->hPt = $gvars['hPt']; + $this->fwPt = $gvars['fwPt']; + $this->fhPt = $gvars['fhPt']; + $this->page = $gvars['page']; + $this->current_column = $gvars['current_column']; + $this->num_columns = $gvars['num_columns']; + } + $this->_out(''.$this->linestyleWidth.' '.$this->linestyleCap.' '.$this->linestyleJoin.' '.$this->linestyleDash.' '.$this->DrawColor.' '.$this->FillColor.''); + if (!$this->empty_string($this->FontFamily)) { + $this->SetFont($this->FontFamily, $this->FontStyle, $this->FontSizePt); + } + } + + /** + * Returns a temporary filename for caching object on filesystem. + * @param $name (string) prefix to add to filename + * @return string filename. + * @since 4.5.000 (2008-12-31) + * @protected + */ + protected function getObjFilename($name) { + return tempnam(K_PATH_CACHE, $name.'_'); + } + + /** + * Writes data to a temporary file on filesystem. + * @param $filename (string) file name + * @param $data (mixed) data to write on file + * @param $append (boolean) if true append data, false replace. + * @since 4.5.000 (2008-12-31) + * @protected + */ + protected function writeDiskCache($filename, $data, $append=false) { + if ($append) { + $fmode = 'ab+'; + } else { + $fmode = 'wb+'; + } + $f = @fopen($filename, $fmode); + if (!$f) { + $this->Error('Unable to write cache file: '.$filename); + } else { + fwrite($f, $data); + fclose($f); + } + // update file length (needed for transactions) + if (!isset($this->cache_file_length['_'.$filename])) { + $this->cache_file_length['_'.$filename] = strlen($data); + } else { + $this->cache_file_length['_'.$filename] += strlen($data); + } + } + + /** + * Read data from a temporary file on filesystem. + * @param $filename (string) file name + * @return mixed retrieved data + * @since 4.5.000 (2008-12-31) + * @protected + */ + protected function readDiskCache($filename) { + return file_get_contents($filename); + } + + /** + * Set buffer content (always append data). + * @param $data (string) data + * @protected + * @since 4.5.000 (2009-01-02) + */ + protected function setBuffer($data) { + $this->bufferlen += strlen($data); + if ($this->diskcache) { + if (!isset($this->buffer) OR $this->empty_string($this->buffer)) { + $this->buffer = $this->getObjFilename('buffer'); + } + $this->writeDiskCache($this->buffer, $data, true); + } else { + $this->buffer .= $data; + } + } + + /** + * Replace the buffer content + * @param $data (string) data + * @protected + * @since 5.5.000 (2010-06-22) + */ + protected function replaceBuffer($data) { + $this->bufferlen = strlen($data); + if ($this->diskcache) { + if (!isset($this->buffer) OR $this->empty_string($this->buffer)) { + $this->buffer = $this->getObjFilename('buffer'); + } + $this->writeDiskCache($this->buffer, $data, false); + } else { + $this->buffer = $data; + } + } + + /** + * Get buffer content. + * @return string buffer content + * @protected + * @since 4.5.000 (2009-01-02) + */ + protected function getBuffer() { + if ($this->diskcache) { + return $this->readDiskCache($this->buffer); + } else { + return $this->buffer; + } + } + + /** + * Set page buffer content. + * @param $page (int) page number + * @param $data (string) page data + * @param $append (boolean) if true append data, false replace. + * @protected + * @since 4.5.000 (2008-12-31) + */ + protected function setPageBuffer($page, $data, $append=false) { + if ($this->diskcache) { + if (!isset($this->pages[$page])) { + $this->pages[$page] = $this->getObjFilename('page'.$page); + } + $this->writeDiskCache($this->pages[$page], $data, $append); + } else { + if ($append) { + $this->pages[$page] .= $data; + } else { + $this->pages[$page] = $data; + } + } + if ($append AND isset($this->pagelen[$page])) { + $this->pagelen[$page] += strlen($data); + } else { + $this->pagelen[$page] = strlen($data); + } + } + + /** + * Get page buffer content. + * @param $page (int) page number + * @return string page buffer content or false in case of error + * @protected + * @since 4.5.000 (2008-12-31) + */ + protected function getPageBuffer($page) { + if ($this->diskcache) { + return $this->readDiskCache($this->pages[$page]); + } elseif (isset($this->pages[$page])) { + return $this->pages[$page]; + } + return false; + } + + /** + * Set image buffer content. + * @param $image (string) image key + * @param $data (array) image data + * @protected + * @since 4.5.000 (2008-12-31) + */ + protected function setImageBuffer($image, $data) { + if ($this->diskcache) { + if (!isset($this->images[$image])) { + $this->images[$image] = $this->getObjFilename('image'.$image); + } + $this->writeDiskCache($this->images[$image], serialize($data)); + } else { + $this->images[$image] = $data; + } + if (!in_array($image, $this->imagekeys)) { + $this->imagekeys[] = $image; + ++$this->numimages; + } + } + + /** + * Set image buffer content for a specified sub-key. + * @param $image (string) image key + * @param $key (string) image sub-key + * @param $data (array) image data + * @protected + * @since 4.5.000 (2008-12-31) + */ + protected function setImageSubBuffer($image, $key, $data) { + if (!isset($this->images[$image])) { + $this->setImageBuffer($image, array()); + } + if ($this->diskcache) { + $tmpimg = $this->getImageBuffer($image); + $tmpimg[$key] = $data; + $this->writeDiskCache($this->images[$image], serialize($tmpimg)); + } else { + $this->images[$image][$key] = $data; + } + } + + /** + * Get image buffer content. + * @param $image (string) image key + * @return string image buffer content or false in case of error + * @protected + * @since 4.5.000 (2008-12-31) + */ + protected function getImageBuffer($image) { + if ($this->diskcache AND isset($this->images[$image])) { + return unserialize($this->readDiskCache($this->images[$image])); + } elseif (isset($this->images[$image])) { + return $this->images[$image]; + } + return false; + } + + /** + * Set font buffer content. + * @param $font (string) font key + * @param $data (array) font data + * @protected + * @since 4.5.000 (2009-01-02) + */ + protected function setFontBuffer($font, $data) { + if ($this->diskcache) { + if (!isset($this->fonts[$font])) { + $this->fonts[$font] = $this->getObjFilename('font'); + } + $this->writeDiskCache($this->fonts[$font], serialize($data)); + } else { + $this->fonts[$font] = $data; + } + if (!in_array($font, $this->fontkeys)) { + $this->fontkeys[] = $font; + // store object ID for current font + ++$this->n; + $this->font_obj_ids[$font] = $this->n; + $this->setFontSubBuffer($font, 'n', $this->n); + } + } + + /** + * Set font buffer content. + * @param $font (string) font key + * @param $key (string) font sub-key + * @param $data (array) font data + * @protected + * @since 4.5.000 (2009-01-02) + */ + protected function setFontSubBuffer($font, $key, $data) { + if (!isset($this->fonts[$font])) { + $this->setFontBuffer($font, array()); + } + if ($this->diskcache) { + $tmpfont = $this->getFontBuffer($font); + $tmpfont[$key] = $data; + $this->writeDiskCache($this->fonts[$font], serialize($tmpfont)); + } else { + $this->fonts[$font][$key] = $data; + } + } + + /** + * Get font buffer content. + * @param $font (string) font key + * @return string font buffer content or false in case of error + * @protected + * @since 4.5.000 (2009-01-02) + */ + protected function getFontBuffer($font) { + if ($this->diskcache AND isset($this->fonts[$font])) { + return unserialize($this->readDiskCache($this->fonts[$font])); + } elseif (isset($this->fonts[$font])) { + return $this->fonts[$font]; + } + return false; + } + + /** + * Move a page to a previous position. + * @param $frompage (int) number of the source page + * @param $topage (int) number of the destination page (must be less than $frompage) + * @return true in case of success, false in case of error. + * @public + * @since 4.5.000 (2009-01-02) + */ + public function movePage($frompage, $topage) { + if (($frompage > $this->numpages) OR ($frompage <= $topage)) { + return false; + } + if ($frompage == $this->page) { + // close the page before moving it + $this->endPage(); + } + // move all page-related states + $tmppage = $this->pages[$frompage]; + $tmppagedim = $this->pagedim[$frompage]; + $tmppagelen = $this->pagelen[$frompage]; + $tmpintmrk = $this->intmrk[$frompage]; + $tmpbordermrk = $this->bordermrk[$frompage]; + $tmpcntmrk = $this->cntmrk[$frompage]; + if (isset($this->footerpos[$frompage])) { + $tmpfooterpos = $this->footerpos[$frompage]; + } + if (isset($this->footerlen[$frompage])) { + $tmpfooterlen = $this->footerlen[$frompage]; + } + if (isset($this->transfmrk[$frompage])) { + $tmptransfmrk = $this->transfmrk[$frompage]; + } + if (isset($this->PageAnnots[$frompage])) { + $tmpannots = $this->PageAnnots[$frompage]; + } + if (isset($this->newpagegroup[$frompage])) { + $tmpnewpagegroup = $this->newpagegroup[$frompage]; + } + for ($i = $frompage; $i > $topage; --$i) { + $j = $i - 1; + // shift pages down + $this->pages[$i] = $this->pages[$j]; + $this->pagedim[$i] = $this->pagedim[$j]; + $this->pagelen[$i] = $this->pagelen[$j]; + $this->intmrk[$i] = $this->intmrk[$j]; + $this->bordermrk[$i] = $this->bordermrk[$j]; + $this->cntmrk[$i] = $this->cntmrk[$j]; + if (isset($this->footerpos[$j])) { + $this->footerpos[$i] = $this->footerpos[$j]; + } elseif (isset($this->footerpos[$i])) { + unset($this->footerpos[$i]); + } + if (isset($this->footerlen[$j])) { + $this->footerlen[$i] = $this->footerlen[$j]; + } elseif (isset($this->footerlen[$i])) { + unset($this->footerlen[$i]); + } + if (isset($this->transfmrk[$j])) { + $this->transfmrk[$i] = $this->transfmrk[$j]; + } elseif (isset($this->transfmrk[$i])) { + unset($this->transfmrk[$i]); + } + if (isset($this->PageAnnots[$j])) { + $this->PageAnnots[$i] = $this->PageAnnots[$j]; + } elseif (isset($this->PageAnnots[$i])) { + unset($this->PageAnnots[$i]); + } + if (isset($this->newpagegroup[$j])) { + $this->newpagegroup[$i] = $this->newpagegroup[$j]; + } elseif (isset($this->newpagegroup[$i])) { + unset($this->newpagegroup[$i]); + } + } + $this->pages[$topage] = $tmppage; + $this->pagedim[$topage] = $tmppagedim; + $this->pagelen[$topage] = $tmppagelen; + $this->intmrk[$topage] = $tmpintmrk; + $this->bordermrk[$topage] = $tmpbordermrk; + $this->cntmrk[$topage] = $tmpcntmrk; + if (isset($tmpfooterpos)) { + $this->footerpos[$topage] = $tmpfooterpos; + } elseif (isset($this->footerpos[$topage])) { + unset($this->footerpos[$topage]); + } + if (isset($tmpfooterlen)) { + $this->footerlen[$topage] = $tmpfooterlen; + } elseif (isset($this->footerlen[$topage])) { + unset($this->footerlen[$topage]); + } + if (isset($tmptransfmrk)) { + $this->transfmrk[$topage] = $tmptransfmrk; + } elseif (isset($this->transfmrk[$topage])) { + unset($this->transfmrk[$topage]); + } + if (isset($tmpannots)) { + $this->PageAnnots[$topage] = $tmpannots; + } elseif (isset($this->PageAnnots[$topage])) { + unset($this->PageAnnots[$topage]); + } + if (isset($tmpnewpagegroup)) { + $this->newpagegroup[$topage] = $tmpnewpagegroup; + } elseif (isset($this->newpagegroup[$topage])) { + unset($this->newpagegroup[$topage]); + } + // adjust outlines + $tmpoutlines = $this->outlines; + foreach ($tmpoutlines as $key => $outline) { + if (($outline['p'] >= $topage) AND ($outline['p'] < $frompage)) { + $this->outlines[$key]['p'] = $outline['p'] + 1; + } elseif ($outline['p'] == $frompage) { + $this->outlines[$key]['p'] = $topage; + } + } + // adjust links + $tmplinks = $this->links; + foreach ($tmplinks as $key => $link) { + if (($link[0] >= $topage) AND ($link[0] < $frompage)) { + $this->links[$key][0] = $link[0] + 1; + } elseif ($link[0] == $frompage) { + $this->links[$key][0] = $topage; + } + } + // adjust javascript + $tmpjavascript = $this->javascript; + global $jfrompage, $jtopage; + $jfrompage = $frompage; + $jtopage = $topage; + $this->javascript = preg_replace_callback('/this\.addField\(\'([^\']*)\',\'([^\']*)\',([0-9]+)/', + create_function('$matches', 'global $jfrompage, $jtopage; + $pagenum = intval($matches[3]) + 1; + if (($pagenum >= $jtopage) AND ($pagenum < $jfrompage)) { + $newpage = ($pagenum + 1); + } elseif ($pagenum == $jfrompage) { + $newpage = $jtopage; + } else { + $newpage = $pagenum; + } + --$newpage; + return "this.addField(\'".$matches[1]."\',\'".$matches[2]."\',".$newpage."";'), $tmpjavascript); + // return to last page + $this->lastPage(true); + return true; + } + + /** + * Remove the specified page. + * @param $page (int) page to remove + * @return true in case of success, false in case of error. + * @public + * @since 4.6.004 (2009-04-23) + */ + public function deletePage($page) { + if (($page < 1) OR ($page > $this->numpages)) { + return false; + } + // delete current page + unset($this->pages[$page]); + unset($this->pagedim[$page]); + unset($this->pagelen[$page]); + unset($this->intmrk[$page]); + unset($this->bordermrk[$page]); + unset($this->cntmrk[$page]); + if (isset($this->footerpos[$page])) { + unset($this->footerpos[$page]); + } + if (isset($this->footerlen[$page])) { + unset($this->footerlen[$page]); + } + if (isset($this->transfmrk[$page])) { + unset($this->transfmrk[$page]); + } + if (isset($this->PageAnnots[$page])) { + unset($this->PageAnnots[$page]); + } + if (isset($this->newpagegroup[$page])) { + unset($this->newpagegroup[$page]); + } + if (isset($this->pageopen[$page])) { + unset($this->pageopen[$page]); + } + // update remaining pages + for ($i = $page; $i < $this->numpages; ++$i) { + $j = $i + 1; + // shift pages + $this->pages[$i] = $this->pages[$j]; + $this->pagedim[$i] = $this->pagedim[$j]; + $this->pagelen[$i] = $this->pagelen[$j]; + $this->intmrk[$i] = $this->intmrk[$j]; + $this->bordermrk[$i] = $this->bordermrk[$j]; + $this->cntmrk[$i] = $this->cntmrk[$j]; + if (isset($this->footerpos[$j])) { + $this->footerpos[$i] = $this->footerpos[$j]; + } elseif (isset($this->footerpos[$i])) { + unset($this->footerpos[$i]); + } + if (isset($this->footerlen[$j])) { + $this->footerlen[$i] = $this->footerlen[$j]; + } elseif (isset($this->footerlen[$i])) { + unset($this->footerlen[$i]); + } + if (isset($this->transfmrk[$j])) { + $this->transfmrk[$i] = $this->transfmrk[$j]; + } elseif (isset($this->transfmrk[$i])) { + unset($this->transfmrk[$i]); + } + if (isset($this->PageAnnots[$j])) { + $this->PageAnnots[$i] = $this->PageAnnots[$j]; + } elseif (isset($this->PageAnnots[$i])) { + unset($this->PageAnnots[$i]); + } + if (isset($this->newpagegroup[$j])) { + $this->newpagegroup[$i] = $this->newpagegroup[$j]; + } elseif (isset($this->newpagegroup[$i])) { + unset($this->newpagegroup[$i]); + } + if (isset($this->pageopen[$j])) { + $this->pageopen[$i] = $this->pageopen[$j]; + } elseif (isset($this->pageopen[$i])) { + unset($this->pageopen[$i]); + } + } + // remove last page + unset($this->pages[$this->numpages]); + unset($this->pagedim[$this->numpages]); + unset($this->pagelen[$this->numpages]); + unset($this->intmrk[$this->numpages]); + unset($this->bordermrk[$this->numpages]); + unset($this->cntmrk[$this->numpages]); + if (isset($this->footerpos[$this->numpages])) { + unset($this->footerpos[$this->numpages]); + } + if (isset($this->footerlen[$this->numpages])) { + unset($this->footerlen[$this->numpages]); + } + if (isset($this->transfmrk[$this->numpages])) { + unset($this->transfmrk[$this->numpages]); + } + if (isset($this->PageAnnots[$this->numpages])) { + unset($this->PageAnnots[$this->numpages]); + } + if (isset($this->newpagegroup[$this->numpages])) { + unset($this->newpagegroup[$this->numpages]); + } + if (isset($this->pageopen[$this->numpages])) { + unset($this->pageopen[$this->numpages]); + } + --$this->numpages; + $this->page = $this->numpages; + // adjust outlines + $tmpoutlines = $this->outlines; + foreach ($tmpoutlines as $key => $outline) { + if ($outline['p'] > $page) { + $this->outlines[$key]['p'] = $outline['p'] - 1; + } elseif ($outline['p'] == $page) { + unset($this->outlines[$key]); + } + } + // adjust links + $tmplinks = $this->links; + foreach ($tmplinks as $key => $link) { + if ($link[0] > $page) { + $this->links[$key][0] = $link[0] - 1; + } elseif ($link[0] == $page) { + unset($this->links[$key]); + } + } + // adjust javascript + $tmpjavascript = $this->javascript; + global $jpage; + $jpage = $page; + $this->javascript = preg_replace_callback('/this\.addField\(\'([^\']*)\',\'([^\']*)\',([0-9]+)/', + create_function('$matches', 'global $jpage; + $pagenum = intval($matches[3]) + 1; + if ($pagenum >= $jpage) { + $newpage = ($pagenum - 1); + } elseif ($pagenum == $jpage) { + $newpage = 1; + } else { + $newpage = $pagenum; + } + --$newpage; + return "this.addField(\'".$matches[1]."\',\'".$matches[2]."\',".$newpage."";'), $tmpjavascript); + // return to last page + $this->lastPage(true); + return true; + } + + /** + * Clone the specified page to a new page. + * @param $page (int) number of page to copy (0 = current page) + * @return true in case of success, false in case of error. + * @public + * @since 4.9.015 (2010-04-20) + */ + public function copyPage($page=0) { + if ($page == 0) { + // default value + $page = $this->page; + } + if (($page < 1) OR ($page > $this->numpages)) { + return false; + } + if ($page == $this->page) { + // close the page before cloning it + $this->endPage(); + } + // copy all page-related states + ++$this->numpages; + $this->page = $this->numpages; + $this->pages[$this->page] = $this->pages[$page]; + $this->pagedim[$this->page] = $this->pagedim[$page]; + $this->pagelen[$this->page] = $this->pagelen[$page]; + $this->intmrk[$this->page] = $this->intmrk[$page]; + $this->bordermrk[$this->page] = $this->bordermrk[$page]; + $this->cntmrk[$this->page] = $this->cntmrk[$page]; + $this->pageopen[$this->page] = false; + if (isset($this->footerpos[$page])) { + $this->footerpos[$this->page] = $this->footerpos[$page]; + } + if (isset($this->footerlen[$page])) { + $this->footerlen[$this->page] = $this->footerlen[$page]; + } + if (isset($this->transfmrk[$page])) { + $this->transfmrk[$this->page] = $this->transfmrk[$page]; + } + if (isset($this->PageAnnots[$page])) { + $this->PageAnnots[$this->page] = $this->PageAnnots[$page]; + } + if (isset($this->newpagegroup[$page])) { + $this->newpagegroup[$this->page] = $this->newpagegroup[$page]; + } + // copy outlines + $tmpoutlines = $this->outlines; + foreach ($tmpoutlines as $key => $outline) { + if ($outline['p'] == $page) { + $this->outlines[] = array('t' => $outline['t'], 'l' => $outline['l'], 'y' => $outline['y'], 'p' => $this->page); + } + } + // copy links + $tmplinks = $this->links; + foreach ($tmplinks as $key => $link) { + if ($link[0] == $page) { + $this->links[] = array($this->page, $link[1]); + } + } + // return to last page + $this->lastPage(true); + return true; + } + + /** + * Output a Table of Content Index (TOC). + * Before calling this method you have to open the page using the addTOCPage() method. + * After calling this method you have to call endTOCPage() to close the TOC page. + * You can override this method to achieve different styles. + * @param $page (int) page number where this TOC should be inserted (leave empty for current page). + * @param $numbersfont (string) set the font for page numbers (please use monospaced font for better alignment). + * @param $filler (string) string used to fill the space between text and page number. + * @param $toc_name (string) name to use for TOC bookmark. + * @public + * @author Nicola Asuni + * @since 4.5.000 (2009-01-02) + * @see addTOCPage(), endTOCPage(), addHTMLTOC() + */ + public function addTOC($page='', $numbersfont='', $filler='.', $toc_name='TOC') { + $fontsize = $this->FontSizePt; + $fontfamily = $this->FontFamily; + $fontstyle = $this->FontStyle; + $w = $this->w - $this->lMargin - $this->rMargin; + $spacer = $this->GetStringWidth(chr(32)) * 4; + $page_first = $this->getPage(); + $lmargin = $this->lMargin; + $rmargin = $this->rMargin; + $x_start = $this->GetX(); + $current_page = $this->page; + $current_column = $this->current_column; + if ($this->empty_string($numbersfont)) { + $numbersfont = $this->default_monospaced_font; + } + if ($this->empty_string($filler)) { + $filler = ' '; + } + if ($this->empty_string($page)) { + $gap = ' '; + } else { + $gap = ''; + if ($page < 1) { + $page = 1; + } + } + foreach ($this->outlines as $key => $outline) { + if ($this->rtl) { + $aligntext = 'R'; + $alignnum = 'L'; + } else { + $aligntext = 'L'; + $alignnum = 'R'; + } + if ($outline['l'] == 0) { + $this->SetFont($fontfamily, $fontstyle.'B', $fontsize); + } else { + $this->SetFont($fontfamily, $fontstyle, $fontsize - $outline['l']); + } + // check for page break + $this->checkPageBreak(($this->FontSize * $this->cell_height_ratio)); + // set margins and X position + if (($this->page == $current_page) AND ($this->current_column == $current_column)) { + $this->lMargin = $lmargin; + $this->rMargin = $rmargin; + } else { + if ($this->current_column != $current_column) { + if ($this->rtl) { + $x_start = $this->w - $this->columns[$this->current_column]['x']; + } else { + $x_start = $this->columns[$this->current_column]['x']; + } + } + $lmargin = $this->lMargin; + $rmargin = $this->rMargin; + $current_page = $this->page; + $current_column = $this->current_column; + } + $this->SetX($x_start); + $indent = ($spacer * $outline['l']); + if ($this->rtl) { + $this->rMargin += $indent; + $this->x -= $indent; + } else { + $this->lMargin += $indent; + $this->x += $indent; + } + $link = $this->AddLink(); + $this->SetLink($link, $outline['y'], $outline['p']); + // write the text + $this->Write(0, $outline['t'], $link, 0, $aligntext, false, 0, false, false, 0); + $this->SetFont($numbersfont, $fontstyle, $fontsize); + if ($this->empty_string($page)) { + $pagenum = $outline['p']; + } else { + // placemark to be replaced with the correct number + $pagenum = '{#'.($outline['p']).'}'; + if ($this->isUnicodeFont()) { + $pagenum = '{'.$pagenum.'}'; + } + } + $numwidth = $this->GetStringWidth($pagenum); + if ($this->rtl) { + $tw = $this->x - $this->lMargin; + } else { + $tw = $this->w - $this->rMargin - $this->x; + } + $fw = $tw - $numwidth - $this->GetStringWidth(chr(32)); + $numfills = floor($fw / $this->GetStringWidth($filler)); + if ($numfills > 0) { + $rowfill = str_repeat($filler, $numfills); + } else { + $rowfill = ''; + } + if ($this->rtl) { + $pagenum = $pagenum.$gap.$rowfill.' '; + } else { + $pagenum = ' '.$rowfill.$gap.$pagenum; + } + // write the number + $this->Cell($tw, 0, $pagenum, 0, 1, $alignnum, 0, $link, 0); + } + $page_last = $this->getPage(); + $numpages = $page_last - $page_first + 1; + if (!$this->empty_string($page)) { + for ($p = $page_first; $p <= $page_last; ++$p) { + // get page data + $temppage = $this->getPageBuffer($p); + for ($n = 1; $n <= $this->numpages; ++$n) { + // update page numbers + $k = '{#'.$n.'}'; + $ku = '{'.$k.'}'; + $alias_a = $this->_escape($k); + $alias_au = $this->_escape($ku); + if ($this->isunicode) { + $alias_b = $this->_escape($this->UTF8ToLatin1($k)); + $alias_bu = $this->_escape($this->UTF8ToLatin1($ku)); + $alias_c = $this->_escape($this->utf8StrRev($k, false, $this->tmprtl)); + $alias_cu = $this->_escape($this->utf8StrRev($ku, false, $this->tmprtl)); + } + if ($n >= $page) { + $np = $n + $numpages; + } else { + $np = $n; + } + $ns = $this->formatTOCPageNumber($np); + $nu = $ns; + $sdiff = strlen($k) - strlen($ns) - 1; + $sdiffu = strlen($ku) - strlen($ns) - 1; + $sfill = str_repeat($filler, $sdiff); + $sfillu = str_repeat($filler, $sdiffu); + if ($this->rtl) { + $ns = $ns.' '.$sfill; + $nu = $nu.' '.$sfillu; + } else { + $ns = $sfill.' '.$ns; + $nu = $sfillu.' '.$nu; + } + $nu = $this->UTF8ToUTF16BE($nu, false); + $temppage = str_replace($alias_au, $nu, $temppage); + if ($this->isunicode) { + $temppage = str_replace($alias_bu, $nu, $temppage); + $temppage = str_replace($alias_cu, $nu, $temppage); + $temppage = str_replace($alias_b, $ns, $temppage); + $temppage = str_replace($alias_c, $ns, $temppage); + } + $temppage = str_replace($alias_a, $ns, $temppage); + } + // save changes + $this->setPageBuffer($p, $temppage); + } + // move pages + $this->Bookmark($toc_name, 0, 0, $page_first); + for ($i = 0; $i < $numpages; ++$i) { + $this->movePage($page_last, $page); + } + } + } + + /** + * Output a Table Of Content Index (TOC) using HTML templates. + * Before calling this method you have to open the page using the addTOCPage() method. + * After calling this method you have to call endTOCPage() to close the TOC page. + * @param $page (int) page number where this TOC should be inserted (leave empty for current page). + * @param $toc_name (string) name to use for TOC bookmark. + * @param $templates (array) array of html templates. Use: "#TOC_DESCRIPTION#" for bookmark title, "#TOC_PAGE_NUMBER#" for page number. + * @param $correct_align (boolean) if true correct the number alignment (numbers must be in monospaced font like courier and right aligned on LTR, or left aligned on RTL) + * @public + * @author Nicola Asuni + * @since 5.0.001 (2010-05-06) + * @see addTOCPage(), endTOCPage(), addTOC() + */ + public function addHTMLTOC($page='', $toc_name='TOC', $templates=array(), $correct_align=true) { + $prev_htmlLinkColorArray = $this->htmlLinkColorArray; + $prev_htmlLinkFontStyle = $this->htmlLinkFontStyle; + // set new style for link + $this->htmlLinkColorArray = array(); + $this->htmlLinkFontStyle = ''; + $page_first = $this->getPage(); + // get the font type used for numbers in each template + $current_font = $this->FontFamily; + foreach ($templates as $level => $html) { + $dom = $this->getHtmlDomArray($html); + foreach ($dom as $key => $value) { + if ($value['value'] == '#TOC_PAGE_NUMBER#') { + $this->SetFont($dom[($key - 1)]['fontname']); + $templates['F'.$level] = $this->isUnicodeFont(); + } + } + } + $this->SetFont($current_font); + foreach ($this->outlines as $key => $outline) { + // get HTML template + $row = $templates[$outline['l']]; + if ($this->empty_string($page)) { + $pagenum = $outline['p']; + } else { + // placemark to be replaced with the correct number + $pagenum = '{#'.($outline['p']).'}'; + if ($templates['F'.$outline['l']]) { + $pagenum = '{'.$pagenum.'}'; + } + } + // replace templates with current values + $row = str_replace('#TOC_DESCRIPTION#', $outline['t'], $row); + $row = str_replace('#TOC_PAGE_NUMBER#', $pagenum, $row); + // add link to page + $row = ''.$row.''; + // write bookmark entry + $this->writeHTML($row, false, false, true, false, ''); + } + // restore link styles + $this->htmlLinkColorArray = $prev_htmlLinkColorArray; + $this->htmlLinkFontStyle = $prev_htmlLinkFontStyle; + // move TOC page and replace numbers + $page_last = $this->getPage(); + $numpages = $page_last - $page_first + 1; + if (!$this->empty_string($page)) { + for ($p = $page_first; $p <= $page_last; ++$p) { + // get page data + $temppage = $this->getPageBuffer($p); + for ($n = 1; $n <= $this->numpages; ++$n) { + // update page numbers + $k = '{#'.$n.'}'; + $ku = '{'.$k.'}'; + $alias_a = $this->_escape($k); + $alias_au = $this->_escape('{'.$k.'}'); + if ($this->isunicode) { + $alias_b = $this->_escape($this->UTF8ToLatin1($k)); + $alias_bu = $this->_escape($this->UTF8ToLatin1($ku)); + $alias_c = $this->_escape($this->utf8StrRev($k, false, $this->tmprtl)); + $alias_cu = $this->_escape($this->utf8StrRev($ku, false, $this->tmprtl)); + } + if ($n >= $page) { + $np = $n + $numpages; + } else { + $np = $n; + } + $ns = $this->formatTOCPageNumber($np); + $nu = $ns; + if ($correct_align) { + $sdiff = strlen($k) - strlen($ns); + $sdiffu = strlen($ku) - strlen($ns); + $sfill = str_repeat(' ', $sdiff); + $sfillu = str_repeat(' ', $sdiffu); + if ($this->rtl) { + $ns = $ns.$sfill; + $nu = $nu.$sfillu; + } else { + $ns = $sfill.$ns; + $nu = $sfillu.$nu; + } + } + $nu = $this->UTF8ToUTF16BE($nu, false); + $temppage = str_replace($alias_au, $nu, $temppage); + if ($this->isunicode) { + $temppage = str_replace($alias_bu, $nu, $temppage); + $temppage = str_replace($alias_cu, $nu, $temppage); + $temppage = str_replace($alias_b, $ns, $temppage); + $temppage = str_replace($alias_c, $ns, $temppage); + } + $temppage = str_replace($alias_a, $ns, $temppage); + } + // save changes + $this->setPageBuffer($p, $temppage); + } + // move pages + $this->Bookmark($toc_name, 0, 0, $page_first); + for ($i = 0; $i < $numpages; ++$i) { + $this->movePage($page_last, $page); + } + } + } + + /** + * Stores a copy of the current TCPDF object used for undo operation. + * @public + * @since 4.5.029 (2009-03-19) + */ + public function startTransaction() { + if (isset($this->objcopy)) { + // remove previous copy + $this->commitTransaction(); + } + // record current page number and Y position + $this->start_transaction_page = $this->page; + $this->start_transaction_y = $this->y; + // clone current object + $this->objcopy = $this->objclone($this); + } + + /** + * Delete the copy of the current TCPDF object used for undo operation. + * @public + * @since 4.5.029 (2009-03-19) + */ + public function commitTransaction() { + if (isset($this->objcopy)) { + $this->objcopy->_destroy(true, true); + unset($this->objcopy); + } + } + + /** + * This method allows to undo the latest transaction by returning the latest saved TCPDF object with startTransaction(). + * @param $self (boolean) if true restores current class object to previous state without the need of reassignment via the returned value. + * @return TCPDF object. + * @public + * @since 4.5.029 (2009-03-19) + */ + public function rollbackTransaction($self=false) { + if (isset($this->objcopy)) { + if (isset($this->objcopy->diskcache) AND $this->objcopy->diskcache) { + // truncate files to previous values + foreach ($this->objcopy->cache_file_length as $file => $length) { + $file = substr($file, 1); + $handle = fopen($file, 'r+'); + ftruncate($handle, $length); + } + } + $this->_destroy(true, true); + if ($self) { + $objvars = get_object_vars($this->objcopy); + foreach ($objvars as $key => $value) { + $this->$key = $value; + } + } + return $this->objcopy; + } + return $this; + } + + /** + * Creates a copy of a class object + * @param $object (object) class object to be cloned + * @return cloned object + * @public + * @since 4.5.029 (2009-03-19) + */ + public function objclone($object) { + return @clone($object); + } + + /** + * Determine whether a string is empty. + * @param $str (string) string to be checked + * @return boolean true if string is empty + * @public + * @since 4.5.044 (2009-04-16) + */ + public function empty_string($str) { + return (is_null($str) OR (is_string($str) AND (strlen($str) == 0))); + } + + /** + * Find position of last occurrence of a substring in a string + * @param $haystack (string) The string to search in. + * @param $needle (string) substring to search. + * @param $offset (int) May be specified to begin searching an arbitrary number of characters into the string. + * @return Returns the position where the needle exists. Returns FALSE if the needle was not found. + * @public + * @since 4.8.038 (2010-03-13) + */ + public function revstrpos($haystack, $needle, $offset = 0) { + $length = strlen($haystack); + $offset = ($offset > 0)?($length - $offset):abs($offset); + $pos = strpos(strrev($haystack), strrev($needle), $offset); + return ($pos === false)?false:($length - $pos - strlen($needle)); + } + + // --- MULTI COLUMNS METHODS ----------------------- + + /** + * Set multiple columns of the same size + * @param $numcols (int) number of columns (set to zero to disable columns mode) + * @param $width (int) column width + * @param $y (int) column starting Y position (leave empty for current Y position) + * @public + * @since 4.9.001 (2010-03-28) + */ + public function setEqualColumns($numcols=0, $width=0, $y='') { + $this->columns = array(); + if ($numcols < 2) { + $numcols = 0; + $this->columns = array(); + } else { + // maximum column width + $maxwidth = ($this->w - $this->original_lMargin - $this->original_rMargin) / $numcols; + if (($width == 0) OR ($width > $maxwidth)) { + $width = $maxwidth; + } + if ($this->empty_string($y)) { + $y = $this->y; + } + // space between columns + $space = (($this->w - $this->original_lMargin - $this->original_rMargin - ($numcols * $width)) / ($numcols - 1)); + // fill the columns array (with, space, starting Y position) + for ($i = 0; $i < $numcols; ++$i) { + $this->columns[$i] = array('w' => $width, 's' => $space, 'y' => $y); + } + } + $this->num_columns = $numcols; + $this->current_column = 0; + $this->column_start_page = $this->page; + } + + /** + * Set columns array. + * Each column is represented by an array of arrays with the following keys: (w = width, s = space between columns, y = column top position). + * @param $columns (array) + * @public + * @since 4.9.001 (2010-03-28) + */ + public function setColumnsArray($columns) { + $this->columns = $columns; + $this->num_columns = count($columns); + $this->current_column = 0; + $this->column_start_page = $this->page; + } + + /** + * Set position at a given column + * @param $col (int) column number (from 0 to getNumberOfColumns()-1); empty string = current column. + * @public + * @since 4.9.001 (2010-03-28) + */ + public function selectColumn($col='') { + if (is_string($col)) { + $col = $this->current_column; + } elseif($col >= $this->num_columns) { + $col = 0; + } + $xshift = 0; + $enable_thead = false; + if ($this->num_columns > 1) { + if ($col != $this->current_column) { + // move Y pointer at the top of the column + if ($this->column_start_page == $this->page) { + $this->y = $this->columns[$col]['y']; + } else { + $this->y = $this->tMargin; + } + // Avoid to write table headers more than once + if (($this->page > $this->maxselcol['page']) OR (($this->page == $this->maxselcol['page']) AND ($col > $this->maxselcol['column']))) { + $enable_thead = true; + $this->maxselcol['page'] = $this->page; + $this->maxselcol['column'] = $col; + } + } + $xshift = $this->colxshift; + // set X position of the current column by case + $listindent = ($this->listindentlevel * $this->listindent); + $colpos = ($col * ($this->columns[$col]['w'] + $this->columns[$col]['s'])); + if ($this->rtl) { + $x = $this->w - $this->original_rMargin - $colpos; + $this->rMargin = ($this->w - $x + $listindent); + $this->lMargin = ($x - $this->columns[$col]['w']); + $this->x = $x - $listindent; + } else { + $x = $this->original_lMargin + $colpos; + $this->lMargin = ($x + $listindent); + $this->rMargin = ($this->w - $x - $this->columns[$col]['w']); + $this->x = $x + $listindent; + } + $this->columns[$col]['x'] = $x; + } + $this->current_column = $col; + // fix for HTML mode + $this->newline = true; + // print HTML table header (if any) + if ((!$this->empty_string($this->thead)) AND (!$this->inthead)) { + if ($enable_thead) { + // print table header + $this->writeHTML($this->thead, false, false, false, false, ''); + $this->y += $xshift['s']['V']; + // store end of header position + if (!isset($this->columns[$col]['th'])) { + $this->columns[$col]['th'] = array(); + } + $this->columns[$col]['th']['\''.$this->page.'\''] = $this->y; + $this->lasth = 0; + } elseif (isset($this->columns[$col]['th']['\''.$this->page.'\''])) { + $this->y = $this->columns[$col]['th']['\''.$this->page.'\'']; + } + } + // account for an html table cell over multiple columns + if ($this->rtl) { + $this->rMargin += $xshift['x']; + $this->x -= ($xshift['x'] + $xshift['p']['R']); + } else { + $this->lMargin += $xshift['x']; + $this->x += $xshift['x'] + $xshift['p']['L']; + } + } + + /** + * Return the current column number + * @return int current column number + * @public + * @since 5.5.011 (2010-07-08) + */ + public function getColumn() { + return $this->current_column; + } + + /** + * Return the current number of columns. + * @return int number of columns + * @public + * @since 5.8.018 (2010-08-25) + */ + public function getNumberOfColumns() { + return $this->num_columns; + } + + /** + * Serialize an array of parameters to be used with TCPDF tag in HTML code. + * @param $pararray (array) parameters array + * @return sting containing serialized data + * @public + * @since 4.9.006 (2010-04-02) + */ + public function serializeTCPDFtagParameters($pararray) { + return urlencode(serialize($pararray)); + } + + /** + * Set Text rendering mode. + * @param $stroke (int) outline size in user units (0 = disable). + * @param $fill (boolean) if true fills the text (default). + * @param $clip (boolean) if true activate clipping mode + * @public + * @since 4.9.008 (2009-04-02) + */ + public function setTextRenderingMode($stroke=0, $fill=true, $clip=false) { + // Ref.: PDF 32000-1:2008 - 9.3.6 Text Rendering Mode + // convert text rendering parameters + if ($stroke < 0) { + $stroke = 0; + } + if ($fill === true) { + if ($stroke > 0) { + if ($clip === true) { + // Fill, then stroke text and add to path for clipping + $textrendermode = 6; + } else { + // Fill, then stroke text + $textrendermode = 2; + } + $textstrokewidth = $stroke; + } else { + if ($clip === true) { + // Fill text and add to path for clipping + $textrendermode = 4; + } else { + // Fill text + $textrendermode = 0; + } + } + } else { + if ($stroke > 0) { + if ($clip === true) { + // Stroke text and add to path for clipping + $textrendermode = 5; + } else { + // Stroke text + $textrendermode = 1; + } + $textstrokewidth = $stroke; + } else { + if ($clip === true) { + // Add text to path for clipping + $textrendermode = 7; + } else { + // Neither fill nor stroke text (invisible) + $textrendermode = 3; + } + } + } + $this->textrendermode = $textrendermode; + $this->textstrokewidth = $stroke * $this->k; + } + + /** + * Returns an array of chars containing soft hyphens. + * @param $word (array) array of chars + * @param $patterns (array) Array of hypenation patterns. + * @param $dictionary (array) Array of words to be returned without applying the hyphenation algoritm. + * @param $leftmin (int) Minimum number of character to leave on the left of the word without applying the hyphens. + * @param $rightmin (int) Minimum number of character to leave on the right of the word without applying the hyphens. + * @param $charmin (int) Minimum word lenght to apply the hyphenation algoritm. + * @param $charmax (int) Maximum lenght of broken piece of word. + * @return array text with soft hyphens + * @author Nicola Asuni + * @since 4.9.012 (2010-04-12) + * @protected + */ + protected function hyphenateWord($word, $patterns, $dictionary=array(), $leftmin=1, $rightmin=2, $charmin=1, $charmax=8) { + $hyphenword = array(); // hyphens positions + $numchars = count($word); + if ($numchars <= $charmin) { + return $word; + } + $word_string = $this->UTF8ArrSubString($word); + // some words will be returned as-is + $pattern = '/^([a-zA-Z0-9_\.\-]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/'; + if (preg_match($pattern, $word_string) > 0) { + // email + return $word; + } + $pattern = '/(([a-zA-Z0-9\-]+\.)?)((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/'; + if (preg_match($pattern, $word_string) > 0) { + // URL + return $word; + } + if (isset($dictionary[$word_string])) { + return $this->UTF8StringToArray($dictionary[$word_string]); + } + // suround word with '_' characters + $tmpword = array_merge(array(95), $word, array(95)); + $tmpnumchars = $numchars + 2; + $maxpos = $tmpnumchars - $charmin; + for ($pos = 0; $pos < $maxpos; ++$pos) { + $imax = min(($tmpnumchars - $pos), $charmax); + for ($i = $charmin; $i <= $imax; ++$i) { + $subword = strtolower($this->UTF8ArrSubString($tmpword, $pos, $pos + $i)); + if (isset($patterns[$subword])) { + $pattern = $this->UTF8StringToArray($patterns[$subword]); + $pattern_length = count($pattern); + $digits = 1; + for ($j = 0; $j < $pattern_length; ++$j) { + // check if $pattern[$j] is a number + if (($pattern[$j] >= 48) AND ($pattern[$j] <= 57)) { + if ($j == 0) { + $zero = $pos - 1; + } else { + $zero = $pos + $j - $digits; + } + if (!isset($hyphenword[$zero]) OR ($hyphenword[$zero] != $pattern[$j])) { + $hyphenword[$zero] = $this->unichr($pattern[$j]); + } + ++$digits; + } + } + } + } + } + $inserted = 0; + $maxpos = $numchars - $rightmin; + for($i = $leftmin; $i <= $maxpos; ++$i) { + if(isset($hyphenword[$i]) AND (($hyphenword[$i] % 2) != 0)) { + // 173 = soft hyphen character + array_splice($word, $i + $inserted, 0, 173); + ++$inserted; + } + } + return $word; + } + + /** + * Returns an array of hyphenation patterns. + * @param $file (string) TEX file containing hypenation patterns. TEX pattrns can be downloaded from http://www.ctan.org/tex-archive/language/hyph-utf8/tex/generic/hyph-utf8/patterns/ + * @return array of hyphenation patterns + * @author Nicola Asuni + * @since 4.9.012 (2010-04-12) + * @public + */ + public function getHyphenPatternsFromTEX($file) { + // TEX patterns are available at: + // http://www.ctan.org/tex-archive/language/hyph-utf8/tex/generic/hyph-utf8/patterns/ + $data = file_get_contents($file); + $patterns = array(); + // remove comments + $data = preg_replace('/\%[^\n]*/', '', $data); + // extract the patterns part + preg_match('/\\\\patterns\{([^\}]*)\}/i', $data, $matches); + $data = trim(substr($matches[0], 10, -1)); + // extract each pattern + $patterns_array = preg_split('/[\s]+/', $data); + // create new language array of patterns + $patterns = array(); + foreach($patterns_array as $val) { + if (!$this->empty_string($val)) { + $val = trim($val); + $val = str_replace('\'', '\\\'', $val); + $key = preg_replace('/[0-9]+/', '', $val); + $patterns[$key] = $val; + } + } + return $patterns; + } + + /** + * Returns text with soft hyphens. + * @param $text (string) text to process + * @param $patterns (mixed) Array of hypenation patterns or a TEX file containing hypenation patterns. TEX patterns can be downloaded from http://www.ctan.org/tex-archive/language/hyph-utf8/tex/generic/hyph-utf8/patterns/ + * @param $dictionary (array) Array of words to be returned without applying the hyphenation algoritm. + * @param $leftmin (int) Minimum number of character to leave on the left of the word without applying the hyphens. + * @param $rightmin (int) Minimum number of character to leave on the right of the word without applying the hyphens. + * @param $charmin (int) Minimum word lenght to apply the hyphenation algoritm. + * @param $charmax (int) Maximum lenght of broken piece of word. + * @return array text with soft hyphens + * @author Nicola Asuni + * @since 4.9.012 (2010-04-12) + * @public + */ + public function hyphenateText($text, $patterns, $dictionary=array(), $leftmin=1, $rightmin=2, $charmin=1, $charmax=8) { + $text = $this->unhtmlentities($text); + $word = array(); // last word + $txtarr = array(); // text to be returned + $intag = false; // true if we are inside an HTML tag + if (!is_array($patterns)) { + $patterns = $this->getHyphenPatternsFromTEX($patterns); + } + // get array of characters + $unichars = $this->UTF8StringToArray($text); + // for each char + foreach ($unichars as $char) { + if ((!$intag) AND $this->unicode->uni_type[$char] == 'L') { + // letter character + $word[] = $char; + } else { + // other type of character + if (!$this->empty_string($word)) { + // hypenate the word + $txtarr = array_merge($txtarr, $this->hyphenateWord($word, $patterns, $dictionary, $leftmin, $rightmin, $charmin, $charmax)); + $word = array(); + } + $txtarr[] = $char; + if (chr($char) == '<') { + // we are inside an HTML tag + $intag = true; + } elseif ($intag AND (chr($char) == '>')) { + // end of HTML tag + $intag = false; + } + } + } + if (!$this->empty_string($word)) { + // hypenate the word + $txtarr = array_merge($txtarr, $this->hyphenateWord($word, $patterns, $dictionary, $leftmin, $rightmin, $charmin, $charmax)); + } + // convert char array to string and return + return $this->UTF8ArrSubString($txtarr); + } + + /** + * Enable/disable rasterization of vector images using ImageMagick library. + * @param $mode (boolean) if true enable rasterization, false otherwise. + * @public + * @since 5.0.000 (2010-04-27) + */ + public function setRasterizeVectorImages($mode) { + $this->rasterize_vector_images = $mode; + } + + /** + * Get the Path-Painting Operators. + * @param $style (string) Style of rendering. Possible values are: + *
          + *
        • S or D: Stroke the path.
        • + *
        • s or d: Close and stroke the path.
        • + *
        • f or F: Fill the path, using the nonzero winding number rule to determine the region to fill.
        • + *
        • f* or F*: Fill the path, using the even-odd rule to determine the region to fill.
        • + *
        • B or FD or DF: Fill and then stroke the path, using the nonzero winding number rule to determine the region to fill.
        • + *
        • B* or F*D or DF*: Fill and then stroke the path, using the even-odd rule to determine the region to fill.
        • + *
        • b or fd or df: Close, fill, and then stroke the path, using the nonzero winding number rule to determine the region to fill.
        • + *
        • b or f*d or df*: Close, fill, and then stroke the path, using the even-odd rule to determine the region to fill.
        • + *
        • CNZ: Clipping mode using the even-odd rule to determine which regions lie inside the clipping path.
        • + *
        • CEO: Clipping mode using the nonzero winding number rule to determine which regions lie inside the clipping path
        • + *
        • n: End the path object without filling or stroking it.
        • + *
        + * @param $default (string) default style + * @author Nicola Asuni + * @since 5.0.000 (2010-04-30) + * @protected + */ + protected function getPathPaintOperator($style, $default='S') { + $op = ''; + switch($style) { + case 'S': + case 'D': { + $op = 'S'; + break; + } + case 's': + case 'd': { + $op = 's'; + break; + } + case 'f': + case 'F': { + $op = 'f'; + break; + } + case 'f*': + case 'F*': { + $op = 'f*'; + break; + } + case 'B': + case 'FD': + case 'DF': { + $op = 'B'; + break; + } + case 'B*': + case 'F*D': + case 'DF*': { + $op = 'B*'; + break; + } + case 'b': + case 'fd': + case 'df': { + $op = 'b'; + break; + } + case 'b*': + case 'f*d': + case 'df*': { + $op = 'b*'; + break; + } + case 'CNZ': { + $op = 'W n'; + break; + } + case 'CEO': { + $op = 'W* n'; + break; + } + case 'n': { + $op = 'n'; + break; + } + default: { + if (!empty($default)) { + $op = $this->getPathPaintOperator($default, ''); + } else { + $op = ''; + } + } + } + return $op; + } + + /** + * Enable or disable default option for font subsetting. + * @param $enable (boolean) if true enable font subsetting by default. + * @author Nicola Asuni + * @public + * @since 5.3.002 (2010-06-07) + */ + public function setFontSubsetting($enable=true) { + $this->font_subsetting = $enable ? true : false; + } + + /** + * Return the default option for font subsetting. + * @return boolean default font subsetting state. + * @author Nicola Asuni + * @public + * @since 5.3.002 (2010-06-07) + */ + public function getFontSubsetting() { + return $this->font_subsetting; + } + + /** + * Left trim the input string + * @param $str (string) string to trim + * @param $replace (string) string that replace spaces. + * @return left trimmed string + * @author Nicola Asuni + * @public + * @since 5.8.000 (2010-08-11) + */ + public function stringLeftTrim($str, $replace='') { + return preg_replace('/^'.$this->re_space['p'].'+/'.$this->re_space['m'], $replace, $str); + } + + /** + * Right trim the input string + * @param $str (string) string to trim + * @param $replace (string) string that replace spaces. + * @return right trimmed string + * @author Nicola Asuni + * @public + * @since 5.8.000 (2010-08-11) + */ + public function stringRightTrim($str, $replace='') { + return preg_replace('/'.$this->re_space['p'].'+$/'.$this->re_space['m'], $replace, $str); + } + + /** + * Trim the input string + * @param $str (string) string to trim + * @param $replace (string) string that replace spaces. + * @return trimmed string + * @author Nicola Asuni + * @public + * @since 5.8.000 (2010-08-11) + */ + public function stringTrim($str, $replace='') { + $str = $this->stringLeftTrim($str, $replace); + $str = $this->stringRightTrim($str, $replace); + return $str; + } + + /** + * Return true if the current font is unicode type. + * @return true for unicode font, false otherwise. + * @author Nicola Asuni + * @public + * @since 5.8.002 (2010-08-14) + */ + public function isUnicodeFont() { + return (($this->CurrentFont['type'] == 'TrueTypeUnicode') OR ($this->CurrentFont['type'] == 'cidfont0')); + } + + /** + * Return normalized font name + * @param $fontfamily (string) property string containing font family names + * @return string normalized font name + * @author Nicola Asuni + * @public + * @since 5.8.004 (2010-08-17) + */ + public function getFontFamilyName($fontfamily) { + // remove spaces and symbols + $fontfamily = preg_replace('/[^a-z0-9\,]/', '', strtolower($fontfamily)); + // extract all font names + $fontslist = preg_split('/[,]/', $fontfamily); + // find first valid font name + foreach ($fontslist as $font) { + // replace font variations + $font = preg_replace('/italic$/', 'I', $font); + $font = preg_replace('/oblique$/', 'I', $font); + $font = preg_replace('/bold([I]?)$/', 'B\\1', $font); + // replace common family names and core fonts + $pattern = array(); + $replacement = array(); + $pattern[] = '/^serif|^cursive|^fantasy|^timesnewroman/'; + $replacement[] = 'times'; + $pattern[] = '/^sansserif/'; + $replacement[] = 'helvetica'; + $pattern[] = '/^monospace/'; + $replacement[] = 'courier'; + $font = preg_replace($pattern, $replacement, $font); + if (in_array(strtolower($font), $this->fontlist) OR in_array($font, $this->fontkeys)) { + return $font; + } + } + // return current font as default + return $this->CurrentFont['fontkey']; + } + + /** + * Start a new XObject Template. + * An XObject Template is a PDF block that is a self-contained description of any sequence of graphics objects (including path objects, text objects, and sampled images). + * An XObject Template may be painted multiple times, either on several pages or at several locations on the same page and produces the same results each time, subject only to the graphics state at the time it is invoked. + * Note: X,Y coordinates will be reset to 0,0. + * @param $w (int) Template width in user units (empty string or zero = page width less margins) + * @param $h (int) Template height in user units (empty string or zero = page height less margins) + * @return int the XObject Template ID in case of success or false in case of error. + * @author Nicola Asuni + * @public + * @since 5.8.017 (2010-08-24) + * @see endTemplate(), printTemplate() + */ + public function startTemplate($w=0, $h=0) { + if ($this->inxobj) { + // we are already inside an XObject template + return false; + } + $this->inxobj = true; + ++$this->n; + // XObject ID + $this->xobjid = 'XT'.$this->n; + // object ID + $this->xobjects[$this->xobjid] = array('n' => $this->n); + // store current graphic state + $this->xobjects[$this->xobjid]['gvars'] = $this->getGraphicVars(); + // initialize data + $this->xobjects[$this->xobjid]['intmrk'] = 0; + $this->xobjects[$this->xobjid]['transfmrk'] = array(); + $this->xobjects[$this->xobjid]['outdata'] = ''; + $this->xobjects[$this->xobjid]['xobjects'] = array(); + $this->xobjects[$this->xobjid]['images'] = array(); + $this->xobjects[$this->xobjid]['fonts'] = array(); + $this->xobjects[$this->xobjid]['annotations'] = array(); + // set new environment + $this->num_columns = 1; + $this->current_column = 0; + $this->SetAutoPageBreak(false); + if (($w === '') OR ($w <= 0)) { + $w = $this->w - $this->lMargin - $this->rMargin; + } + if (($h === '') OR ($h <= 0)) { + $h = $this->h - $this->tMargin - $this->bMargin; + } + $this->xobjects[$this->xobjid]['x'] = 0; + $this->xobjects[$this->xobjid]['y'] = 0; + $this->xobjects[$this->xobjid]['w'] = $w; + $this->xobjects[$this->xobjid]['h'] = $h; + $this->w = $w; + $this->h = $h; + $this->wPt = $this->w * $this->k; + $this->hPt = $this->h * $this->k; + $this->fwPt = $this->wPt; + $this->fhPt = $this->hPt; + $this->x = 0; + $this->y = 0; + $this->lMargin = 0; + $this->rMargin = 0; + $this->tMargin = 0; + $this->bMargin = 0; + return $this->xobjid; + } + + /** + * End the current XObject Template started with startTemplate() and restore the previous graphic state. + * An XObject Template is a PDF block that is a self-contained description of any sequence of graphics objects (including path objects, text objects, and sampled images). + * An XObject Template may be painted multiple times, either on several pages or at several locations on the same page and produces the same results each time, subject only to the graphics state at the time it is invoked. + * @return int the XObject Template ID in case of success or false in case of error. + * @author Nicola Asuni + * @public + * @since 5.8.017 (2010-08-24) + * @see startTemplate(), printTemplate() + */ + public function endTemplate() { + if (!$this->inxobj) { + // we are not inside a template + return false; + } + $this->inxobj = false; + // restore previous graphic state + $this->setGraphicVars($this->xobjects[$this->xobjid]['gvars'], true); + return $this->xobjid; + } + + /** + * Print an XObject Template. + * You can print an XObject Template inside the currently opened Template. + * An XObject Template is a PDF block that is a self-contained description of any sequence of graphics objects (including path objects, text objects, and sampled images). + * An XObject Template may be painted multiple times, either on several pages or at several locations on the same page and produces the same results each time, subject only to the graphics state at the time it is invoked. + * @param $id (string) The ID of XObject Template to print. + * @param $x (int) X position in user units (empty string = current x position) + * @param $y (int) Y position in user units (empty string = current y position) + * @param $w (int) Width in user units (zero = remaining page width) + * @param $h (int) Height in user units (zero = remaining page height) + * @param $align (string) Indicates the alignment of the pointer next to template insertion relative to template height. The value can be:
        • T: top-right for LTR or top-left for RTL
        • M: middle-right for LTR or middle-left for RTL
        • B: bottom-right for LTR or bottom-left for RTL
        • N: next line
        + * @param $palign (string) Allows to center or align the template on the current line. Possible values are:
        • L : left align
        • C : center
        • R : right align
        • '' : empty string : left for LTR or right for RTL
        + * @param $fitonpage (boolean) if true the template is resized to not exceed page dimensions. + * @author Nicola Asuni + * @public + * @since 5.8.017 (2010-08-24) + * @see startTemplate(), endTemplate() + */ + public function printTemplate($id, $x='', $y='', $w=0, $h=0, $align='', $palign='', $fitonpage=false) { + if (!isset($this->xobjects[$id])) { + $this->Error('The XObject Template \''.$id.'\' doesn\'t exist!'); + } + if ($this->inxobj) { + if ($id == $this->xobjid) { + // close current template + $this->endTemplate(); + } else { + // use the template as resource for the template currently opened + $this->xobjects[$this->xobjid]['xobjects'][$id] = $this->xobjects[$id]; + } + } + // set default values + if ($x === '') { + $x = $this->x; + } + if ($y === '') { + $y = $this->y; + } + // check page for no-write regions and adapt page margins if necessary + $this->checkPageRegions($h, $x, $y); + $ow = $this->xobjects[$id]['w']; + $oh = $this->xobjects[$id]['h']; + // calculate template width and height on document + if (($w <= 0) AND ($h <= 0)) { + $w = $ow; + $h = $oh; + } elseif ($w <= 0) { + $w = $h * $ow / $oh; + } elseif ($h <= 0) { + $h = $w * $oh / $ow; + } + // fit the template on available space + $this->fitBlock($w, $h, $x, $y, $fitonpage); + // set page alignment + $rb_y = $y + $h; + // set alignment + if ($this->rtl) { + if ($palign == 'L') { + $xt = $this->lMargin; + } elseif ($palign == 'C') { + $xt = ($this->w + $this->lMargin - $this->rMargin - $w) / 2; + } elseif ($palign == 'R') { + $xt = $this->w - $this->rMargin - $w; + } else { + $xt = $x - $w; + } + $rb_x = $xt; + } else { + if ($palign == 'L') { + $xt = $this->lMargin; + } elseif ($palign == 'C') { + $xt = ($this->w + $this->lMargin - $this->rMargin - $w) / 2; + } elseif ($palign == 'R') { + $xt = $this->w - $this->rMargin - $w; + } else { + $xt = $x; + } + $rb_x = $xt + $w; + } + // print XObject Template + Transformation matrix + $this->StartTransform(); + // translate and scale + $sx = ($w / $this->xobjects[$id]['w']); + $sy = ($h / $this->xobjects[$id]['h']); + $tm = array(); + $tm[0] = $sx; + $tm[1] = 0; + $tm[2] = 0; + $tm[3] = $sy; + $tm[4] = $xt * $this->k; + $tm[5] = ($this->h - $h - $y) * $this->k; + $this->Transform($tm); + // set object + $this->_out('/'.$id.' Do'); + $this->StopTransform(); + // add annotations + if (!empty($this->xobjects[$id]['annotations'])) { + foreach ($this->xobjects[$id]['annotations'] as $annot) { + // transform original coordinates + $coordlt = $this->getTransformationMatrixProduct($tm, array(1, 0, 0, 1, ($annot['x'] * $this->k), (-$annot['y'] * $this->k))); + $ax = ($coordlt[4] / $this->k); + $ay = ($this->h - $h - ($coordlt[5] / $this->k)); + $coordrb = $this->getTransformationMatrixProduct($tm, array(1, 0, 0, 1, (($annot['x'] + $annot['w']) * $this->k), ((-$annot['y'] - $annot['h']) * $this->k))); + $aw = ($coordrb[4] / $this->k) - $ax; + $ah = ($this->h - $h - ($coordrb[5] / $this->k)) - $ay; + $this->Annotation($ax, $ay, $aw, $ah, $annot['text'], $annot['opt'], $annot['spaces']); + } + } + // set pointer to align the next text/objects + switch($align) { + case 'T': { + $this->y = $y; + $this->x = $rb_x; + break; + } + case 'M': { + $this->y = $y + round($h/2); + $this->x = $rb_x; + break; + } + case 'B': { + $this->y = $rb_y; + $this->x = $rb_x; + break; + } + case 'N': { + $this->SetY($rb_y); + break; + } + default:{ + break; + } + } + } + + /** + * Set the percentage of character stretching. + * @param $perc (int) percentage of stretching (100 = no stretching) + * @author Nicola Asuni + * @public + * @since 5.9.000 (2010-09-29) + */ + public function setFontStretching($perc=100) { + $this->font_stretching = $perc; + } + + /** + * Get the percentage of character stretching. + * @return float stretching value + * @author Nicola Asuni + * @public + * @since 5.9.000 (2010-09-29) + */ + public function getFontStretching() { + return $this->font_stretching; + } + + /** + * Set the amount to increase or decrease the space between characters in a text. + * @param $spacing (float) amount to increase or decrease the space between characters in a text (0 = default spacing) + * @author Nicola Asuni + * @public + * @since 5.9.000 (2010-09-29) + */ + public function setFontSpacing($spacing=0) { + $this->font_spacing = $spacing; + } + + /** + * Get the amount to increase or decrease the space between characters in a text. + * @return int font spacing (tracking/kerning) value + * @author Nicola Asuni + * @public + * @since 5.9.000 (2010-09-29) + */ + public function getFontSpacing() { + return $this->font_spacing; + } + + /** + * Return an array of no-write page regions + * @return array of no-write page regions + * @author Nicola Asuni + * @public + * @since 5.9.003 (2010-10-13) + * @see setPageRegions(), addPageRegion() + */ + public function getPageRegions() { + return $this->page_regions; + } + + /** + * Set no-write regions on page. + * A no-write region is a portion of the page with a rectangular or trapezium shape that will not be covered when writing text or html code. + * A region is always aligned on the left or right side of the page ad is defined using a vertical segment. + * You can set multiple regions for the same page. + * @param $regions (array) array of no-write regions. For each region you can define an array as follow: ('page' => page number or empy for current page, 'xt' => X top, 'yt' => Y top, 'xb' => X bottom, 'yb' => Y bottom, 'side' => page side 'L' = left or 'R' = right). Omit this parameter to remove all regions. + * @author Nicola Asuni + * @public + * @since 5.9.003 (2010-10-13) + * @see addPageRegion(), getPageRegions() + */ + public function setPageRegions($regions=array()) { + // empty current regions array + $this->page_regions = array(); + // add regions + foreach ($regions as $data) { + $this->addPageRegion($data); + } + } + + /** + * Add a single no-write region on selected page. + * A no-write region is a portion of the page with a rectangular or trapezium shape that will not be covered when writing text or html code. + * A region is always aligned on the left or right side of the page ad is defined using a vertical segment. + * You can set multiple regions for the same page. + * @param $region (array) array of a single no-write region array: ('page' => page number or empy for current page, 'xt' => X top, 'yt' => Y top, 'xb' => X bottom, 'yb' => Y bottom, 'side' => page side 'L' = left or 'R' = right). + * @author Nicola Asuni + * @public + * @since 5.9.003 (2010-10-13) + * @see setPageRegions(), getPageRegions() + */ + public function addPageRegion($region) { + if (!isset($region['page']) OR empty($region['page'])) { + $region['page'] = $this->page; + } + if (isset($region['xt']) AND isset($region['xb']) AND ($region['xt'] > 0) AND ($region['xb'] > 0) + AND isset($region['yt']) AND isset($region['yb']) AND ($region['yt'] >= 0) AND ($region['yt'] < $region['yb']) + AND isset($region['side']) AND (($region['side'] == 'L') OR ($region['side'] == 'R'))) { + $this->page_regions[] = $region; + } + } + + /** + * Remove a single no-write region. + * @param $key (int) region key + * @author Nicola Asuni + * @public + * @since 5.9.003 (2010-10-13) + * @see setPageRegions(), getPageRegions() + */ + public function removePageRegion($key) { + if (isset($this->page_regions[$key])) { + unset($this->page_regions[$key]); + } + } + + /** + * Check page for no-write regions and adapt current coordinates and page margins if necessary. + * A no-write region is a portion of the page with a rectangular or trapezium shape that will not be covered when writing text or html code. + * A region is always aligned on the left or right side of the page ad is defined using a vertical segment. + * @param $h (float) height of the text/image/object to print in user units + * @param $x (float) current X coordinate in user units + * @param $y (float) current Y coordinate in user units + * @author Nicola Asuni + * @protected + * @since 5.9.003 (2010-10-13) + */ + protected function checkPageRegions($h, &$x, &$y) { + // set default values + if ($x === '') { + $x = &$this->x; + } + if ($y === '') { + $y = &$this->y; + } + if (empty($this->page_regions)) { + // no page regions defined + return; + } + if (empty($h)) { + $h = ($this->FontSize * $this->cell_height_ratio) + $this->cell_padding['T'] + $this->cell_padding['B']; + } + if ($this->AutoPageBreak AND (!$this->InFooter) AND (($y + $h) > $this->PageBreakTrigger)) { + // the content will be printed on a new page + return; + } + if ($this->num_columns > 1) { + if ($this->rtl) { + $this->lMargin = $this->columns[$this->current_column]['x'] - $this->columns[$this->current_column]['w']; + } else { + $this->rMargin = $this->w - $this->columns[$this->current_column]['x'] - $this->columns[$this->current_column]['w']; + } + } else { + if ($this->rtl) { + $this->lMargin = $this->original_lMargin; + } else { + $this->rMargin = $this->original_rMargin; + } + } + // adjust coordinates and page margins + foreach ($this->page_regions as $regid => $regdata) { + if ($regdata['page'] == $this->page) { + // check region boundaries + if (($y > ($regdata['yt'] - $h)) AND ($y <= $regdata['yb'])) { + // Y is inside the region + $minv = ($regdata['xb'] - $regdata['xt']) / ($regdata['yb'] - $regdata['yt']); // inverse of angular coefficient + $yt = max($y, $regdata['yt']); + $yb = min(($yt + $h), $regdata['yb']); + $xt = (($yt - $regdata['yt']) * $minv) + $regdata['xt']; + $xb = (($yb - $regdata['yt']) * $minv) + $regdata['xt']; + if ($regdata['side'] == 'L') { // left side + $new_margin = max($xt, $xb); + if ($this->lMargin < $new_margin) { + if ($this->rtl) { + // adjust left page margin + $this->lMargin = $new_margin; + } + if ($x < $new_margin) { + // adjust x position + $x = $new_margin; + if ($new_margin > ($this->w - $this->rMargin)) { + // adjust y position + $y = $regdata['yb'] - $h; + } + } + } + } elseif ($regdata['side'] == 'R') { // right side + $new_margin = min($xt, $xb); + if (($this->w - $this->rMargin) > $new_margin) { + if (!$this->rtl) { + // adjust right page margin + $this->rMargin = ($this->w - $new_margin); + } + if ($x > $new_margin) { + // adjust x position + $x = $new_margin; + if ($new_margin > $this->lMargin) { + // adjust y position + $y = $regdata['yb'] - $h; + } + } + } + } + } + } + } + } + + // -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- + // SVG METHODS + // -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- + + /** + * Embedd a Scalable Vector Graphics (SVG) image. + * NOTE: SVG standard is not yet fully implemented, use the setRasterizeVectorImages() method to enable/disable rasterization of vector images using ImageMagick library. + * @param $file (string) Name of the SVG file or a '@' character followed by the SVG data string. + * @param $x (float) Abscissa of the upper-left corner. + * @param $y (float) Ordinate of the upper-left corner. + * @param $w (float) Width of the image in the page. If not specified or equal to zero, it is automatically calculated. + * @param $h (float) Height of the image in the page. If not specified or equal to zero, it is automatically calculated. + * @param $link (mixed) URL or identifier returned by AddLink(). + * @param $align (string) Indicates the alignment of the pointer next to image insertion relative to image height. The value can be:
        • T: top-right for LTR or top-left for RTL
        • M: middle-right for LTR or middle-left for RTL
        • B: bottom-right for LTR or bottom-left for RTL
        • N: next line
        If the alignment is an empty string, then the pointer will be restored on the starting SVG position. + * @param $palign (string) Allows to center or align the image on the current line. Possible values are:
        • L : left align
        • C : center
        • R : right align
        • '' : empty string : left for LTR or right for RTL
        + * @param $border (mixed) Indicates if borders must be drawn around the cell. The value can be a number:
        • 0: no border (default)
        • 1: frame
        or a string containing some or all of the following characters (in any order):
        • L: left
        • T: top
        • R: right
        • B: bottom
        or an array of line styles for each border group - for example: array('LTRB' => array('width' => 2, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0))) + * @param $fitonpage (boolean) if true the image is resized to not exceed page dimensions. + * @author Nicola Asuni + * @since 5.0.000 (2010-05-02) + * @public + */ + public function ImageSVG($file, $x='', $y='', $w=0, $h=0, $link='', $align='', $palign='', $border=0, $fitonpage=false) { + if ($this->rasterize_vector_images AND ($w > 0) AND ($h > 0)) { + // convert SVG to raster image using GD or ImageMagick libraries + return $this->Image($file, $x, $y, $w, $h, 'SVG', $link, $align, true, 300, $palign, false, false, $border, false, false, false); + } + if ($file{0} === '@') { // image from string + $this->svgdir = ''; + $svgdata = substr($file, 1); + } else { // SVG file + $this->svgdir = dirname($file); + $svgdata = file_get_contents($file); + } + if ($svgdata === false) { + $this->Error('SVG file not found: '.$file); + } + if ($x === '') { + $x = $this->x; + } + if ($y === '') { + $y = $this->y; + } + // check page for no-write regions and adapt page margins if necessary + $this->checkPageRegions($h, $x, $y); + $k = $this->k; + $ox = 0; + $oy = 0; + $ow = $w; + $oh = $h; + $aspect_ratio_align = 'xMidYMid'; + $aspect_ratio_ms = 'meet'; + $regs = array(); + // get original image width and height + preg_match('/]*)>/si', $svgdata, $regs); + if (isset($regs[1]) AND !empty($regs[1])) { + $tmp = array(); + if (preg_match('/[\s]+x[\s]*=[\s]*"([^"]*)"/si', $regs[1], $tmp)) { + $ox = $this->getHTMLUnitToUnits($tmp[1], 0, $this->svgunit, false); + } + $tmp = array(); + if (preg_match('/[\s]+y[\s]*=[\s]*"([^"]*)"/si', $regs[1], $tmp)) { + $oy = $this->getHTMLUnitToUnits($tmp[1], 0, $this->svgunit, false); + } + $tmp = array(); + if (preg_match('/[\s]+width[\s]*=[\s]*"([^"]*)"/si', $regs[1], $tmp)) { + $ow = $this->getHTMLUnitToUnits($tmp[1], 1, $this->svgunit, false); + } + $tmp = array(); + if (preg_match('/[\s]+height[\s]*=[\s]*"([^"]*)"/si', $regs[1], $tmp)) { + $oh = $this->getHTMLUnitToUnits($tmp[1], 1, $this->svgunit, false); + } + $tmp = array(); + $view_box = array(); + if (preg_match('/[\s]+viewBox[\s]*=[\s]*"[\s]*([0-9\.\-]+)[\s]+([0-9\.\-]+)[\s]+([0-9\.]+)[\s]+([0-9\.]+)[\s]*"/si', $regs[1], $tmp)) { + if (count($tmp) == 5) { + array_shift($tmp); + foreach ($tmp as $key => $val) { + $view_box[$key] = $this->getHTMLUnitToUnits($val, 0, $this->svgunit, false); + } + $ox = $view_box[0]; + $oy = $view_box[1]; + } + // get aspect ratio + $tmp = array(); + if (preg_match('/[\s]+preserveAspectRatio[\s]*=[\s]*"([^"]*)"/si', $regs[1], $tmp)) { + $aspect_ratio = preg_split('/[\s]+/si', $tmp[1]); + switch (count($aspect_ratio)) { + case 3: { + $aspect_ratio_align = $aspect_ratio[1]; + $aspect_ratio_ms = $aspect_ratio[2]; + break; + } + case 2: { + $aspect_ratio_align = $aspect_ratio[0]; + $aspect_ratio_ms = $aspect_ratio[1]; + break; + } + case 1: { + $aspect_ratio_align = $aspect_ratio[0]; + $aspect_ratio_ms = 'meet'; + break; + } + } + } + } + } + // calculate image width and height on document + if (($w <= 0) AND ($h <= 0)) { + // convert image size to document unit + $w = $ow; + $h = $oh; + } elseif ($w <= 0) { + $w = $h * $ow / $oh; + } elseif ($h <= 0) { + $h = $w * $oh / $ow; + } + // fit the image on available space + $this->fitBlock($w, $h, $x, $y, $fitonpage); + if ($this->rasterize_vector_images) { + // convert SVG to raster image using GD or ImageMagick libraries + return $this->Image($file, $x, $y, $w, $h, 'SVG', $link, $align, true, 300, $palign, false, false, $border, false, false, false); + } + // set alignment + $this->img_rb_y = $y + $h; + // set alignment + if ($this->rtl) { + if ($palign == 'L') { + $ximg = $this->lMargin; + } elseif ($palign == 'C') { + $ximg = ($this->w + $this->lMargin - $this->rMargin - $w) / 2; + } elseif ($palign == 'R') { + $ximg = $this->w - $this->rMargin - $w; + } else { + $ximg = $x - $w; + } + $this->img_rb_x = $ximg; + } else { + if ($palign == 'L') { + $ximg = $this->lMargin; + } elseif ($palign == 'C') { + $ximg = ($this->w + $this->lMargin - $this->rMargin - $w) / 2; + } elseif ($palign == 'R') { + $ximg = $this->w - $this->rMargin - $w; + } else { + $ximg = $x; + } + $this->img_rb_x = $ximg + $w; + } + // store current graphic vars + $gvars = $this->getGraphicVars(); + // store SVG position and scale factors + $svgoffset_x = ($ximg - $ox) * $this->k; + $svgoffset_y = -($y - $oy) * $this->k; + if (isset($view_box[2]) AND ($view_box[2] > 0) AND ($view_box[3] > 0)) { + $ow = $view_box[2]; + $oh = $view_box[3]; + } else { + if ($ow <= 0) { + $ow = $w; + } + if ($oh <= 0) { + $oh = $h; + } + } + $svgscale_x = $w / $ow; + $svgscale_y = $h / $oh; + // scaling and alignment + if ($aspect_ratio_align != 'none') { + // store current scaling values + $svgscale_old_x = $svgscale_x; + $svgscale_old_y = $svgscale_y; + // force uniform scaling + if ($aspect_ratio_ms == 'slice') { + // the entire viewport is covered by the viewBox + if ($svgscale_x > $svgscale_y) { + $svgscale_y = $svgscale_x; + } elseif ($svgscale_x < $svgscale_y) { + $svgscale_x = $svgscale_y; + } + } else { // meet + // the entire viewBox is visible within the viewport + if ($svgscale_x < $svgscale_y) { + $svgscale_y = $svgscale_x; + } elseif ($svgscale_x > $svgscale_y) { + $svgscale_x = $svgscale_y; + } + } + // correct X alignment + switch (substr($aspect_ratio_align, 1, 3)) { + case 'Min': { + // do nothing + break; + } + case 'Max': { + $svgoffset_x += (($w * $this->k) - ($ow * $this->k * $svgscale_x)); + break; + } + default: + case 'Mid': { + $svgoffset_x += ((($w * $this->k) - ($ow * $this->k * $svgscale_x)) / 2); + break; + } + } + // correct Y alignment + switch (substr($aspect_ratio_align, 5)) { + case 'Min': { + // do nothing + break; + } + case 'Max': { + $svgoffset_y -= (($h * $this->k) - ($oh * $this->k * $svgscale_y)); + break; + } + default: + case 'Mid': { + $svgoffset_y -= ((($h * $this->k) - ($oh * $this->k * $svgscale_y)) / 2); + break; + } + } + } + // store current page break mode + $page_break_mode = $this->AutoPageBreak; + $page_break_margin = $this->getBreakMargin(); + $cell_padding = $this->cell_padding; + $this->SetCellPadding(0); + $this->SetAutoPageBreak(false); + // save the current graphic state + $this->_out('q'.$this->epsmarker); + // set initial clipping mask + $this->Rect($x, $y, $w, $h, 'CNZ', array(), array()); + // scale and translate + $e = $ox * $this->k * (1 - $svgscale_x); + $f = ($this->h - $oy) * $this->k * (1 - $svgscale_y); + $this->_out(sprintf('%.3F %.3F %.3F %.3F %.3F %.3F cm', $svgscale_x, 0, 0, $svgscale_y, $e + $svgoffset_x, $f + $svgoffset_y)); + // creates a new XML parser to be used by the other XML functions + $this->parser = xml_parser_create('UTF-8'); + // the following function allows to use parser inside object + xml_set_object($this->parser, $this); + // disable case-folding for this XML parser + xml_parser_set_option($this->parser, XML_OPTION_CASE_FOLDING, 0); + // sets the element handler functions for the XML parser + xml_set_element_handler($this->parser, 'startSVGElementHandler', 'endSVGElementHandler'); + // sets the character data handler function for the XML parser + xml_set_character_data_handler($this->parser, 'segSVGContentHandler'); + // start parsing an XML document + if(!xml_parse($this->parser, $svgdata)) { + $error_message = sprintf("SVG Error: %s at line %d", xml_error_string(xml_get_error_code($this->parser)), xml_get_current_line_number($this->parser)); + $this->Error($error_message); + } + // free this XML parser + xml_parser_free($this->parser); + // restore previous graphic state + $this->_out($this->epsmarker.'Q'); + // restore graphic vars + $this->setGraphicVars($gvars); + $this->lasth = $gvars['lasth']; + if (!empty($border)) { + $bx = $this->x; + $by = $this->y; + $this->x = $ximg; + if ($this->rtl) { + $this->x += $w; + } + $this->y = $y; + $this->Cell($w, $h, '', $border, 0, '', 0, '', 0, true); + $this->x = $bx; + $this->y = $by; + } + if ($link) { + $this->Link($ximg, $y, $w, $h, $link, 0); + } + // set pointer to align the next text/objects + switch($align) { + case 'T':{ + $this->y = $y; + $this->x = $this->img_rb_x; + break; + } + case 'M':{ + $this->y = $y + round($h/2); + $this->x = $this->img_rb_x; + break; + } + case 'B':{ + $this->y = $this->img_rb_y; + $this->x = $this->img_rb_x; + break; + } + case 'N':{ + $this->SetY($this->img_rb_y); + break; + } + default:{ + // restore pointer to starting position + $this->x = $gvars['x']; + $this->y = $gvars['y']; + $this->page = $gvars['page']; + $this->current_column = $gvars['current_column']; + $this->tMargin = $gvars['tMargin']; + $this->bMargin = $gvars['bMargin']; + $this->w = $gvars['w']; + $this->h = $gvars['h']; + $this->wPt = $gvars['wPt']; + $this->hPt = $gvars['hPt']; + $this->fwPt = $gvars['fwPt']; + $this->fhPt = $gvars['fhPt']; + break; + } + } + $this->endlinex = $this->img_rb_x; + // restore page break + $this->SetAutoPageBreak($page_break_mode, $page_break_margin); + $this->cell_padding = $cell_padding; + } + + /** + * Get the tranformation matrix from SVG transform attribute + * @param $attribute (string) transformation + * @return array of transformations + * @author Nicola Asuni + * @since 5.0.000 (2010-05-02) + * @protected + */ + protected function getSVGTransformMatrix($attribute) { + // identity matrix + $tm = array(1, 0, 0, 1, 0, 0); + $transform = array(); + if (preg_match_all('/(matrix|translate|scale|rotate|skewX|skewY)[\s]*\(([^\)]+)\)/si', $attribute, $transform, PREG_SET_ORDER) > 0) { + foreach ($transform as $key => $data) { + if (!empty($data[2])) { + $a = 1; + $b = 0; + $c = 0; + $d = 1; + $e = 0; + $f = 0; + $regs = array(); + switch ($data[1]) { + case 'matrix': { + if (preg_match('/([a-z0-9\-\.]+)[\,\s]+([a-z0-9\-\.]+)[\,\s]+([a-z0-9\-\.]+)[\,\s]+([a-z0-9\-\.]+)[\,\s]+([a-z0-9\-\.]+)[\,\s]+([a-z0-9\-\.]+)/si', $data[2], $regs)) { + $a = $regs[1]; + $b = $regs[2]; + $c = $regs[3]; + $d = $regs[4]; + $e = $regs[5]; + $f = $regs[6]; + } + break; + } + case 'translate': { + if (preg_match('/([a-z0-9\-\.]+)[\,\s]+([a-z0-9\-\.]+)/si', $data[2], $regs)) { + $e = $regs[1]; + $f = $regs[2]; + } elseif (preg_match('/([a-z0-9\-\.]+)/si', $data[2], $regs)) { + $e = $regs[1]; + } + break; + } + case 'scale': { + if (preg_match('/([a-z0-9\-\.]+)[\,\s]+([a-z0-9\-\.]+)/si', $data[2], $regs)) { + $a = $regs[1]; + $d = $regs[2]; + } elseif (preg_match('/([a-z0-9\-\.]+)/si', $data[2], $regs)) { + $a = $regs[1]; + $d = $a; + } + break; + } + case 'rotate': { + if (preg_match('/([0-9\-\.]+)[\,\s]+([a-z0-9\-\.]+)[\,\s]+([a-z0-9\-\.]+)/si', $data[2], $regs)) { + $ang = deg2rad($regs[1]); + $x = $regs[2]; + $y = $regs[3]; + $a = cos($ang); + $b = sin($ang); + $c = -$b; + $d = $a; + $e = ($x * (1 - $a)) - ($y * $c); + $f = ($y * (1 - $d)) - ($x * $b); + } elseif (preg_match('/([0-9\-\.]+)/si', $data[2], $regs)) { + $ang = deg2rad($regs[1]); + $a = cos($ang); + $b = sin($ang); + $c = -$b; + $d = $a; + $e = 0; + $f = 0; + } + break; + } + case 'skewX': { + if (preg_match('/([0-9\-\.]+)/si', $data[2], $regs)) { + $c = tan(deg2rad($regs[1])); + } + break; + } + case 'skewY': { + if (preg_match('/([0-9\-\.]+)/si', $data[2], $regs)) { + $b = tan(deg2rad($regs[1])); + } + break; + } + } + $tm = $this->getTransformationMatrixProduct($tm, array($a, $b, $c, $d, $e, $f)); + } + } + } + return $tm; + } + + /** + * Get the product of two SVG tranformation matrices + * @param $ta (array) first SVG tranformation matrix + * @param $tb (array) second SVG tranformation matrix + * @return transformation array + * @author Nicola Asuni + * @since 5.0.000 (2010-05-02) + * @protected + */ + protected function getTransformationMatrixProduct($ta, $tb) { + $tm = array(); + $tm[0] = ($ta[0] * $tb[0]) + ($ta[2] * $tb[1]); + $tm[1] = ($ta[1] * $tb[0]) + ($ta[3] * $tb[1]); + $tm[2] = ($ta[0] * $tb[2]) + ($ta[2] * $tb[3]); + $tm[3] = ($ta[1] * $tb[2]) + ($ta[3] * $tb[3]); + $tm[4] = ($ta[0] * $tb[4]) + ($ta[2] * $tb[5]) + $ta[4]; + $tm[5] = ($ta[1] * $tb[4]) + ($ta[3] * $tb[5]) + $ta[5]; + return $tm; + } + + /** + * Convert SVG transformation matrix to PDF. + * @param $tm (array) original SVG transformation matrix + * @return array transformation matrix + * @protected + * @since 5.0.000 (2010-05-02) + */ + protected function convertSVGtMatrix($tm) { + $a = $tm[0]; + $b = -$tm[1]; + $c = -$tm[2]; + $d = $tm[3]; + $e = $this->getHTMLUnitToUnits($tm[4], 1, $this->svgunit, false) * $this->k; + $f = -$this->getHTMLUnitToUnits($tm[5], 1, $this->svgunit, false) * $this->k; + $x = 0; + $y = $this->h * $this->k; + $e = ($x * (1 - $a)) - ($y * $c) + $e; + $f = ($y * (1 - $d)) - ($x * $b) + $f; + return array($a, $b, $c, $d, $e, $f); + } + + /** + * Apply SVG graphic transformation matrix. + * @param $tm (array) original SVG transformation matrix + * @protected + * @since 5.0.000 (2010-05-02) + */ + protected function SVGTransform($tm) { + $this->Transform($this->convertSVGtMatrix($tm)); + } + + /** + * Apply the requested SVG styles (*** TO BE COMPLETED ***) + * @param $svgstyle (array) array of SVG styles to apply + * @param $prevsvgstyle (array) array of previous SVG style + * @param $x (int) X origin of the bounding box + * @param $y (int) Y origin of the bounding box + * @param $w (int) width of the bounding box + * @param $h (int) height of the bounding box + * @param $clip_function (string) clip function + * @param $clip_params (array) array of parameters for clipping function + * @return object style + * @author Nicola Asuni + * @since 5.0.000 (2010-05-02) + * @protected + */ + protected function setSVGStyles($svgstyle, $prevsvgstyle, $x=0, $y=0, $w=1, $h=1, $clip_function='', $clip_params=array()) { + $objstyle = ''; + if(!isset($svgstyle['opacity'])) { + return $objstyle; + } + // clip-path + $regs = array(); + if (preg_match('/url\([\s]*\#([^\)]*)\)/si', $svgstyle['clip-path'], $regs)) { + $clip_path = $this->svgclippaths[$regs[1]]; + foreach ($clip_path as $cp) { + $this->startSVGElementHandler('clip-path', $cp['name'], $cp['attribs'], $cp['tm']); + } + } + // opacity + if ($svgstyle['opacity'] != 1) { + $this->SetAlpha($svgstyle['opacity']); + } + // color + $fill_color = $this->convertHTMLColorToDec($svgstyle['color']); + $this->SetFillColorArray($fill_color); + // text color + $text_color = $this->convertHTMLColorToDec($svgstyle['text-color']); + $this->SetTextColorArray($text_color); + // clip + if (preg_match('/rect\(([a-z0-9\-\.]*)[\s]*([a-z0-9\-\.]*)[\s]*([a-z0-9\-\.]*)[\s]*([a-z0-9\-\.]*)\)/si', $svgstyle['clip'], $regs)) { + $top = (isset($regs[1])?$this->getHTMLUnitToUnits($regs[1], 0, $this->svgunit, false):0); + $right = (isset($regs[2])?$this->getHTMLUnitToUnits($regs[2], 0, $this->svgunit, false):0); + $bottom = (isset($regs[3])?$this->getHTMLUnitToUnits($regs[3], 0, $this->svgunit, false):0); + $left = (isset($regs[4])?$this->getHTMLUnitToUnits($regs[4], 0, $this->svgunit, false):0); + $cx = $x + $left; + $cy = $y + $top; + $cw = $w - $left - $right; + $ch = $h - $top - $bottom; + if ($svgstyle['clip-rule'] == 'evenodd') { + $clip_rule = 'CNZ'; + } else { + $clip_rule = 'CEO'; + } + $this->Rect($cx, $cy, $cw, $ch, $clip_rule, array(), array()); + } + // fill + $regs = array(); + if (preg_match('/url\([\s]*\#([^\)]*)\)/si', $svgstyle['fill'], $regs)) { + // gradient + $gradient = $this->svggradients[$regs[1]]; + if (isset($gradient['xref'])) { + // reference to another gradient definition + $newgradient = $this->svggradients[$gradient['xref']]; + $newgradient['coords'] = $gradient['coords']; + $newgradient['mode'] = $gradient['mode']; + $newgradient['gradientUnits'] = $gradient['gradientUnits']; + if (isset($gradient['gradientTransform'])) { + $newgradient['gradientTransform'] = $gradient['gradientTransform']; + } + $gradient = $newgradient; + } + //save current Graphic State + $this->_out('q'); + //set clipping area + if (!empty($clip_function) AND method_exists($this, $clip_function)) { + $bbox = call_user_func_array(array($this, $clip_function), $clip_params); + if (is_array($bbox) AND (count($bbox) == 4)) { + list($x, $y, $w, $h) = $bbox; + } + } + if ($gradient['mode'] == 'measure') { + if (isset($gradient['gradientTransform']) AND !empty($gradient['gradientTransform'])) { + $gtm = $gradient['gradientTransform']; + // apply transformation matrix + $xa = ($gtm[0] * $gradient['coords'][0]) + ($gtm[2] * $gradient['coords'][1]) + $gtm[4]; + $ya = ($gtm[1] * $gradient['coords'][0]) + ($gtm[3] * $gradient['coords'][1]) + $gtm[5]; + $xb = ($gtm[0] * $gradient['coords'][2]) + ($gtm[2] * $gradient['coords'][3]) + $gtm[4]; + $yb = ($gtm[1] * $gradient['coords'][2]) + ($gtm[3] * $gradient['coords'][3]) + $gtm[5]; + if (isset($gradient['coords'][4])) { + $gradient['coords'][4] = sqrt(pow(($gtm[0] * $gradient['coords'][4]), 2) + pow(($gtm[1] * $gradient['coords'][4]), 2)); + } + $gradient['coords'][0] = $xa; + $gradient['coords'][1] = $ya; + $gradient['coords'][2] = $xb; + $gradient['coords'][3] = $yb; + } + // convert SVG coordinates to user units + $gradient['coords'][0] = $this->getHTMLUnitToUnits($gradient['coords'][0], 0, $this->svgunit, false); + $gradient['coords'][1] = $this->getHTMLUnitToUnits($gradient['coords'][1], 0, $this->svgunit, false); + $gradient['coords'][2] = $this->getHTMLUnitToUnits($gradient['coords'][2], 0, $this->svgunit, false); + $gradient['coords'][3] = $this->getHTMLUnitToUnits($gradient['coords'][3], 0, $this->svgunit, false); + if (isset($gradient['coords'][4])) { + $gradient['coords'][4] = $this->getHTMLUnitToUnits($gradient['coords'][4], 0, $this->svgunit, false); + } + // shift units + if ($gradient['gradientUnits'] == 'objectBoundingBox') { + // convert to SVG coordinate system + $gradient['coords'][0] += $x; + $gradient['coords'][1] += $y; + $gradient['coords'][2] += $x; + $gradient['coords'][3] += $y; + } + if ($w <= 0) { + $w = 1; + } + if ($h <= 0) { + $h = 1; + } + // calculate percentages + $gradient['coords'][0] = ($gradient['coords'][0] - $x) / $w; + $gradient['coords'][1] = ($gradient['coords'][1] - $y) / $h; + $gradient['coords'][2] = ($gradient['coords'][2] - $x) / $w; + $gradient['coords'][3] = ($gradient['coords'][3] - $y) / $h; + if (isset($gradient['coords'][4])) { + $gradient['coords'][4] /= $w; + } + } elseif ($gradient['mode'] == 'percentage') { + foreach($gradient['coords'] as $key => $val) { + $gradient['coords'][$key] = (intval($val) / 100); + } + } + // fix values + foreach($gradient['coords'] as $key => $val) { + if ($val < 0) { + $gradient['coords'][$key] = 0; + } elseif ($val > 1) { + $gradient['coords'][$key] = 1; + } + } + if (($gradient['type'] == 2) AND ($gradient['coords'][0] == $gradient['coords'][2]) AND ($gradient['coords'][1] == $gradient['coords'][3])) { + // single color (no shading) + $gradient['coords'][0] = 1; + $gradient['coords'][1] = 0; + $gradient['coords'][2] = 0.999; + $gradient['coords'][3] = 0; + } + // swap Y coordinates + $tmp = $gradient['coords'][1]; + $gradient['coords'][1] = $gradient['coords'][3]; + $gradient['coords'][3] = $tmp; + // set transformation map for gradient + if ($gradient['type'] == 3) { + // gradient is always circular + $cy = $this->h - $y - ($gradient['coords'][1] * ($w + $h)); + $this->_out(sprintf('%.3F 0 0 %.3F %.3F %.3F cm', $w*$this->k, $w*$this->k, $x*$this->k, $cy*$this->k)); + } else { + $this->_out(sprintf('%.3F 0 0 %.3F %.3F %.3F cm', $w*$this->k, $h*$this->k, $x*$this->k, ($this->h-($y+$h))*$this->k)); + } + if (count($gradient['stops']) > 1) { + $this->Gradient($gradient['type'], $gradient['coords'], $gradient['stops'], array(), false); + } + } elseif ($svgstyle['fill'] != 'none') { + $fill_color = $this->convertHTMLColorToDec($svgstyle['fill']); + if ($svgstyle['fill-opacity'] != 1) { + $this->SetAlpha($svgstyle['fill-opacity']); + } + $this->SetFillColorArray($fill_color); + if ($svgstyle['fill-rule'] == 'evenodd') { + $objstyle .= 'F*'; + } else { + $objstyle .= 'F'; + } + } + // stroke + if ($svgstyle['stroke'] != 'none') { + $stroke_style = array( + 'color' => $this->convertHTMLColorToDec($svgstyle['stroke']), + 'width' => $this->getHTMLUnitToUnits($svgstyle['stroke-width'], 0, $this->svgunit, false), + 'cap' => $svgstyle['stroke-linecap'], + 'join' => $svgstyle['stroke-linejoin'] + ); + if (isset($svgstyle['stroke-dasharray']) AND !empty($svgstyle['stroke-dasharray']) AND ($svgstyle['stroke-dasharray'] != 'none')) { + $stroke_style['dash'] = $svgstyle['stroke-dasharray']; + } + $this->SetLineStyle($stroke_style); + $objstyle .= 'D'; + } + // font + $regs = array(); + if (!empty($svgstyle['font'])) { + if (preg_match('/font-family[\s]*:[\s]*([^\;\"]*)/si', $svgstyle['font'], $regs)) { + $font_family = $this->getFontFamilyName($regs[1]); + } else { + $font_family = $svgstyle['font-family']; + } + if (preg_match('/font-size[\s]*:[\s]*([^\s\;\"]*)/si', $svgstyle['font'], $regs)) { + $font_size = trim($regs[1]); + } else { + $font_size = $svgstyle['font-size']; + } + if (preg_match('/font-style[\s]*:[\s]*([^\s\;\"]*)/si', $svgstyle['font'], $regs)) { + $font_style = trim($regs[1]); + } else { + $font_style = $svgstyle['font-style']; + } + if (preg_match('/font-weight[\s]*:[\s]*([^\s\;\"]*)/si', $svgstyle['font'], $regs)) { + $font_weight = trim($regs[1]); + } else { + $font_weight = $svgstyle['font-weight']; + } + if (preg_match('/font-stretch[\s]*:[\s]*([^\s\;\"]*)/si', $svgstyle['font'], $regs)) { + $font_stretch = trim($regs[1]); + } else { + $font_stretch = $svgstyle['font-stretch']; + } + if (preg_match('/letter-spacing[\s]*:[\s]*([^\s\;\"]*)/si', $svgstyle['font'], $regs)) { + $font_spacing = trim($regs[1]); + } else { + $font_spacing = $svgstyle['letter-spacing']; + } + } else { + $font_family = $this->getFontFamilyName($svgstyle['font-family']); + $font_size = $svgstyle['font-size']; + $font_style = $svgstyle['font-style']; + $font_weight = $svgstyle['font-weight']; + $font_stretch = $svgstyle['font-stretch']; + $font_spacing = $svgstyle['letter-spacing']; + } + $font_size = $this->getHTMLUnitToUnits($font_size, $prevsvgstyle['font-size'], $this->svgunit, false) * $this->k; + $font_stretch = $this->getCSSFontStretching($font_stretch, $svgstyle['font-stretch']); + $font_spacing = $this->getCSSFontSpacing($font_spacing, $svgstyle['letter-spacing']); + switch ($font_style) { + case 'italic': { + $font_style = 'I'; + break; + } + case 'oblique': { + $font_style = 'I'; + break; + } + default: + case 'normal': { + $font_style = ''; + break; + } + } + switch ($font_weight) { + case 'bold': + case 'bolder': { + $font_style .= 'B'; + break; + } + } + switch ($svgstyle['text-decoration']) { + case 'underline': { + $font_style .= 'U'; + break; + } + case 'overline': { + $font_style .= 'O'; + break; + } + case 'line-through': { + $font_style .= 'D'; + break; + } + default: + case 'none': { + break; + } + } + $this->SetFont($font_family, $font_style, $font_size); + $this->setFontStretching($font_stretch); + $this->setFontSpacing($font_spacing); + return $objstyle; + } + + /** + * Draws an SVG path + * @param $d (string) attribute d of the path SVG element + * @param $style (string) Style of rendering. Possible values are: + *
          + *
        • D or empty string: Draw (default).
        • + *
        • F: Fill.
        • + *
        • F*: Fill using the even-odd rule to determine which regions lie inside the clipping path.
        • + *
        • DF or FD: Draw and fill.
        • + *
        • DF* or FD*: Draw and fill using the even-odd rule to determine which regions lie inside the clipping path.
        • + *
        • CNZ: Clipping mode (using the even-odd rule to determine which regions lie inside the clipping path).
        • + *
        • CEO: Clipping mode (using the nonzero winding number rule to determine which regions lie inside the clipping path).
        • + *
        + * @return array of container box measures (x, y, w, h) + * @author Nicola Asuni + * @since 5.0.000 (2010-05-02) + * @protected + */ + protected function SVGPath($d, $style='') { + // set fill/stroke style + $op = $this->getPathPaintOperator($style, ''); + if (empty($op)) { + return; + } + $paths = array(); + $d = preg_replace('/([0-9ACHLMQSTVZ])([\-\+])/si', '\\1 \\2', $d); + preg_match_all('/([ACHLMQSTVZ])[\s]*([^ACHLMQSTVZ\"]*)/si', $d, $paths, PREG_SET_ORDER); + $x = 0; + $y = 0; + $x1 = 0; + $y1 = 0; + $x2 = 0; + $y2 = 0; + $xmin = 2147483647; + $xmax = 0; + $ymin = 2147483647; + $ymax = 0; + $relcoord = false; + // draw curve pieces + foreach ($paths as $key => $val) { + // get curve type + $cmd = trim($val[1]); + if (strtolower($cmd) == $cmd) { + // use relative coordinated instead of absolute + $relcoord = true; + $xoffset = $x; + $yoffset = $y; + } else { + $relcoord = false; + $xoffset = 0; + $yoffset = 0; + } + $params = array(); + if (isset($val[2])) { + // get curve parameters + $rawparams = preg_split('/([\,\s]+)/si', trim($val[2])); + $params = array(); + foreach ($rawparams as $ck => $cp) { + $params[$ck] = $this->getHTMLUnitToUnits($cp, 0, $this->svgunit, false); + } + } + switch (strtoupper($cmd)) { + case 'M': { // moveto + foreach ($params as $ck => $cp) { + if (($ck % 2) == 0) { + $x = $cp + $xoffset; + } else { + $y = $cp + $yoffset; + if ($ck == 1) { + $this->_outPoint($x, $y); + } else { + $this->_outLine($x, $y); + } + $xmin = min($xmin, $x); + $ymin = min($ymin, $y); + $xmax = max($xmax, $x); + $ymax = max($ymax, $y); + if ($relcoord) { + $xoffset = $x; + $yoffset = $y; + } + } + } + break; + } + case 'L': { // lineto + foreach ($params as $ck => $cp) { + if (($ck % 2) == 0) { + $x = $cp + $xoffset; + } else { + $y = $cp + $yoffset; + $this->_outLine($x, $y); + $xmin = min($xmin, $x); + $ymin = min($ymin, $y); + $xmax = max($xmax, $x); + $ymax = max($ymax, $y); + if ($relcoord) { + $xoffset = $x; + $yoffset = $y; + } + } + } + break; + } + case 'H': { // horizontal lineto + foreach ($params as $ck => $cp) { + $x = $cp + $xoffset; + $this->_outLine($x, $y); + $xmin = min($xmin, $x); + $xmax = max($xmax, $x); + if ($relcoord) { + $xoffset = $x; + } + } + break; + } + case 'V': { // vertical lineto + foreach ($params as $ck => $cp) { + $y = $cp + $yoffset; + $this->_outLine($x, $y); + $ymin = min($ymin, $y); + $ymax = max($ymax, $y); + if ($relcoord) { + $yoffset = $y; + } + } + break; + } + case 'C': { // curveto + foreach ($params as $ck => $cp) { + $params[$ck] = $cp; + if ((($ck + 1) % 6) == 0) { + $x1 = $params[($ck - 5)] + $xoffset; + $y1 = $params[($ck - 4)] + $yoffset; + $x2 = $params[($ck - 3)] + $xoffset; + $y2 = $params[($ck - 2)] + $yoffset; + $x = $params[($ck - 1)] + $xoffset; + $y = $params[($ck)] + $yoffset; + $this->_outCurve($x1, $y1, $x2, $y2, $x, $y); + $xmin = min($xmin, $x, $x1, $x2); + $ymin = min($ymin, $y, $y1, $y2); + $xmax = max($xmax, $x, $x1, $x2); + $ymax = max($ymax, $y, $y1, $y2); + if ($relcoord) { + $xoffset = $x; + $yoffset = $y; + } + } + } + break; + } + case 'S': { // shorthand/smooth curveto + foreach ($params as $ck => $cp) { + $params[$ck] = $cp; + if ((($ck + 1) % 4) == 0) { + if (($key > 0) AND ((strtoupper($paths[($key - 1)][1]) == 'C') OR (strtoupper($paths[($key - 1)][1]) == 'S'))) { + $x1 = (2 * $x) - $x2; + $y1 = (2 * $y) - $y2; + } else { + $x1 = $x; + $y1 = $y; + } + $x2 = $params[($ck - 3)] + $xoffset; + $y2 = $params[($ck - 2)] + $yoffset; + $x = $params[($ck - 1)] + $xoffset; + $y = $params[($ck)] + $yoffset; + $this->_outCurve($x1, $y1, $x2, $y2, $x, $y); + $xmin = min($xmin, $x, $x1, $x2); + $ymin = min($ymin, $y, $y1, $y2); + $xmax = max($xmax, $x, $x1, $x2); + $ymax = max($ymax, $y, $y1, $y2); + if ($relcoord) { + $xoffset = $x; + $yoffset = $y; + } + } + } + break; + } + case 'Q': { // quadratic Bézier curveto + foreach ($params as $ck => $cp) { + $params[$ck] = $cp; + if ((($ck + 1) % 4) == 0) { + // convert quadratic points to cubic points + $x1 = $params[($ck - 3)] + $xoffset; + $y1 = $params[($ck - 2)] + $yoffset; + $xa = ($x + (2 * $x1)) / 3; + $ya = ($y + (2 * $y1)) / 3; + $x = $params[($ck - 1)] + $xoffset; + $y = $params[($ck)] + $yoffset; + $xb = ($x + (2 * $x1)) / 3; + $yb = ($y + (2 * $y1)) / 3; + $this->_outCurve($xa, $ya, $xb, $yb, $x, $y); + $xmin = min($xmin, $x, $xa, $xb); + $ymin = min($ymin, $y, $ya, $yb); + $xmax = max($xmax, $x, $xa, $xb); + $ymax = max($ymax, $y, $ya, $yb); + if ($relcoord) { + $xoffset = $x; + $yoffset = $y; + } + } + } + break; + } + case 'T': { // shorthand/smooth quadratic Bézier curveto + foreach ($params as $ck => $cp) { + $params[$ck] = $cp; + if (($ck % 2) != 0) { + if (($key > 0) AND ((strtoupper($paths[($key - 1)][1]) == 'Q') OR (strtoupper($paths[($key - 1)][1]) == 'T'))) { + $x1 = (2 * $x) - $x1; + $y1 = (2 * $y) - $y1; + } else { + $x1 = $x; + $y1 = $y; + } + // convert quadratic points to cubic points + $xa = ($x + (2 * $x1)) / 3; + $ya = ($y + (2 * $y1)) / 3; + $x = $params[($ck - 1)] + $xoffset; + $y = $params[($ck)] + $yoffset; + $xb = ($x + (2 * $x1)) / 3; + $yb = ($y + (2 * $y1)) / 3; + $this->_outCurve($xa, $ya, $xb, $yb, $x, $y); + $xmin = min($xmin, $x, $xa, $xb); + $ymin = min($ymin, $y, $ya, $yb); + $xmax = max($xmax, $x, $xa, $xb); + $ymax = max($ymax, $y, $ya, $yb); + if ($relcoord) { + $xoffset = $x; + $yoffset = $y; + } + } + } + break; + } + case 'A': { // elliptical arc + foreach ($params as $ck => $cp) { + $params[$ck] = $cp; + if ((($ck + 1) % 7) == 0) { + $x0 = $x; + $y0 = $y; + $rx = abs($params[($ck - 6)]); + $ry = abs($params[($ck - 5)]); + $ang = -$rawparams[($ck - 4)]; + $angle = deg2rad($ang); + $fa = $rawparams[($ck - 3)]; // large-arc-flag + $fs = $rawparams[($ck - 2)]; // sweep-flag + $x = $params[($ck - 1)] + $xoffset; + $y = $params[$ck] + $yoffset; + $cos_ang = cos($angle); + $sin_ang = sin($angle); + $a = ($x0 - $x) / 2; + $b = ($y0 - $y) / 2; + $xa = ($a * $cos_ang) - ($b * $sin_ang); + $ya = ($a * $sin_ang) + ($b * $cos_ang); + $rx2 = $rx * $rx; + $ry2 = $ry * $ry; + $xa2 = $xa * $xa; + $ya2 = $ya * $ya; + $delta = ($xa2 / $rx2) + ($ya2 / $ry2); + if ($delta > 1) { + $rx *= sqrt($delta); + $ry *= sqrt($delta); + $rx2 = $rx * $rx; + $ry2 = $ry * $ry; + } + $numerator = (($rx2 * $ry2) - ($rx2 * $ya2) - ($ry2 * $xa2)); + if ($numerator < 0) { + $root = 0; + } else { + $root = sqrt($numerator / (($rx2 * $ya2) + ($ry2 * $xa2))); + } + if ($fa == $fs) { + $root *= -1; + } + $cax = $root * (($rx * $ya) / $ry); + $cay = -$root * (($ry * $xa) / $rx); + // coordinates of ellipse center + $cx = ($cax * $cos_ang) - ($cay * $sin_ang) + (($x0 + $x) / 2); + $cy = ($cax * $sin_ang) + ($cay * $cos_ang) + (($y0 + $y) / 2); + // get angles + $angs = $this->getVectorsAngle(1, 0, (($xa - $cax) / $rx), (($cay - $ya) / $ry)); + $dang = $this->getVectorsAngle((($xa - $cax) / $rx), (($ya - $cay) / $ry), ((-$xa - $cax) / $rx), ((-$ya - $cay) / $ry)); + if (($fs == 0) AND ($dang > 0)) { + $dang -= (2 * M_PI); + } elseif (($fs == 1) AND ($dang < 0)) { + $dang += (2 * M_PI); + } + $angf = $angs - $dang; + if ((($fs == 0) AND ($angs > $angf)) OR (($fs == 1) AND ($angs < $angf))) { + // reverse angles + $tmp = $angs; + $angs = $angf; + $angf = $tmp; + } + $angs = round(rad2deg($angs), 6); + $angf = round(rad2deg($angf), 6); + // covent angles to positive values + if (($angs < 0) AND ($angf < 0)) { + $angs += 360; + $angf += 360; + } + $pie = false; + if (($key==0) AND (isset($paths[($key + 1)][1])) AND (trim($paths[($key + 1)][1]) == 'z')) { + $pie = true; + } + list($axmin, $aymin, $axmax, $aymax) = $this->_outellipticalarc($cx, $cy, $rx, $ry, $ang, $angs, $angf, $pie, 2, false, ($fs == 0)); + $xmin = min($xmin, $x, $axmin); + $ymin = min($ymin, $y, $aymin); + $xmax = max($xmax, $x, $axmax); + $ymax = max($ymax, $y, $aymax); + if ($relcoord) { + $xoffset = $x; + $yoffset = $y; + } + } + } + break; + } + case 'Z': { + $this->_out('h'); + break; + } + } + } // end foreach + if (!empty($op)) { + $this->_out($op); + } + return array($xmin, $ymin, ($xmax - $xmin), ($ymax - $ymin)); + } + + /** + * Returns the angle in radiants between two vectors + * @param $x1 (int) X coordiante of first vector point + * @param $y1 (int) Y coordiante of first vector point + * @param $x2 (int) X coordiante of second vector point + * @param $y2 (int) Y coordiante of second vector point + * @author Nicola Asuni + * @since 5.0.000 (2010-05-04) + * @protected + */ + protected function getVectorsAngle($x1, $y1, $x2, $y2) { + $dprod = ($x1 * $x2) + ($y1 * $y2); + $dist1 = sqrt(($x1 * $x1) + ($y1 * $y1)); + $dist2 = sqrt(($x2 * $x2) + ($y2 * $y2)); + $angle = acos($dprod / ($dist1 * $dist2)); + if (is_nan($angle)) { + $angle = M_PI; + } + if ((($x1 * $y2) - ($x2 * $y1)) < 0) { + $angle *= -1; + } + return $angle; + } + + /** + * Sets the opening SVG element handler function for the XML parser. (*** TO BE COMPLETED ***) + * @param $parser (resource) The first parameter, parser, is a reference to the XML parser calling the handler. + * @param $name (string) The second parameter, name, contains the name of the element for which this handler is called. If case-folding is in effect for this parser, the element name will be in uppercase letters. + * @param $attribs (array) The third parameter, attribs, contains an associative array with the element's attributes (if any). The keys of this array are the attribute names, the values are the attribute values. Attribute names are case-folded on the same criteria as element names. Attribute values are not case-folded. The original order of the attributes can be retrieved by walking through attribs the normal way, using each(). The first key in the array was the first attribute, and so on. + * @param $ctm (array) tranformation matrix for clipping mode (starting transformation matrix). + * @author Nicola Asuni + * @since 5.0.000 (2010-05-02) + * @protected + */ + protected function startSVGElementHandler($parser, $name, $attribs, $ctm=array()) { + // check if we are in clip mode + if ($this->svgclipmode) { + $this->svgclippaths[$this->svgclipid][] = array('name' => $name, 'attribs' => $attribs, 'tm' => $this->svgcliptm[$this->svgclipid]); + return; + } + if ($this->svgdefsmode AND !in_array($name, array('clipPath', 'linearGradient', 'radialGradient', 'stop'))) { + if (!isset($attribs['id'])) { + $attribs['id'] = 'DF_'.(count($this->svgdefs) + 1); + } + $this->svgdefs[$attribs['id']] = array('name' => $name, 'attribs' => $attribs); + return; + } + $clipping = false; + if ($parser == 'clip-path') { + // set clipping mode + $clipping = true; + } + // get styling properties + $prev_svgstyle = $this->svgstyles[(count($this->svgstyles) - 1)]; // previous style + $svgstyle = $this->svgstyles[0]; // set default style + if (isset($attribs['style']) AND !$this->empty_string($attribs['style'])) { + // fix style for regular expression + $attribs['style'] = ';'.$attribs['style']; + } + foreach ($prev_svgstyle as $key => $val) { + if (in_array($key, $this->svginheritprop)) { + // inherit previous value + $svgstyle[$key] = $val; + } + if (isset($attribs[$key]) AND !$this->empty_string($attribs[$key])) { + // specific attribute settings + if ($attribs[$key] == 'inherit') { + $svgstyle[$key] = $val; + } else { + $svgstyle[$key] = $attribs[$key]; + } + } elseif (isset($attribs['style']) AND !$this->empty_string($attribs['style'])) { + // CSS style syntax + $attrval = array(); + if (preg_match('/[;\"\s]{1}'.$key.'[\s]*:[\s]*([^;\"]*)/si', $attribs['style'], $attrval) AND isset($attrval[1])) { + if ($attrval[1] == 'inherit') { + $svgstyle[$key] = $val; + } else { + $svgstyle[$key] = $attrval[1]; + } + } + } + } + // transformation matrix + if (!empty($ctm)) { + $tm = $ctm; + } else { + $tm = $this->svgstyles[(count($this->svgstyles) - 1)]['transfmatrix']; + } + if (isset($attribs['transform']) AND !empty($attribs['transform'])) { + $tm = $this->getTransformationMatrixProduct($tm, $this->getSVGTransformMatrix($attribs['transform'])); + } + $svgstyle['transfmatrix'] = $tm; + $invisible = false; + if (($svgstyle['visibility'] == 'hidden') OR ($svgstyle['visibility'] == 'collapse') OR ($svgstyle['display'] == 'none')) { + // the current graphics element is invisible (nothing is painted) + $invisible = true; + } + // process tag + switch($name) { + case 'defs': { + $this->svgdefsmode = true; + break; + } + // clipPath + case 'clipPath': { + if ($invisible) { + break; + } + $this->svgclipmode = true; + if (!isset($attribs['id'])) { + $attribs['id'] = 'CP_'.(count($this->svgcliptm) + 1); + } + $this->svgclipid = $attribs['id']; + $this->svgclippaths[$this->svgclipid] = array(); + $this->svgcliptm[$this->svgclipid] = $tm; + break; + } + case 'svg': { + // start of SVG object + break; + } + case 'g': { + // group together related graphics elements + array_push($this->svgstyles, $svgstyle); + $this->StartTransform(); + $this->setSVGStyles($svgstyle, $prev_svgstyle); + break; + } + case 'linearGradient': { + if (!isset($attribs['id'])) { + $attribs['id'] = 'GR_'.(count($this->svggradients) + 1); + } + $this->svggradientid = $attribs['id']; + $this->svggradients[$this->svggradientid] = array(); + $this->svggradients[$this->svggradientid]['type'] = 2; + $this->svggradients[$this->svggradientid]['stops'] = array(); + if (isset($attribs['gradientUnits'])) { + $this->svggradients[$this->svggradientid]['gradientUnits'] = $attribs['gradientUnits']; + } else { + $this->svggradients[$this->svggradientid]['gradientUnits'] = 'objectBoundingBox'; + } + //$attribs['spreadMethod'] + $x1 = (isset($attribs['x1'])?$attribs['x1']:'0%'); + $y1 = (isset($attribs['y1'])?$attribs['y1']:'0%'); + $x2 = (isset($attribs['x2'])?$attribs['x2']:'100%'); + $y2 = (isset($attribs['y2'])?$attribs['y2']:'0%'); + if (substr($x1, -1) != '%') { + $this->svggradients[$this->svggradientid]['mode'] = 'measure'; + } else { + $this->svggradients[$this->svggradientid]['mode'] = 'percentage'; + } + if (isset($attribs['gradientTransform'])) { + $this->svggradients[$this->svggradientid]['gradientTransform'] = $this->getSVGTransformMatrix($attribs['gradientTransform']); + } + $this->svggradients[$this->svggradientid]['coords'] = array($x1, $y1, $x2, $y2); + if (isset($attribs['xlink:href']) AND !empty($attribs['xlink:href'])) { + // gradient is defined on another place + $this->svggradients[$this->svggradientid]['xref'] = substr($attribs['xlink:href'], 1); + } + break; + } + case 'radialGradient': { + if (!isset($attribs['id'])) { + $attribs['id'] = 'GR_'.(count($this->svggradients) + 1); + } + $this->svggradientid = $attribs['id']; + $this->svggradients[$this->svggradientid] = array(); + $this->svggradients[$this->svggradientid]['type'] = 3; + $this->svggradients[$this->svggradientid]['stops'] = array(); + if (isset($attribs['gradientUnits'])) { + $this->svggradients[$this->svggradientid]['gradientUnits'] = $attribs['gradientUnits']; + } else { + $this->svggradients[$this->svggradientid]['gradientUnits'] = 'objectBoundingBox'; + } + //$attribs['spreadMethod'] + $cx = (isset($attribs['cx'])?$attribs['cx']:0.5); + $cy = (isset($attribs['cy'])?$attribs['cy']:0.5); + $fx = (isset($attribs['fx'])?$attribs['fx']:$cx); + $fy = (isset($attribs['fy'])?$attribs['fy']:$cy); + $r = (isset($attribs['r'])?$attribs['r']:0.5); + if (isset($attribs['cx']) AND (substr($attribs['cx'], -1) != '%')) { + $this->svggradients[$this->svggradientid]['mode'] = 'measure'; + } else { + $this->svggradients[$this->svggradientid]['mode'] = 'percentage'; + } + if (isset($attribs['gradientTransform'])) { + $this->svggradients[$this->svggradientid]['gradientTransform'] = $this->getSVGTransformMatrix($attribs['gradientTransform']); + } + $this->svggradients[$this->svggradientid]['coords'] = array($cx, $cy, $fx, $fy, $r); + if (isset($attribs['xlink:href']) AND !empty($attribs['xlink:href'])) { + // gradient is defined on another place + $this->svggradients[$this->svggradientid]['xref'] = substr($attribs['xlink:href'], 1); + } + break; + } + case 'stop': { + // gradient stops + if (substr($attribs['offset'], -1) == '%') { + $offset = floatval(substr($attribs['offset'], -1)) / 100; + } else { + $offset = floatval($attribs['offset']); + if ($offset > 1) { + $offset /= 100; + } + } + $stop_color = isset($svgstyle['stop-color'])?$this->convertHTMLColorToDec($svgstyle['stop-color']):'black'; + $opacity = isset($svgstyle['stop-opacity'])?$svgstyle['stop-opacity']:1; + $this->svggradients[$this->svggradientid]['stops'][] = array('offset' => $offset, 'color' => $stop_color, 'opacity' => $opacity); + break; + } + // paths + case 'path': { + if ($invisible) { + break; + } + if (isset($attribs['d'])) { + $d = trim($attribs['d']); + if (!empty($d)) { + if ($clipping) { + $this->SVGTransform($tm); + $this->SVGPath($d, 'CNZ'); + } else { + $this->StartTransform(); + $this->SVGTransform($tm); + $obstyle = $this->setSVGStyles($svgstyle, $prev_svgstyle, 0, 0, 1, 1, 'SVGPath', array($d, 'CNZ')); + if (!empty($obstyle)) { + $this->SVGPath($d, $obstyle); + } + $this->StopTransform(); + } + } + } + break; + } + // shapes + case 'rect': { + if ($invisible) { + break; + } + $x = (isset($attribs['x'])?$this->getHTMLUnitToUnits($attribs['x'], 0, $this->svgunit, false):0); + $y = (isset($attribs['y'])?$this->getHTMLUnitToUnits($attribs['y'], 0, $this->svgunit, false):0); + $w = (isset($attribs['width'])?$this->getHTMLUnitToUnits($attribs['width'], 0, $this->svgunit, false):0); + $h = (isset($attribs['height'])?$this->getHTMLUnitToUnits($attribs['height'], 0, $this->svgunit, false):0); + $rx = (isset($attribs['rx'])?$this->getHTMLUnitToUnits($attribs['rx'], 0, $this->svgunit, false):0); + $ry = (isset($attribs['ry'])?$this->getHTMLUnitToUnits($attribs['ry'], 0, $this->svgunit, false):$rx); + if ($clipping) { + $this->SVGTransform($tm); + $this->RoundedRectXY($x, $y, $w, $h, $rx, $ry, '1111', 'CNZ', array(), array()); + } else { + $this->StartTransform(); + $this->SVGTransform($tm); + $obstyle = $this->setSVGStyles($svgstyle, $prev_svgstyle, $x, $y, $w, $h, 'RoundedRectXY', array($x, $y, $w, $h, $rx, $ry, '1111', 'CNZ')); + if (!empty($obstyle)) { + $this->RoundedRectXY($x, $y, $w, $h, $rx, $ry, '1111', $obstyle, array(), array()); + } + $this->StopTransform(); + } + break; + } + case 'circle': { + if ($invisible) { + break; + } + $cx = (isset($attribs['cx'])?$this->getHTMLUnitToUnits($attribs['cx'], 0, $this->svgunit, false):0); + $cy = (isset($attribs['cy'])?$this->getHTMLUnitToUnits($attribs['cy'], 0, $this->svgunit, false):0); + $r = (isset($attribs['r'])?$this->getHTMLUnitToUnits($attribs['r'], 0, $this->svgunit, false):0); + $x = $cx - $r; + $y = $cy - $r; + $w = 2 * $r; + $h = $w; + if ($clipping) { + $this->SVGTransform($tm); + $this->Circle($cx, $cy, $r, 0, 360, 'CNZ', array(), array(), 8); + } else { + $this->StartTransform(); + $this->SVGTransform($tm); + $obstyle = $this->setSVGStyles($svgstyle, $prev_svgstyle, $x, $y, $w, $h, 'Circle', array($cx, $cy, $r, 0, 360, 'CNZ')); + if (!empty($obstyle)) { + $this->Circle($cx, $cy, $r, 0, 360, $obstyle, array(), array(), 8); + } + $this->StopTransform(); + } + break; + } + case 'ellipse': { + if ($invisible) { + break; + } + $cx = (isset($attribs['cx'])?$this->getHTMLUnitToUnits($attribs['cx'], 0, $this->svgunit, false):0); + $cy = (isset($attribs['cy'])?$this->getHTMLUnitToUnits($attribs['cy'], 0, $this->svgunit, false):0); + $rx = (isset($attribs['rx'])?$this->getHTMLUnitToUnits($attribs['rx'], 0, $this->svgunit, false):0); + $ry = (isset($attribs['ry'])?$this->getHTMLUnitToUnits($attribs['ry'], 0, $this->svgunit, false):0); + $x = $cx - $rx; + $y = $cy - $ry; + $w = 2 * $rx; + $h = 2 * $ry; + if ($clipping) { + $this->SVGTransform($tm); + $this->Ellipse($cx, $cy, $rx, $ry, 0, 0, 360, 'CNZ', array(), array(), 8); + } else { + $this->StartTransform(); + $this->SVGTransform($tm); + $obstyle = $this->setSVGStyles($svgstyle, $prev_svgstyle, $x, $y, $w, $h, 'Ellipse', array($cx, $cy, $rx, $ry, 0, 0, 360, 'CNZ')); + if (!empty($obstyle)) { + $this->Ellipse($cx, $cy, $rx, $ry, 0, 0, 360, $obstyle, array(), array(), 8); + } + $this->StopTransform(); + } + break; + } + case 'line': { + if ($invisible) { + break; + } + $x1 = (isset($attribs['x1'])?$this->getHTMLUnitToUnits($attribs['x1'], 0, $this->svgunit, false):0); + $y1 = (isset($attribs['y1'])?$this->getHTMLUnitToUnits($attribs['y1'], 0, $this->svgunit, false):0); + $x2 = (isset($attribs['x2'])?$this->getHTMLUnitToUnits($attribs['x2'], 0, $this->svgunit, false):0); + $y2 = (isset($attribs['y2'])?$this->getHTMLUnitToUnits($attribs['y2'], 0, $this->svgunit, false):0); + $x = $x1; + $y = $y1; + $w = abs($x2 - $x1); + $h = abs($y2 - $y1); + if (!$clipping) { + $this->StartTransform(); + $this->SVGTransform($tm); + $obstyle = $this->setSVGStyles($svgstyle, $prev_svgstyle, $x, $y, $w, $h, 'Line', array($x1, $y1, $x2, $y2)); + $this->Line($x1, $y1, $x2, $y2); + $this->StopTransform(); + } + break; + } + case 'polyline': + case 'polygon': { + if ($invisible) { + break; + } + $points = (isset($attribs['points'])?$attribs['points']:'0 0'); + $points = trim($points); + // note that point may use a complex syntax not covered here + $points = preg_split('/[\,\s]+/si', $points); + if (count($points) < 4) { + break; + } + $p = array(); + $xmin = 2147483647; + $xmax = 0; + $ymin = 2147483647; + $ymax = 0; + foreach ($points as $key => $val) { + $p[$key] = $this->getHTMLUnitToUnits($val, 0, $this->svgunit, false); + if (($key % 2) == 0) { + // X coordinate + $xmin = min($xmin, $p[$key]); + $xmax = max($xmax, $p[$key]); + } else { + // Y coordinate + $ymin = min($ymin, $p[$key]); + $ymax = max($ymax, $p[$key]); + } + } + $x = $xmin; + $y = $ymin; + $w = ($xmax - $xmin); + $h = ($ymax - $ymin); + if ($name == 'polyline') { + $this->StartTransform(); + $this->SVGTransform($tm); + $obstyle = $this->setSVGStyles($svgstyle, $prev_svgstyle, $x, $y, $w, $h, 'PolyLine', array($p, 'CNZ')); + $this->PolyLine($p, 'D', array(), array()); + $this->StopTransform(); + } else { // polygon + if ($clipping) { + $this->SVGTransform($tm); + $this->Polygon($p, 'CNZ', array(), array(), true); + } else { + $this->StartTransform(); + $this->SVGTransform($tm); + $obstyle = $this->setSVGStyles($svgstyle, $prev_svgstyle, $x, $y, $w, $h, 'Polygon', array($p, 'CNZ')); + if (!empty($obstyle)) { + $this->Polygon($p, $obstyle, array(), array(), true); + } + $this->StopTransform(); + } + } + break; + } + // image + case 'image': { + if ($invisible) { + break; + } + if (!isset($attribs['xlink:href']) OR empty($attribs['xlink:href'])) { + break; + } + $x = (isset($attribs['x'])?$this->getHTMLUnitToUnits($attribs['x'], 0, $this->svgunit, false):0); + $y = (isset($attribs['y'])?$this->getHTMLUnitToUnits($attribs['y'], 0, $this->svgunit, false):0); + $w = (isset($attribs['width'])?$this->getHTMLUnitToUnits($attribs['width'], 0, $this->svgunit, false):0); + $h = (isset($attribs['height'])?$this->getHTMLUnitToUnits($attribs['height'], 0, $this->svgunit, false):0); + $img = $attribs['xlink:href']; + if (!$clipping) { + $this->StartTransform(); + $this->SVGTransform($tm); + $obstyle = $this->setSVGStyles($svgstyle, $prev_svgstyle, $x, $y, $w, $h); + // fix image path + if (!$this->empty_string($this->svgdir) AND (($img{0} == '.') OR (basename($img) == $img))) { + // replace relative path with full server path + $img = $this->svgdir.'/'.$img; + } + if (($img{0} == '/') AND ($_SERVER['DOCUMENT_ROOT'] != '/')) { + $findroot = strpos($img, $_SERVER['DOCUMENT_ROOT']); + if (($findroot === false) OR ($findroot > 1)) { + // replace relative path with full server path + $img = $_SERVER['DOCUMENT_ROOT'].$img; + } + } + $img = urldecode($img); + $testscrtype = @parse_url($img); + if (!isset($testscrtype['query']) OR empty($testscrtype['query'])) { + // convert URL to server path + $img = str_replace(K_PATH_URL, K_PATH_MAIN, $img); + } + $this->Image($img, $x, $y, $w, $h); + $this->StopTransform(); + } + break; + } + // text + case 'text': + case 'tspan': { + $this->svgtextmode['invisible'] = $invisible; + if ($invisible) { + break; + } + array_push($this->svgstyles, $svgstyle); + // only basic support - advanced features must be implemented + $x = (isset($attribs['x'])?$this->getHTMLUnitToUnits($attribs['x'], 0, $this->svgunit, false):$this->x); + $y = (isset($attribs['y'])?$this->getHTMLUnitToUnits($attribs['y'], 0, $this->svgunit, false):$this->y); + $svgstyle['text-color'] = $svgstyle['fill']; + $this->svgtext = ''; + if (isset($svgstyle['text-anchor'])) { + $this->svgtextmode['text-anchor'] = $svgstyle['text-anchor']; + } else { + $this->svgtextmode['text-anchor'] = 'start'; + } + if (isset($svgstyle['direction'])) { + if ($svgstyle['direction'] == 'rtl') { + $this->svgtextmode['rtl'] = true; + } else { + $this->svgtextmode['rtl'] = false; + } + } else { + $this->svgtextmode['rtl'] = false; + } + if (isset($svgstyle['stroke']) AND ($svgstyle['stroke'] != 'none') AND isset($svgstyle['stroke-width']) AND ($svgstyle['stroke-width'] > 0)) { + $this->svgtextmode['stroke'] = $this->getHTMLUnitToUnits($svgstyle['stroke-width'], 0, $this->svgunit, false); + } else { + $this->svgtextmode['stroke'] = false; + } + $this->StartTransform(); + $this->SVGTransform($tm); + $obstyle = $this->setSVGStyles($svgstyle, $prev_svgstyle, $x, $y, 1, 1); + $this->x = $x; + $this->y = $y; + break; + } + // use + case 'use': { + if (isset($attribs['xlink:href'])) { + $use = $this->svgdefs[substr($attribs['xlink:href'], 1)]; + if (isset($attribs['xlink:href'])) { + unset($attribs['xlink:href']); + } + if (isset($attribs['id'])) { + unset($attribs['id']); + } + $attribs = array_merge($use['attribs'], $attribs); + $this->startSVGElementHandler($parser, $use['name'], $use['attribs']); + } + break; + } + default: { + break; + } + } // end of switch + } + + /** + * Sets the closing SVG element handler function for the XML parser. + * @param $parser (resource) The first parameter, parser, is a reference to the XML parser calling the handler. + * @param $name (string) The second parameter, name, contains the name of the element for which this handler is called. If case-folding is in effect for this parser, the element name will be in uppercase letters. + * @author Nicola Asuni + * @since 5.0.000 (2010-05-02) + * @protected + */ + protected function endSVGElementHandler($parser, $name) { + switch($name) { + case 'defs': { + $this->svgdefsmode = false; + break; + } + // clipPath + case 'clipPath': { + $this->svgclipmode = false; + break; + } + case 'g': { + // ungroup: remove last style from array + array_pop($this->svgstyles); + $this->StopTransform(); + break; + } + case 'text': + case 'tspan': { + if ($this->svgtextmode['invisible']) { + // This implementation must be fixed to following the rule: + // If the 'visibility' property is set to hidden on a 'tspan', 'tref' or 'altGlyph' element, then the text is invisible but still takes up space in text layout calculations. + break; + } + // print text + $text = $this->stringTrim($this->svgtext); + if ($this->svgtextmode['text-anchor'] != 'start') { + $textlen = $this->GetStringWidth($text); + // check if string is RTL text + if ($this->svgtextmode['text-anchor'] == 'end') { + if ($this->svgtextmode['rtl']) { + $this->x += $textlen; + } else { + $this->x -= $textlen; + } + } elseif ($this->svgtextmode['text-anchor'] == 'middle') { + if ($this->svgtextmode['rtl']) { + $this->x += ($textlen / 2); + } else { + $this->x -= ($textlen / 2); + } + } + } + $textrendermode = $this->textrendermode; + $textstrokewidth = $this->textstrokewidth; + $this->setTextRenderingMode($this->svgtextmode['stroke'], true, false); + $this->Cell(0, 0, $text, 0, 0, '', false, '', 0, false, 'L', 'T'); + // restore previous rendering mode + $this->textrendermode = $textrendermode; + $this->textstrokewidth = $textstrokewidth; + $this->svgtext = ''; + $this->StopTransform(); + array_pop($this->svgstyles); + break; + } + default: { + break; + } + } + } + + /** + * Sets the character data handler function for the XML parser. + * @param $parser (resource) The first parameter, parser, is a reference to the XML parser calling the handler. + * @param $data (string) The second parameter, data, contains the character data as a string. + * @author Nicola Asuni + * @since 5.0.000 (2010-05-02) + * @protected + */ + protected function segSVGContentHandler($parser, $data) { + $this->svgtext .= $data; + } + + // --- END SVG METHODS ----------------------------- + +} // END OF TCPDF CLASS + //============================================================+ // END OF FILE //============================================================+ -?> diff --git a/libraries/tcpdf/unicode_data.php b/libraries/tcpdf/unicode_data.php index 6e8751f27..926ce7bc8 100644 --- a/libraries/tcpdf/unicode_data.php +++ b/libraries/tcpdf/unicode_data.php @@ -1,18278 +1,18371 @@ . +// +// See LICENSE.TXT file for more information. +// ------------------------------------------------------------------- +// +// Description : Unicode data for TCPDF library. // -// (c) Copyright: -// Nicola Asuni -// Tecnick.com s.r.l. -// Via Della Pace, 11 -// 09044 Quartucciu (CA) -// ITALY -// www.tecnick.com -// info@tecnick.com //============================================================+ // THANKS TO // Efthimios Mavrogeorgiadis +// Saleh AlMatrafe /** - * Unicode Include file for TCPDF. + * @file + * Unicode data class for TCPDF library. * @author Nicola Asuni - * @copyright 2004-2008 Nicola Asuni - Tecnick.com S.r.l (www.tecnick.com) Via Della Pace, 11 - 09044 - Quartucciu (CA) - ITALY - www.tecnick.com - info@tecnick.com * @package com.tecnick.tcpdf - * @version 2.1.000 - * @link http://tcpdf.sourceforge.net - * @license http://www.gnu.org/copyleft/lesser.html LGPL * @since 2.1.000 (2008-01-08) -*/ + */ /** -* Left-to-Right Mark -*/ -define("K_LRM", 8206); -/** -* Right-to-Left Mark -*/ -define("K_RLM", 8207); -/** -* Left-to-Right Embedding -*/ -define("K_LRE", 8234); -/** -* Right-to-Left Embedding -*/ -define("K_RLE", 8235); -/** -* Pop Directional Format -*/ -define("K_PDF", 8236); -/** -* Left-to-Right Override -*/ -define("K_LRO", 8237); -/** -* Right-to-Left Override -*/ -define("K_RLO", 8238); + * @class TCPDF_UNICODE_DATA + * This is a PHP class containing Unicde data for TCPDF library + * @package com.tecnick.tcpdf + * @version 1.0.007 + * @author Nicola Asuni - info@tecnick.com + */ +class TCPDF_UNICODE_DATA { -/* +/** + * Unicode code for Left-to-Right Mark. + * @public + */ +public $uni_LRM = 8206; + +/** + * Unicode code for Right-to-Left Mark. + * @public + */ +public $uni_RLM = 8207; + +/** + * Unicode code for Left-to-Right Embedding. + * @public + */ +public $uni_LRE = 8234; + +/** + * Unicode code for Right-to-Left Embedding. + * @public + */ +public $uni_RLE = 8235; + +/** + * Unicode code for Pop Directional Format. + * @public + */ +public $uni_PDF = 8236; + +/** + * Unicode code for Left-to-Right Override. + * @public + */ +public $uni_LRO = 8237; + +/** + * Unicode code for Right-to-Left Override. + * @public + */ +public $uni_RLO = 8238; + +/** * Pattern to test RTL (Righ-To-Left) strings using regular expressions. + * @public */ -define("K_RE_PATTERN_RTL", "/( - \xD6\xBE # R - | \xD7[\x80\x83\x86\x90-\xAA\xB0-\xB4] # R - | \xDF[\x80-\xAA\xB4\xB5\xBA] # R - | \xE2\x80\x8F # R - | \xEF\xAC[\x9D\x9F\xA0-\xA8\xAA-\xB6\xB8-\xBC\xBE] # R - | \xEF\xAD[\x80\x81\x83\x84\x86-\x8F] # R - | \xF0\x90\xA0[\x80-\x85\x88\x8A-\xB5\xB7\xB8\xBC\xBF] # R - | \xF0\x90\xA4[\x80-\x99] # R - | \xF0\x90\xA8[\x80\x90-\x93\x95-\x97\x99-\xB3] # R - | \xF0\x90\xA9[\x80-\x87\x90-\x98] # R - | \xE2\x80[\xAB\xAE] # RLE & RLO - )/x"); - -/* - * Pattern to test Arabic strings using regular expressions. - * source: http://www.w3.org/International/questions/qa-forms-utf-8 - */ -define("K_RE_PATTERN_ARABIC", "/( - \xD8[\x80-\x83\x8B\x8D\x9B\x9E\x9F\xA1-\xBA] # AL - | \xD9[\x80-\x8A\xAD-\xAF\xB1-\xBF] # AL - | \xDA[\x80-\xBF] # AL - | \xDB[\x80-\x95\x9D\xA5\xA6\xAE\xAF\xBA-\xBF] # AL - | \xDC[\x80-\x8D\x90\x92-\xAF] # AL - | \xDD[\x8D-\xAD] # AL - | \xDE[\x80-\xA5\xB1] # AL - | \xEF\xAD[\x90-\xBF] # AL - | \xEF\xAE[\x80-\xB1] # AL - | \xEF\xAF[\x93-\xBF] # AL - | \xEF[\xB0-\xB3][\x80-\xBF] # AL - | \xEF\xB4[\x80-\xBD] # AL - | \xEF\xB5[\x90-\xBF] # AL - | \xEF\xB6[\x80-\x8F\x92-\xBF] # AL - | \xEF\xB7[\x80-\x87\xB0-\xBC] # AL - | \xEF\xB9[\xB0-\xB4\xB6-\xBF] # AL - | \xEF\xBA[\x80-\xBF] # AL - | \xEF\xBB[\x80-\xBC] # AL - | \xD9[\xA0-\xA9\xAB\xAC] # AN - )/x"); +public $uni_RE_PATTERN_RTL = "/( + \xD6\xBE # R + | \xD7[\x80\x83\x86\x90-\xAA\xB0-\xB4] # R + | \xDF[\x80-\xAA\xB4\xB5\xBA] # R + | \xE2\x80\x8F # R + | \xEF\xAC[\x9D\x9F\xA0-\xA8\xAA-\xB6\xB8-\xBC\xBE] # R + | \xEF\xAD[\x80\x81\x83\x84\x86-\x8F] # R + | \xF0\x90\xA0[\x80-\x85\x88\x8A-\xB5\xB7\xB8\xBC\xBF] # R + | \xF0\x90\xA4[\x80-\x99] # R + | \xF0\x90\xA8[\x80\x90-\x93\x95-\x97\x99-\xB3] # R + | \xF0\x90\xA9[\x80-\x87\x90-\x98] # R + | \xE2\x80[\xAB\xAE] # RLE & RLO + )/x"; /** - * Array of unicode types + * Pattern to test Arabic strings using regular expressions. Source: http://www.w3.org/International/questions/qa-forms-utf-8 + * @public */ -$unicode = array( - 0 => 'BN', - 1 => 'BN', - 2 => 'BN', - 3 => 'BN', - 4 => 'BN', - 5 => 'BN', - 6 => 'BN', - 7 => 'BN', - 8 => 'BN', - 9 => 'S', - 10 => 'B', - 11 => 'S', - 12 => 'WS', - 13 => 'B', - 14 => 'BN', - 15 => 'BN', - 16 => 'BN', - 17 => 'BN', - 18 => 'BN', - 19 => 'BN', - 20 => 'BN', - 21 => 'BN', - 22 => 'BN', - 23 => 'BN', - 24 => 'BN', - 25 => 'BN', - 26 => 'BN', - 27 => 'BN', - 28 => 'B', - 29 => 'B', - 30 => 'B', - 31 => 'S', - 32 => 'WS', - 33 => 'ON', - 34 => 'ON', - 35 => 'ET', - 36 => 'ET', - 37 => 'ET', - 38 => 'ON', - 39 => 'ON', - 40 => 'ON', - 41 => 'ON', - 42 => 'ON', - 43 => 'ES', - 44 => 'CS', - 45 => 'ES', - 46 => 'CS', - 47 => 'CS', - 48 => 'EN', - 49 => 'EN', - 50 => 'EN', - 51 => 'EN', - 52 => 'EN', - 53 => 'EN', - 54 => 'EN', - 55 => 'EN', - 56 => 'EN', - 57 => 'EN', - 58 => 'CS', - 59 => 'ON', - 60 => 'ON', - 61 => 'ON', - 62 => 'ON', - 63 => 'ON', - 64 => 'ON', - 65 => 'L', - 66 => 'L', - 67 => 'L', - 68 => 'L', - 69 => 'L', - 70 => 'L', - 71 => 'L', - 72 => 'L', - 73 => 'L', - 74 => 'L', - 75 => 'L', - 76 => 'L', - 77 => 'L', - 78 => 'L', - 79 => 'L', - 80 => 'L', - 81 => 'L', - 82 => 'L', - 83 => 'L', - 84 => 'L', - 85 => 'L', - 86 => 'L', - 87 => 'L', - 88 => 'L', - 89 => 'L', - 90 => 'L', - 91 => 'ON', - 92 => 'ON', - 93 => 'ON', - 94 => 'ON', - 95 => 'ON', - 96 => 'ON', - 97 => 'L', - 98 => 'L', - 99 => 'L', - 100 => 'L', - 101 => 'L', - 102 => 'L', - 103 => 'L', - 104 => 'L', - 105 => 'L', - 106 => 'L', - 107 => 'L', - 108 => 'L', - 109 => 'L', - 110 => 'L', - 111 => 'L', - 112 => 'L', - 113 => 'L', - 114 => 'L', - 115 => 'L', - 116 => 'L', - 117 => 'L', - 118 => 'L', - 119 => 'L', - 120 => 'L', - 121 => 'L', - 122 => 'L', - 123 => 'ON', - 124 => 'ON', - 125 => 'ON', - 126 => 'ON', - 127 => 'BN', - 128 => 'BN', - 129 => 'BN', - 130 => 'BN', - 131 => 'BN', - 132 => 'BN', - 133 => 'B', - 134 => 'BN', - 135 => 'BN', - 136 => 'BN', - 137 => 'BN', - 138 => 'BN', - 139 => 'BN', - 140 => 'BN', - 141 => 'BN', - 142 => 'BN', - 143 => 'BN', - 144 => 'BN', - 145 => 'BN', - 146 => 'BN', - 147 => 'BN', - 148 => 'BN', - 149 => 'BN', - 150 => 'BN', - 151 => 'BN', - 152 => 'BN', - 153 => 'BN', - 154 => 'BN', - 155 => 'BN', - 156 => 'BN', - 157 => 'BN', - 158 => 'BN', - 159 => 'BN', - 160 => 'CS', - 161 => 'ON', - 162 => 'ET', - 163 => 'ET', - 164 => 'ET', - 165 => 'ET', - 166 => 'ON', - 167 => 'ON', - 168 => 'ON', - 169 => 'ON', - 170 => 'L', - 171 => 'ON', - 172 => 'ON', - 173 => 'BN', - 174 => 'ON', - 175 => 'ON', - 176 => 'ET', - 177 => 'ET', - 178 => 'EN', - 179 => 'EN', - 180 => 'ON', - 181 => 'L', - 182 => 'ON', - 183 => 'ON', - 184 => 'ON', - 185 => 'EN', - 186 => 'L', - 187 => 'ON', - 188 => 'ON', - 189 => 'ON', - 190 => 'ON', - 191 => 'ON', - 192 => 'L', - 193 => 'L', - 194 => 'L', - 195 => 'L', - 196 => 'L', - 197 => 'L', - 198 => 'L', - 199 => 'L', - 200 => 'L', - 201 => 'L', - 202 => 'L', - 203 => 'L', - 204 => 'L', - 205 => 'L', - 206 => 'L', - 207 => 'L', - 208 => 'L', - 209 => 'L', - 210 => 'L', - 211 => 'L', - 212 => 'L', - 213 => 'L', - 214 => 'L', - 215 => 'ON', - 216 => 'L', - 217 => 'L', - 218 => 'L', - 219 => 'L', - 220 => 'L', - 221 => 'L', - 222 => 'L', - 223 => 'L', - 224 => 'L', - 225 => 'L', - 226 => 'L', - 227 => 'L', - 228 => 'L', - 229 => 'L', - 230 => 'L', - 231 => 'L', - 232 => 'L', - 233 => 'L', - 234 => 'L', - 235 => 'L', - 236 => 'L', - 237 => 'L', - 238 => 'L', - 239 => 'L', - 240 => 'L', - 241 => 'L', - 242 => 'L', - 243 => 'L', - 244 => 'L', - 245 => 'L', - 246 => 'L', - 247 => 'ON', - 248 => 'L', - 249 => 'L', - 250 => 'L', - 251 => 'L', - 252 => 'L', - 253 => 'L', - 254 => 'L', - 255 => 'L', - 256 => 'L', - 257 => 'L', - 258 => 'L', - 259 => 'L', - 260 => 'L', - 261 => 'L', - 262 => 'L', - 263 => 'L', - 264 => 'L', - 265 => 'L', - 266 => 'L', - 267 => 'L', - 268 => 'L', - 269 => 'L', - 270 => 'L', - 271 => 'L', - 272 => 'L', - 273 => 'L', - 274 => 'L', - 275 => 'L', - 276 => 'L', - 277 => 'L', - 278 => 'L', - 279 => 'L', - 280 => 'L', - 281 => 'L', - 282 => 'L', - 283 => 'L', - 284 => 'L', - 285 => 'L', - 286 => 'L', - 287 => 'L', - 288 => 'L', - 289 => 'L', - 290 => 'L', - 291 => 'L', - 292 => 'L', - 293 => 'L', - 294 => 'L', - 295 => 'L', - 296 => 'L', - 297 => 'L', - 298 => 'L', - 299 => 'L', - 300 => 'L', - 301 => 'L', - 302 => 'L', - 303 => 'L', - 304 => 'L', - 305 => 'L', - 306 => 'L', - 307 => 'L', - 308 => 'L', - 309 => 'L', - 310 => 'L', - 311 => 'L', - 312 => 'L', - 313 => 'L', - 314 => 'L', - 315 => 'L', - 316 => 'L', - 317 => 'L', - 318 => 'L', - 319 => 'L', - 320 => 'L', - 321 => 'L', - 322 => 'L', - 323 => 'L', - 324 => 'L', - 325 => 'L', - 326 => 'L', - 327 => 'L', - 328 => 'L', - 329 => 'L', - 330 => 'L', - 331 => 'L', - 332 => 'L', - 333 => 'L', - 334 => 'L', - 335 => 'L', - 336 => 'L', - 337 => 'L', - 338 => 'L', - 339 => 'L', - 340 => 'L', - 341 => 'L', - 342 => 'L', - 343 => 'L', - 344 => 'L', - 345 => 'L', - 346 => 'L', - 347 => 'L', - 348 => 'L', - 349 => 'L', - 350 => 'L', - 351 => 'L', - 352 => 'L', - 353 => 'L', - 354 => 'L', - 355 => 'L', - 356 => 'L', - 357 => 'L', - 358 => 'L', - 359 => 'L', - 360 => 'L', - 361 => 'L', - 362 => 'L', - 363 => 'L', - 364 => 'L', - 365 => 'L', - 366 => 'L', - 367 => 'L', - 368 => 'L', - 369 => 'L', - 370 => 'L', - 371 => 'L', - 372 => 'L', - 373 => 'L', - 374 => 'L', - 375 => 'L', - 376 => 'L', - 377 => 'L', - 378 => 'L', - 379 => 'L', - 380 => 'L', - 381 => 'L', - 382 => 'L', - 383 => 'L', - 384 => 'L', - 385 => 'L', - 386 => 'L', - 387 => 'L', - 388 => 'L', - 389 => 'L', - 390 => 'L', - 391 => 'L', - 392 => 'L', - 393 => 'L', - 394 => 'L', - 395 => 'L', - 396 => 'L', - 397 => 'L', - 398 => 'L', - 399 => 'L', - 400 => 'L', - 401 => 'L', - 402 => 'L', - 403 => 'L', - 404 => 'L', - 405 => 'L', - 406 => 'L', - 407 => 'L', - 408 => 'L', - 409 => 'L', - 410 => 'L', - 411 => 'L', - 412 => 'L', - 413 => 'L', - 414 => 'L', - 415 => 'L', - 416 => 'L', - 417 => 'L', - 418 => 'L', - 419 => 'L', - 420 => 'L', - 421 => 'L', - 422 => 'L', - 423 => 'L', - 424 => 'L', - 425 => 'L', - 426 => 'L', - 427 => 'L', - 428 => 'L', - 429 => 'L', - 430 => 'L', - 431 => 'L', - 432 => 'L', - 433 => 'L', - 434 => 'L', - 435 => 'L', - 436 => 'L', - 437 => 'L', - 438 => 'L', - 439 => 'L', - 440 => 'L', - 441 => 'L', - 442 => 'L', - 443 => 'L', - 444 => 'L', - 445 => 'L', - 446 => 'L', - 447 => 'L', - 448 => 'L', - 449 => 'L', - 450 => 'L', - 451 => 'L', - 452 => 'L', - 453 => 'L', - 454 => 'L', - 455 => 'L', - 456 => 'L', - 457 => 'L', - 458 => 'L', - 459 => 'L', - 460 => 'L', - 461 => 'L', - 462 => 'L', - 463 => 'L', - 464 => 'L', - 465 => 'L', - 466 => 'L', - 467 => 'L', - 468 => 'L', - 469 => 'L', - 470 => 'L', - 471 => 'L', - 472 => 'L', - 473 => 'L', - 474 => 'L', - 475 => 'L', - 476 => 'L', - 477 => 'L', - 478 => 'L', - 479 => 'L', - 480 => 'L', - 481 => 'L', - 482 => 'L', - 483 => 'L', - 484 => 'L', - 485 => 'L', - 486 => 'L', - 487 => 'L', - 488 => 'L', - 489 => 'L', - 490 => 'L', - 491 => 'L', - 492 => 'L', - 493 => 'L', - 494 => 'L', - 495 => 'L', - 496 => 'L', - 497 => 'L', - 498 => 'L', - 499 => 'L', - 500 => 'L', - 501 => 'L', - 502 => 'L', - 503 => 'L', - 504 => 'L', - 505 => 'L', - 506 => 'L', - 507 => 'L', - 508 => 'L', - 509 => 'L', - 510 => 'L', - 511 => 'L', - 512 => 'L', - 513 => 'L', - 514 => 'L', - 515 => 'L', - 516 => 'L', - 517 => 'L', - 518 => 'L', - 519 => 'L', - 520 => 'L', - 521 => 'L', - 522 => 'L', - 523 => 'L', - 524 => 'L', - 525 => 'L', - 526 => 'L', - 527 => 'L', - 528 => 'L', - 529 => 'L', - 530 => 'L', - 531 => 'L', - 532 => 'L', - 533 => 'L', - 534 => 'L', - 535 => 'L', - 536 => 'L', - 537 => 'L', - 538 => 'L', - 539 => 'L', - 540 => 'L', - 541 => 'L', - 542 => 'L', - 543 => 'L', - 544 => 'L', - 545 => 'L', - 546 => 'L', - 547 => 'L', - 548 => 'L', - 549 => 'L', - 550 => 'L', - 551 => 'L', - 552 => 'L', - 553 => 'L', - 554 => 'L', - 555 => 'L', - 556 => 'L', - 557 => 'L', - 558 => 'L', - 559 => 'L', - 560 => 'L', - 561 => 'L', - 562 => 'L', - 563 => 'L', - 564 => 'L', - 565 => 'L', - 566 => 'L', - 567 => 'L', - 568 => 'L', - 569 => 'L', - 570 => 'L', - 571 => 'L', - 572 => 'L', - 573 => 'L', - 574 => 'L', - 575 => 'L', - 576 => 'L', - 577 => 'L', - 578 => 'L', - 579 => 'L', - 580 => 'L', - 581 => 'L', - 582 => 'L', - 583 => 'L', - 584 => 'L', - 585 => 'L', - 586 => 'L', - 587 => 'L', - 588 => 'L', - 589 => 'L', - 590 => 'L', - 591 => 'L', - 592 => 'L', - 593 => 'L', - 594 => 'L', - 595 => 'L', - 596 => 'L', - 597 => 'L', - 598 => 'L', - 599 => 'L', - 600 => 'L', - 601 => 'L', - 602 => 'L', - 603 => 'L', - 604 => 'L', - 605 => 'L', - 606 => 'L', - 607 => 'L', - 608 => 'L', - 609 => 'L', - 610 => 'L', - 611 => 'L', - 612 => 'L', - 613 => 'L', - 614 => 'L', - 615 => 'L', - 616 => 'L', - 617 => 'L', - 618 => 'L', - 619 => 'L', - 620 => 'L', - 621 => 'L', - 622 => 'L', - 623 => 'L', - 624 => 'L', - 625 => 'L', - 626 => 'L', - 627 => 'L', - 628 => 'L', - 629 => 'L', - 630 => 'L', - 631 => 'L', - 632 => 'L', - 633 => 'L', - 634 => 'L', - 635 => 'L', - 636 => 'L', - 637 => 'L', - 638 => 'L', - 639 => 'L', - 640 => 'L', - 641 => 'L', - 642 => 'L', - 643 => 'L', - 644 => 'L', - 645 => 'L', - 646 => 'L', - 647 => 'L', - 648 => 'L', - 649 => 'L', - 650 => 'L', - 651 => 'L', - 652 => 'L', - 653 => 'L', - 654 => 'L', - 655 => 'L', - 656 => 'L', - 657 => 'L', - 658 => 'L', - 659 => 'L', - 660 => 'L', - 661 => 'L', - 662 => 'L', - 663 => 'L', - 664 => 'L', - 665 => 'L', - 666 => 'L', - 667 => 'L', - 668 => 'L', - 669 => 'L', - 670 => 'L', - 671 => 'L', - 672 => 'L', - 673 => 'L', - 674 => 'L', - 675 => 'L', - 676 => 'L', - 677 => 'L', - 678 => 'L', - 679 => 'L', - 680 => 'L', - 681 => 'L', - 682 => 'L', - 683 => 'L', - 684 => 'L', - 685 => 'L', - 686 => 'L', - 687 => 'L', - 688 => 'L', - 689 => 'L', - 690 => 'L', - 691 => 'L', - 692 => 'L', - 693 => 'L', - 694 => 'L', - 695 => 'L', - 696 => 'L', - 697 => 'ON', - 698 => 'ON', - 699 => 'L', - 700 => 'L', - 701 => 'L', - 702 => 'L', - 703 => 'L', - 704 => 'L', - 705 => 'L', - 706 => 'ON', - 707 => 'ON', - 708 => 'ON', - 709 => 'ON', - 710 => 'ON', - 711 => 'ON', - 712 => 'ON', - 713 => 'ON', - 714 => 'ON', - 715 => 'ON', - 716 => 'ON', - 717 => 'ON', - 718 => 'ON', - 719 => 'ON', - 720 => 'L', - 721 => 'L', - 722 => 'ON', - 723 => 'ON', - 724 => 'ON', - 725 => 'ON', - 726 => 'ON', - 727 => 'ON', - 728 => 'ON', - 729 => 'ON', - 730 => 'ON', - 731 => 'ON', - 732 => 'ON', - 733 => 'ON', - 734 => 'ON', - 735 => 'ON', - 736 => 'L', - 737 => 'L', - 738 => 'L', - 739 => 'L', - 740 => 'L', - 741 => 'ON', - 742 => 'ON', - 743 => 'ON', - 744 => 'ON', - 745 => 'ON', - 746 => 'ON', - 747 => 'ON', - 748 => 'ON', - 749 => 'ON', - 750 => 'L', - 751 => 'ON', - 752 => 'ON', - 753 => 'ON', - 754 => 'ON', - 755 => 'ON', - 756 => 'ON', - 757 => 'ON', - 758 => 'ON', - 759 => 'ON', - 760 => 'ON', - 761 => 'ON', - 762 => 'ON', - 763 => 'ON', - 764 => 'ON', - 765 => 'ON', - 766 => 'ON', - 767 => 'ON', - 768 => 'NSM', - 769 => 'NSM', - 770 => 'NSM', - 771 => 'NSM', - 772 => 'NSM', - 773 => 'NSM', - 774 => 'NSM', - 775 => 'NSM', - 776 => 'NSM', - 777 => 'NSM', - 778 => 'NSM', - 779 => 'NSM', - 780 => 'NSM', - 781 => 'NSM', - 782 => 'NSM', - 783 => 'NSM', - 784 => 'NSM', - 785 => 'NSM', - 786 => 'NSM', - 787 => 'NSM', - 788 => 'NSM', - 789 => 'NSM', - 790 => 'NSM', - 791 => 'NSM', - 792 => 'NSM', - 793 => 'NSM', - 794 => 'NSM', - 795 => 'NSM', - 796 => 'NSM', - 797 => 'NSM', - 798 => 'NSM', - 799 => 'NSM', - 800 => 'NSM', - 801 => 'NSM', - 802 => 'NSM', - 803 => 'NSM', - 804 => 'NSM', - 805 => 'NSM', - 806 => 'NSM', - 807 => 'NSM', - 808 => 'NSM', - 809 => 'NSM', - 810 => 'NSM', - 811 => 'NSM', - 812 => 'NSM', - 813 => 'NSM', - 814 => 'NSM', - 815 => 'NSM', - 816 => 'NSM', - 817 => 'NSM', - 818 => 'NSM', - 819 => 'NSM', - 820 => 'NSM', - 821 => 'NSM', - 822 => 'NSM', - 823 => 'NSM', - 824 => 'NSM', - 825 => 'NSM', - 826 => 'NSM', - 827 => 'NSM', - 828 => 'NSM', - 829 => 'NSM', - 830 => 'NSM', - 831 => 'NSM', - 832 => 'NSM', - 833 => 'NSM', - 834 => 'NSM', - 835 => 'NSM', - 836 => 'NSM', - 837 => 'NSM', - 838 => 'NSM', - 839 => 'NSM', - 840 => 'NSM', - 841 => 'NSM', - 842 => 'NSM', - 843 => 'NSM', - 844 => 'NSM', - 845 => 'NSM', - 846 => 'NSM', - 847 => 'NSM', - 848 => 'NSM', - 849 => 'NSM', - 850 => 'NSM', - 851 => 'NSM', - 852 => 'NSM', - 853 => 'NSM', - 854 => 'NSM', - 855 => 'NSM', - 856 => 'NSM', - 857 => 'NSM', - 858 => 'NSM', - 859 => 'NSM', - 860 => 'NSM', - 861 => 'NSM', - 862 => 'NSM', - 863 => 'NSM', - 864 => 'NSM', - 865 => 'NSM', - 866 => 'NSM', - 867 => 'NSM', - 868 => 'NSM', - 869 => 'NSM', - 870 => 'NSM', - 871 => 'NSM', - 872 => 'NSM', - 873 => 'NSM', - 874 => 'NSM', - 875 => 'NSM', - 876 => 'NSM', - 877 => 'NSM', - 878 => 'NSM', - 879 => 'NSM', - 884 => 'ON', - 885 => 'ON', - 890 => 'L', - 891 => 'L', - 892 => 'L', - 893 => 'L', - 894 => 'ON', - 900 => 'ON', - 901 => 'ON', - 902 => 'L', - 903 => 'ON', - 904 => 'L', - 905 => 'L', - 906 => 'L', - 908 => 'L', - 910 => 'L', - 911 => 'L', - 912 => 'L', - 913 => 'L', - 914 => 'L', - 915 => 'L', - 916 => 'L', - 917 => 'L', - 918 => 'L', - 919 => 'L', - 920 => 'L', - 921 => 'L', - 922 => 'L', - 923 => 'L', - 924 => 'L', - 925 => 'L', - 926 => 'L', - 927 => 'L', - 928 => 'L', - 929 => 'L', - 931 => 'L', - 932 => 'L', - 933 => 'L', - 934 => 'L', - 935 => 'L', - 936 => 'L', - 937 => 'L', - 938 => 'L', - 939 => 'L', - 940 => 'L', - 941 => 'L', - 942 => 'L', - 943 => 'L', - 944 => 'L', - 945 => 'L', - 946 => 'L', - 947 => 'L', - 948 => 'L', - 949 => 'L', - 950 => 'L', - 951 => 'L', - 952 => 'L', - 953 => 'L', - 954 => 'L', - 955 => 'L', - 956 => 'L', - 957 => 'L', - 958 => 'L', - 959 => 'L', - 960 => 'L', - 961 => 'L', - 962 => 'L', - 963 => 'L', - 964 => 'L', - 965 => 'L', - 966 => 'L', - 967 => 'L', - 968 => 'L', - 969 => 'L', - 970 => 'L', - 971 => 'L', - 972 => 'L', - 973 => 'L', - 974 => 'L', - 976 => 'L', - 977 => 'L', - 978 => 'L', - 979 => 'L', - 980 => 'L', - 981 => 'L', - 982 => 'L', - 983 => 'L', - 984 => 'L', - 985 => 'L', - 986 => 'L', - 987 => 'L', - 988 => 'L', - 989 => 'L', - 990 => 'L', - 991 => 'L', - 992 => 'L', - 993 => 'L', - 994 => 'L', - 995 => 'L', - 996 => 'L', - 997 => 'L', - 998 => 'L', - 999 => 'L', - 1000 => 'L', - 1001 => 'L', - 1002 => 'L', - 1003 => 'L', - 1004 => 'L', - 1005 => 'L', - 1006 => 'L', - 1007 => 'L', - 1008 => 'L', - 1009 => 'L', - 1010 => 'L', - 1011 => 'L', - 1012 => 'L', - 1013 => 'L', - 1014 => 'ON', - 1015 => 'L', - 1016 => 'L', - 1017 => 'L', - 1018 => 'L', - 1019 => 'L', - 1020 => 'L', - 1021 => 'L', - 1022 => 'L', - 1023 => 'L', - 1024 => 'L', - 1025 => 'L', - 1026 => 'L', - 1027 => 'L', - 1028 => 'L', - 1029 => 'L', - 1030 => 'L', - 1031 => 'L', - 1032 => 'L', - 1033 => 'L', - 1034 => 'L', - 1035 => 'L', - 1036 => 'L', - 1037 => 'L', - 1038 => 'L', - 1039 => 'L', - 1040 => 'L', - 1041 => 'L', - 1042 => 'L', - 1043 => 'L', - 1044 => 'L', - 1045 => 'L', - 1046 => 'L', - 1047 => 'L', - 1048 => 'L', - 1049 => 'L', - 1050 => 'L', - 1051 => 'L', - 1052 => 'L', - 1053 => 'L', - 1054 => 'L', - 1055 => 'L', - 1056 => 'L', - 1057 => 'L', - 1058 => 'L', - 1059 => 'L', - 1060 => 'L', - 1061 => 'L', - 1062 => 'L', - 1063 => 'L', - 1064 => 'L', - 1065 => 'L', - 1066 => 'L', - 1067 => 'L', - 1068 => 'L', - 1069 => 'L', - 1070 => 'L', - 1071 => 'L', - 1072 => 'L', - 1073 => 'L', - 1074 => 'L', - 1075 => 'L', - 1076 => 'L', - 1077 => 'L', - 1078 => 'L', - 1079 => 'L', - 1080 => 'L', - 1081 => 'L', - 1082 => 'L', - 1083 => 'L', - 1084 => 'L', - 1085 => 'L', - 1086 => 'L', - 1087 => 'L', - 1088 => 'L', - 1089 => 'L', - 1090 => 'L', - 1091 => 'L', - 1092 => 'L', - 1093 => 'L', - 1094 => 'L', - 1095 => 'L', - 1096 => 'L', - 1097 => 'L', - 1098 => 'L', - 1099 => 'L', - 1100 => 'L', - 1101 => 'L', - 1102 => 'L', - 1103 => 'L', - 1104 => 'L', - 1105 => 'L', - 1106 => 'L', - 1107 => 'L', - 1108 => 'L', - 1109 => 'L', - 1110 => 'L', - 1111 => 'L', - 1112 => 'L', - 1113 => 'L', - 1114 => 'L', - 1115 => 'L', - 1116 => 'L', - 1117 => 'L', - 1118 => 'L', - 1119 => 'L', - 1120 => 'L', - 1121 => 'L', - 1122 => 'L', - 1123 => 'L', - 1124 => 'L', - 1125 => 'L', - 1126 => 'L', - 1127 => 'L', - 1128 => 'L', - 1129 => 'L', - 1130 => 'L', - 1131 => 'L', - 1132 => 'L', - 1133 => 'L', - 1134 => 'L', - 1135 => 'L', - 1136 => 'L', - 1137 => 'L', - 1138 => 'L', - 1139 => 'L', - 1140 => 'L', - 1141 => 'L', - 1142 => 'L', - 1143 => 'L', - 1144 => 'L', - 1145 => 'L', - 1146 => 'L', - 1147 => 'L', - 1148 => 'L', - 1149 => 'L', - 1150 => 'L', - 1151 => 'L', - 1152 => 'L', - 1153 => 'L', - 1154 => 'L', - 1155 => 'NSM', - 1156 => 'NSM', - 1157 => 'NSM', - 1158 => 'NSM', - 1160 => 'NSM', - 1161 => 'NSM', - 1162 => 'L', - 1163 => 'L', - 1164 => 'L', - 1165 => 'L', - 1166 => 'L', - 1167 => 'L', - 1168 => 'L', - 1169 => 'L', - 1170 => 'L', - 1171 => 'L', - 1172 => 'L', - 1173 => 'L', - 1174 => 'L', - 1175 => 'L', - 1176 => 'L', - 1177 => 'L', - 1178 => 'L', - 1179 => 'L', - 1180 => 'L', - 1181 => 'L', - 1182 => 'L', - 1183 => 'L', - 1184 => 'L', - 1185 => 'L', - 1186 => 'L', - 1187 => 'L', - 1188 => 'L', - 1189 => 'L', - 1190 => 'L', - 1191 => 'L', - 1192 => 'L', - 1193 => 'L', - 1194 => 'L', - 1195 => 'L', - 1196 => 'L', - 1197 => 'L', - 1198 => 'L', - 1199 => 'L', - 1200 => 'L', - 1201 => 'L', - 1202 => 'L', - 1203 => 'L', - 1204 => 'L', - 1205 => 'L', - 1206 => 'L', - 1207 => 'L', - 1208 => 'L', - 1209 => 'L', - 1210 => 'L', - 1211 => 'L', - 1212 => 'L', - 1213 => 'L', - 1214 => 'L', - 1215 => 'L', - 1216 => 'L', - 1217 => 'L', - 1218 => 'L', - 1219 => 'L', - 1220 => 'L', - 1221 => 'L', - 1222 => 'L', - 1223 => 'L', - 1224 => 'L', - 1225 => 'L', - 1226 => 'L', - 1227 => 'L', - 1228 => 'L', - 1229 => 'L', - 1230 => 'L', - 1231 => 'L', - 1232 => 'L', - 1233 => 'L', - 1234 => 'L', - 1235 => 'L', - 1236 => 'L', - 1237 => 'L', - 1238 => 'L', - 1239 => 'L', - 1240 => 'L', - 1241 => 'L', - 1242 => 'L', - 1243 => 'L', - 1244 => 'L', - 1245 => 'L', - 1246 => 'L', - 1247 => 'L', - 1248 => 'L', - 1249 => 'L', - 1250 => 'L', - 1251 => 'L', - 1252 => 'L', - 1253 => 'L', - 1254 => 'L', - 1255 => 'L', - 1256 => 'L', - 1257 => 'L', - 1258 => 'L', - 1259 => 'L', - 1260 => 'L', - 1261 => 'L', - 1262 => 'L', - 1263 => 'L', - 1264 => 'L', - 1265 => 'L', - 1266 => 'L', - 1267 => 'L', - 1268 => 'L', - 1269 => 'L', - 1270 => 'L', - 1271 => 'L', - 1272 => 'L', - 1273 => 'L', - 1274 => 'L', - 1275 => 'L', - 1276 => 'L', - 1277 => 'L', - 1278 => 'L', - 1279 => 'L', - 1280 => 'L', - 1281 => 'L', - 1282 => 'L', - 1283 => 'L', - 1284 => 'L', - 1285 => 'L', - 1286 => 'L', - 1287 => 'L', - 1288 => 'L', - 1289 => 'L', - 1290 => 'L', - 1291 => 'L', - 1292 => 'L', - 1293 => 'L', - 1294 => 'L', - 1295 => 'L', - 1296 => 'L', - 1297 => 'L', - 1298 => 'L', - 1299 => 'L', - 1329 => 'L', - 1330 => 'L', - 1331 => 'L', - 1332 => 'L', - 1333 => 'L', - 1334 => 'L', - 1335 => 'L', - 1336 => 'L', - 1337 => 'L', - 1338 => 'L', - 1339 => 'L', - 1340 => 'L', - 1341 => 'L', - 1342 => 'L', - 1343 => 'L', - 1344 => 'L', - 1345 => 'L', - 1346 => 'L', - 1347 => 'L', - 1348 => 'L', - 1349 => 'L', - 1350 => 'L', - 1351 => 'L', - 1352 => 'L', - 1353 => 'L', - 1354 => 'L', - 1355 => 'L', - 1356 => 'L', - 1357 => 'L', - 1358 => 'L', - 1359 => 'L', - 1360 => 'L', - 1361 => 'L', - 1362 => 'L', - 1363 => 'L', - 1364 => 'L', - 1365 => 'L', - 1366 => 'L', - 1369 => 'L', - 1370 => 'L', - 1371 => 'L', - 1372 => 'L', - 1373 => 'L', - 1374 => 'L', - 1375 => 'L', - 1377 => 'L', - 1378 => 'L', - 1379 => 'L', - 1380 => 'L', - 1381 => 'L', - 1382 => 'L', - 1383 => 'L', - 1384 => 'L', - 1385 => 'L', - 1386 => 'L', - 1387 => 'L', - 1388 => 'L', - 1389 => 'L', - 1390 => 'L', - 1391 => 'L', - 1392 => 'L', - 1393 => 'L', - 1394 => 'L', - 1395 => 'L', - 1396 => 'L', - 1397 => 'L', - 1398 => 'L', - 1399 => 'L', - 1400 => 'L', - 1401 => 'L', - 1402 => 'L', - 1403 => 'L', - 1404 => 'L', - 1405 => 'L', - 1406 => 'L', - 1407 => 'L', - 1408 => 'L', - 1409 => 'L', - 1410 => 'L', - 1411 => 'L', - 1412 => 'L', - 1413 => 'L', - 1414 => 'L', - 1415 => 'L', - 1417 => 'L', - 1418 => 'ON', - 1425 => 'NSM', - 1426 => 'NSM', - 1427 => 'NSM', - 1428 => 'NSM', - 1429 => 'NSM', - 1430 => 'NSM', - 1431 => 'NSM', - 1432 => 'NSM', - 1433 => 'NSM', - 1434 => 'NSM', - 1435 => 'NSM', - 1436 => 'NSM', - 1437 => 'NSM', - 1438 => 'NSM', - 1439 => 'NSM', - 1440 => 'NSM', - 1441 => 'NSM', - 1442 => 'NSM', - 1443 => 'NSM', - 1444 => 'NSM', - 1445 => 'NSM', - 1446 => 'NSM', - 1447 => 'NSM', - 1448 => 'NSM', - 1449 => 'NSM', - 1450 => 'NSM', - 1451 => 'NSM', - 1452 => 'NSM', - 1453 => 'NSM', - 1454 => 'NSM', - 1455 => 'NSM', - 1456 => 'NSM', - 1457 => 'NSM', - 1458 => 'NSM', - 1459 => 'NSM', - 1460 => 'NSM', - 1461 => 'NSM', - 1462 => 'NSM', - 1463 => 'NSM', - 1464 => 'NSM', - 1465 => 'NSM', - 1466 => 'NSM', - 1467 => 'NSM', - 1468 => 'NSM', - 1469 => 'NSM', - 1470 => 'R', - 1471 => 'NSM', - 1472 => 'R', - 1473 => 'NSM', - 1474 => 'NSM', - 1475 => 'R', - 1476 => 'NSM', - 1477 => 'NSM', - 1478 => 'R', - 1479 => 'NSM', - 1488 => 'R', - 1489 => 'R', - 1490 => 'R', - 1491 => 'R', - 1492 => 'R', - 1493 => 'R', - 1494 => 'R', - 1495 => 'R', - 1496 => 'R', - 1497 => 'R', - 1498 => 'R', - 1499 => 'R', - 1500 => 'R', - 1501 => 'R', - 1502 => 'R', - 1503 => 'R', - 1504 => 'R', - 1505 => 'R', - 1506 => 'R', - 1507 => 'R', - 1508 => 'R', - 1509 => 'R', - 1510 => 'R', - 1511 => 'R', - 1512 => 'R', - 1513 => 'R', - 1514 => 'R', - 1520 => 'R', - 1521 => 'R', - 1522 => 'R', - 1523 => 'R', - 1524 => 'R', - 1536 => 'AL', - 1537 => 'AL', - 1538 => 'AL', - 1539 => 'AL', - 1547 => 'AL', - 1548 => 'CS', - 1549 => 'AL', - 1550 => 'ON', - 1551 => 'ON', - 1552 => 'NSM', - 1553 => 'NSM', - 1554 => 'NSM', - 1555 => 'NSM', - 1556 => 'NSM', - 1557 => 'NSM', - 1563 => 'AL', - 1566 => 'AL', - 1567 => 'AL', - 1569 => 'AL', - 1570 => 'AL', - 1571 => 'AL', - 1572 => 'AL', - 1573 => 'AL', - 1574 => 'AL', - 1575 => 'AL', - 1576 => 'AL', - 1577 => 'AL', - 1578 => 'AL', - 1579 => 'AL', - 1580 => 'AL', - 1581 => 'AL', - 1582 => 'AL', - 1583 => 'AL', - 1584 => 'AL', - 1585 => 'AL', - 1586 => 'AL', - 1587 => 'AL', - 1588 => 'AL', - 1589 => 'AL', - 1590 => 'AL', - 1591 => 'AL', - 1592 => 'AL', - 1593 => 'AL', - 1594 => 'AL', - 1600 => 'AL', - 1601 => 'AL', - 1602 => 'AL', - 1603 => 'AL', - 1604 => 'AL', - 1605 => 'AL', - 1606 => 'AL', - 1607 => 'AL', - 1608 => 'AL', - 1609 => 'AL', - 1610 => 'AL', - 1611 => 'NSM', - 1612 => 'NSM', - 1613 => 'NSM', - 1614 => 'NSM', - 1615 => 'NSM', - 1616 => 'NSM', - 1617 => 'NSM', - 1618 => 'NSM', - 1619 => 'NSM', - 1620 => 'NSM', - 1621 => 'NSM', - 1622 => 'NSM', - 1623 => 'NSM', - 1624 => 'NSM', - 1625 => 'NSM', - 1626 => 'NSM', - 1627 => 'NSM', - 1628 => 'NSM', - 1629 => 'NSM', - 1630 => 'NSM', - 1632 => 'AN', - 1633 => 'AN', - 1634 => 'AN', - 1635 => 'AN', - 1636 => 'AN', - 1637 => 'AN', - 1638 => 'AN', - 1639 => 'AN', - 1640 => 'AN', - 1641 => 'AN', - 1642 => 'ET', - 1643 => 'AN', - 1644 => 'AN', - 1645 => 'AL', - 1646 => 'AL', - 1647 => 'AL', - 1648 => 'NSM', - 1649 => 'AL', - 1650 => 'AL', - 1651 => 'AL', - 1652 => 'AL', - 1653 => 'AL', - 1654 => 'AL', - 1655 => 'AL', - 1656 => 'AL', - 1657 => 'AL', - 1658 => 'AL', - 1659 => 'AL', - 1660 => 'AL', - 1661 => 'AL', - 1662 => 'AL', - 1663 => 'AL', - 1664 => 'AL', - 1665 => 'AL', - 1666 => 'AL', - 1667 => 'AL', - 1668 => 'AL', - 1669 => 'AL', - 1670 => 'AL', - 1671 => 'AL', - 1672 => 'AL', - 1673 => 'AL', - 1674 => 'AL', - 1675 => 'AL', - 1676 => 'AL', - 1677 => 'AL', - 1678 => 'AL', - 1679 => 'AL', - 1680 => 'AL', - 1681 => 'AL', - 1682 => 'AL', - 1683 => 'AL', - 1684 => 'AL', - 1685 => 'AL', - 1686 => 'AL', - 1687 => 'AL', - 1688 => 'AL', - 1689 => 'AL', - 1690 => 'AL', - 1691 => 'AL', - 1692 => 'AL', - 1693 => 'AL', - 1694 => 'AL', - 1695 => 'AL', - 1696 => 'AL', - 1697 => 'AL', - 1698 => 'AL', - 1699 => 'AL', - 1700 => 'AL', - 1701 => 'AL', - 1702 => 'AL', - 1703 => 'AL', - 1704 => 'AL', - 1705 => 'AL', - 1706 => 'AL', - 1707 => 'AL', - 1708 => 'AL', - 1709 => 'AL', - 1710 => 'AL', - 1711 => 'AL', - 1712 => 'AL', - 1713 => 'AL', - 1714 => 'AL', - 1715 => 'AL', - 1716 => 'AL', - 1717 => 'AL', - 1718 => 'AL', - 1719 => 'AL', - 1720 => 'AL', - 1721 => 'AL', - 1722 => 'AL', - 1723 => 'AL', - 1724 => 'AL', - 1725 => 'AL', - 1726 => 'AL', - 1727 => 'AL', - 1728 => 'AL', - 1729 => 'AL', - 1730 => 'AL', - 1731 => 'AL', - 1732 => 'AL', - 1733 => 'AL', - 1734 => 'AL', - 1735 => 'AL', - 1736 => 'AL', - 1737 => 'AL', - 1738 => 'AL', - 1739 => 'AL', - 1740 => 'AL', - 1741 => 'AL', - 1742 => 'AL', - 1743 => 'AL', - 1744 => 'AL', - 1745 => 'AL', - 1746 => 'AL', - 1747 => 'AL', - 1748 => 'AL', - 1749 => 'AL', - 1750 => 'NSM', - 1751 => 'NSM', - 1752 => 'NSM', - 1753 => 'NSM', - 1754 => 'NSM', - 1755 => 'NSM', - 1756 => 'NSM', - 1757 => 'AL', - 1758 => 'NSM', - 1759 => 'NSM', - 1760 => 'NSM', - 1761 => 'NSM', - 1762 => 'NSM', - 1763 => 'NSM', - 1764 => 'NSM', - 1765 => 'AL', - 1766 => 'AL', - 1767 => 'NSM', - 1768 => 'NSM', - 1769 => 'ON', - 1770 => 'NSM', - 1771 => 'NSM', - 1772 => 'NSM', - 1773 => 'NSM', - 1774 => 'AL', - 1775 => 'AL', - 1776 => 'EN', - 1777 => 'EN', - 1778 => 'EN', - 1779 => 'EN', - 1780 => 'EN', - 1781 => 'EN', - 1782 => 'EN', - 1783 => 'EN', - 1784 => 'EN', - 1785 => 'EN', - 1786 => 'AL', - 1787 => 'AL', - 1788 => 'AL', - 1789 => 'AL', - 1790 => 'AL', - 1791 => 'AL', - 1792 => 'AL', - 1793 => 'AL', - 1794 => 'AL', - 1795 => 'AL', - 1796 => 'AL', - 1797 => 'AL', - 1798 => 'AL', - 1799 => 'AL', - 1800 => 'AL', - 1801 => 'AL', - 1802 => 'AL', - 1803 => 'AL', - 1804 => 'AL', - 1805 => 'AL', - 1807 => 'BN', - 1808 => 'AL', - 1809 => 'NSM', - 1810 => 'AL', - 1811 => 'AL', - 1812 => 'AL', - 1813 => 'AL', - 1814 => 'AL', - 1815 => 'AL', - 1816 => 'AL', - 1817 => 'AL', - 1818 => 'AL', - 1819 => 'AL', - 1820 => 'AL', - 1821 => 'AL', - 1822 => 'AL', - 1823 => 'AL', - 1824 => 'AL', - 1825 => 'AL', - 1826 => 'AL', - 1827 => 'AL', - 1828 => 'AL', - 1829 => 'AL', - 1830 => 'AL', - 1831 => 'AL', - 1832 => 'AL', - 1833 => 'AL', - 1834 => 'AL', - 1835 => 'AL', - 1836 => 'AL', - 1837 => 'AL', - 1838 => 'AL', - 1839 => 'AL', - 1840 => 'NSM', - 1841 => 'NSM', - 1842 => 'NSM', - 1843 => 'NSM', - 1844 => 'NSM', - 1845 => 'NSM', - 1846 => 'NSM', - 1847 => 'NSM', - 1848 => 'NSM', - 1849 => 'NSM', - 1850 => 'NSM', - 1851 => 'NSM', - 1852 => 'NSM', - 1853 => 'NSM', - 1854 => 'NSM', - 1855 => 'NSM', - 1856 => 'NSM', - 1857 => 'NSM', - 1858 => 'NSM', - 1859 => 'NSM', - 1860 => 'NSM', - 1861 => 'NSM', - 1862 => 'NSM', - 1863 => 'NSM', - 1864 => 'NSM', - 1865 => 'NSM', - 1866 => 'NSM', - 1869 => 'AL', - 1870 => 'AL', - 1871 => 'AL', - 1872 => 'AL', - 1873 => 'AL', - 1874 => 'AL', - 1875 => 'AL', - 1876 => 'AL', - 1877 => 'AL', - 1878 => 'AL', - 1879 => 'AL', - 1880 => 'AL', - 1881 => 'AL', - 1882 => 'AL', - 1883 => 'AL', - 1884 => 'AL', - 1885 => 'AL', - 1886 => 'AL', - 1887 => 'AL', - 1888 => 'AL', - 1889 => 'AL', - 1890 => 'AL', - 1891 => 'AL', - 1892 => 'AL', - 1893 => 'AL', - 1894 => 'AL', - 1895 => 'AL', - 1896 => 'AL', - 1897 => 'AL', - 1898 => 'AL', - 1899 => 'AL', - 1900 => 'AL', - 1901 => 'AL', - 1920 => 'AL', - 1921 => 'AL', - 1922 => 'AL', - 1923 => 'AL', - 1924 => 'AL', - 1925 => 'AL', - 1926 => 'AL', - 1927 => 'AL', - 1928 => 'AL', - 1929 => 'AL', - 1930 => 'AL', - 1931 => 'AL', - 1932 => 'AL', - 1933 => 'AL', - 1934 => 'AL', - 1935 => 'AL', - 1936 => 'AL', - 1937 => 'AL', - 1938 => 'AL', - 1939 => 'AL', - 1940 => 'AL', - 1941 => 'AL', - 1942 => 'AL', - 1943 => 'AL', - 1944 => 'AL', - 1945 => 'AL', - 1946 => 'AL', - 1947 => 'AL', - 1948 => 'AL', - 1949 => 'AL', - 1950 => 'AL', - 1951 => 'AL', - 1952 => 'AL', - 1953 => 'AL', - 1954 => 'AL', - 1955 => 'AL', - 1956 => 'AL', - 1957 => 'AL', - 1958 => 'NSM', - 1959 => 'NSM', - 1960 => 'NSM', - 1961 => 'NSM', - 1962 => 'NSM', - 1963 => 'NSM', - 1964 => 'NSM', - 1965 => 'NSM', - 1966 => 'NSM', - 1967 => 'NSM', - 1968 => 'NSM', - 1969 => 'AL', - 1984 => 'R', - 1985 => 'R', - 1986 => 'R', - 1987 => 'R', - 1988 => 'R', - 1989 => 'R', - 1990 => 'R', - 1991 => 'R', - 1992 => 'R', - 1993 => 'R', - 1994 => 'R', - 1995 => 'R', - 1996 => 'R', - 1997 => 'R', - 1998 => 'R', - 1999 => 'R', - 2000 => 'R', - 2001 => 'R', - 2002 => 'R', - 2003 => 'R', - 2004 => 'R', - 2005 => 'R', - 2006 => 'R', - 2007 => 'R', - 2008 => 'R', - 2009 => 'R', - 2010 => 'R', - 2011 => 'R', - 2012 => 'R', - 2013 => 'R', - 2014 => 'R', - 2015 => 'R', - 2016 => 'R', - 2017 => 'R', - 2018 => 'R', - 2019 => 'R', - 2020 => 'R', - 2021 => 'R', - 2022 => 'R', - 2023 => 'R', - 2024 => 'R', - 2025 => 'R', - 2026 => 'R', - 2027 => 'NSM', - 2028 => 'NSM', - 2029 => 'NSM', - 2030 => 'NSM', - 2031 => 'NSM', - 2032 => 'NSM', - 2033 => 'NSM', - 2034 => 'NSM', - 2035 => 'NSM', - 2036 => 'R', - 2037 => 'R', - 2038 => 'ON', - 2039 => 'ON', - 2040 => 'ON', - 2041 => 'ON', - 2042 => 'R', - 2305 => 'NSM', - 2306 => 'NSM', - 2307 => 'L', - 2308 => 'L', - 2309 => 'L', - 2310 => 'L', - 2311 => 'L', - 2312 => 'L', - 2313 => 'L', - 2314 => 'L', - 2315 => 'L', - 2316 => 'L', - 2317 => 'L', - 2318 => 'L', - 2319 => 'L', - 2320 => 'L', - 2321 => 'L', - 2322 => 'L', - 2323 => 'L', - 2324 => 'L', - 2325 => 'L', - 2326 => 'L', - 2327 => 'L', - 2328 => 'L', - 2329 => 'L', - 2330 => 'L', - 2331 => 'L', - 2332 => 'L', - 2333 => 'L', - 2334 => 'L', - 2335 => 'L', - 2336 => 'L', - 2337 => 'L', - 2338 => 'L', - 2339 => 'L', - 2340 => 'L', - 2341 => 'L', - 2342 => 'L', - 2343 => 'L', - 2344 => 'L', - 2345 => 'L', - 2346 => 'L', - 2347 => 'L', - 2348 => 'L', - 2349 => 'L', - 2350 => 'L', - 2351 => 'L', - 2352 => 'L', - 2353 => 'L', - 2354 => 'L', - 2355 => 'L', - 2356 => 'L', - 2357 => 'L', - 2358 => 'L', - 2359 => 'L', - 2360 => 'L', - 2361 => 'L', - 2364 => 'NSM', - 2365 => 'L', - 2366 => 'L', - 2367 => 'L', - 2368 => 'L', - 2369 => 'NSM', - 2370 => 'NSM', - 2371 => 'NSM', - 2372 => 'NSM', - 2373 => 'NSM', - 2374 => 'NSM', - 2375 => 'NSM', - 2376 => 'NSM', - 2377 => 'L', - 2378 => 'L', - 2379 => 'L', - 2380 => 'L', - 2381 => 'NSM', - 2384 => 'L', - 2385 => 'NSM', - 2386 => 'NSM', - 2387 => 'NSM', - 2388 => 'NSM', - 2392 => 'L', - 2393 => 'L', - 2394 => 'L', - 2395 => 'L', - 2396 => 'L', - 2397 => 'L', - 2398 => 'L', - 2399 => 'L', - 2400 => 'L', - 2401 => 'L', - 2402 => 'NSM', - 2403 => 'NSM', - 2404 => 'L', - 2405 => 'L', - 2406 => 'L', - 2407 => 'L', - 2408 => 'L', - 2409 => 'L', - 2410 => 'L', - 2411 => 'L', - 2412 => 'L', - 2413 => 'L', - 2414 => 'L', - 2415 => 'L', - 2416 => 'L', - 2427 => 'L', - 2428 => 'L', - 2429 => 'L', - 2430 => 'L', - 2431 => 'L', - 2433 => 'NSM', - 2434 => 'L', - 2435 => 'L', - 2437 => 'L', - 2438 => 'L', - 2439 => 'L', - 2440 => 'L', - 2441 => 'L', - 2442 => 'L', - 2443 => 'L', - 2444 => 'L', - 2447 => 'L', - 2448 => 'L', - 2451 => 'L', - 2452 => 'L', - 2453 => 'L', - 2454 => 'L', - 2455 => 'L', - 2456 => 'L', - 2457 => 'L', - 2458 => 'L', - 2459 => 'L', - 2460 => 'L', - 2461 => 'L', - 2462 => 'L', - 2463 => 'L', - 2464 => 'L', - 2465 => 'L', - 2466 => 'L', - 2467 => 'L', - 2468 => 'L', - 2469 => 'L', - 2470 => 'L', - 2471 => 'L', - 2472 => 'L', - 2474 => 'L', - 2475 => 'L', - 2476 => 'L', - 2477 => 'L', - 2478 => 'L', - 2479 => 'L', - 2480 => 'L', - 2482 => 'L', - 2486 => 'L', - 2487 => 'L', - 2488 => 'L', - 2489 => 'L', - 2492 => 'NSM', - 2493 => 'L', - 2494 => 'L', - 2495 => 'L', - 2496 => 'L', - 2497 => 'NSM', - 2498 => 'NSM', - 2499 => 'NSM', - 2500 => 'NSM', - 2503 => 'L', - 2504 => 'L', - 2507 => 'L', - 2508 => 'L', - 2509 => 'NSM', - 2510 => 'L', - 2519 => 'L', - 2524 => 'L', - 2525 => 'L', - 2527 => 'L', - 2528 => 'L', - 2529 => 'L', - 2530 => 'NSM', - 2531 => 'NSM', - 2534 => 'L', - 2535 => 'L', - 2536 => 'L', - 2537 => 'L', - 2538 => 'L', - 2539 => 'L', - 2540 => 'L', - 2541 => 'L', - 2542 => 'L', - 2543 => 'L', - 2544 => 'L', - 2545 => 'L', - 2546 => 'ET', - 2547 => 'ET', - 2548 => 'L', - 2549 => 'L', - 2550 => 'L', - 2551 => 'L', - 2552 => 'L', - 2553 => 'L', - 2554 => 'L', - 2561 => 'NSM', - 2562 => 'NSM', - 2563 => 'L', - 2565 => 'L', - 2566 => 'L', - 2567 => 'L', - 2568 => 'L', - 2569 => 'L', - 2570 => 'L', - 2575 => 'L', - 2576 => 'L', - 2579 => 'L', - 2580 => 'L', - 2581 => 'L', - 2582 => 'L', - 2583 => 'L', - 2584 => 'L', - 2585 => 'L', - 2586 => 'L', - 2587 => 'L', - 2588 => 'L', - 2589 => 'L', - 2590 => 'L', - 2591 => 'L', - 2592 => 'L', - 2593 => 'L', - 2594 => 'L', - 2595 => 'L', - 2596 => 'L', - 2597 => 'L', - 2598 => 'L', - 2599 => 'L', - 2600 => 'L', - 2602 => 'L', - 2603 => 'L', - 2604 => 'L', - 2605 => 'L', - 2606 => 'L', - 2607 => 'L', - 2608 => 'L', - 2610 => 'L', - 2611 => 'L', - 2613 => 'L', - 2614 => 'L', - 2616 => 'L', - 2617 => 'L', - 2620 => 'NSM', - 2622 => 'L', - 2623 => 'L', - 2624 => 'L', - 2625 => 'NSM', - 2626 => 'NSM', - 2631 => 'NSM', - 2632 => 'NSM', - 2635 => 'NSM', - 2636 => 'NSM', - 2637 => 'NSM', - 2649 => 'L', - 2650 => 'L', - 2651 => 'L', - 2652 => 'L', - 2654 => 'L', - 2662 => 'L', - 2663 => 'L', - 2664 => 'L', - 2665 => 'L', - 2666 => 'L', - 2667 => 'L', - 2668 => 'L', - 2669 => 'L', - 2670 => 'L', - 2671 => 'L', - 2672 => 'NSM', - 2673 => 'NSM', - 2674 => 'L', - 2675 => 'L', - 2676 => 'L', - 2689 => 'NSM', - 2690 => 'NSM', - 2691 => 'L', - 2693 => 'L', - 2694 => 'L', - 2695 => 'L', - 2696 => 'L', - 2697 => 'L', - 2698 => 'L', - 2699 => 'L', - 2700 => 'L', - 2701 => 'L', - 2703 => 'L', - 2704 => 'L', - 2705 => 'L', - 2707 => 'L', - 2708 => 'L', - 2709 => 'L', - 2710 => 'L', - 2711 => 'L', - 2712 => 'L', - 2713 => 'L', - 2714 => 'L', - 2715 => 'L', - 2716 => 'L', - 2717 => 'L', - 2718 => 'L', - 2719 => 'L', - 2720 => 'L', - 2721 => 'L', - 2722 => 'L', - 2723 => 'L', - 2724 => 'L', - 2725 => 'L', - 2726 => 'L', - 2727 => 'L', - 2728 => 'L', - 2730 => 'L', - 2731 => 'L', - 2732 => 'L', - 2733 => 'L', - 2734 => 'L', - 2735 => 'L', - 2736 => 'L', - 2738 => 'L', - 2739 => 'L', - 2741 => 'L', - 2742 => 'L', - 2743 => 'L', - 2744 => 'L', - 2745 => 'L', - 2748 => 'NSM', - 2749 => 'L', - 2750 => 'L', - 2751 => 'L', - 2752 => 'L', - 2753 => 'NSM', - 2754 => 'NSM', - 2755 => 'NSM', - 2756 => 'NSM', - 2757 => 'NSM', - 2759 => 'NSM', - 2760 => 'NSM', - 2761 => 'L', - 2763 => 'L', - 2764 => 'L', - 2765 => 'NSM', - 2768 => 'L', - 2784 => 'L', - 2785 => 'L', - 2786 => 'NSM', - 2787 => 'NSM', - 2790 => 'L', - 2791 => 'L', - 2792 => 'L', - 2793 => 'L', - 2794 => 'L', - 2795 => 'L', - 2796 => 'L', - 2797 => 'L', - 2798 => 'L', - 2799 => 'L', - 2801 => 'ET', - 2817 => 'NSM', - 2818 => 'L', - 2819 => 'L', - 2821 => 'L', - 2822 => 'L', - 2823 => 'L', - 2824 => 'L', - 2825 => 'L', - 2826 => 'L', - 2827 => 'L', - 2828 => 'L', - 2831 => 'L', - 2832 => 'L', - 2835 => 'L', - 2836 => 'L', - 2837 => 'L', - 2838 => 'L', - 2839 => 'L', - 2840 => 'L', - 2841 => 'L', - 2842 => 'L', - 2843 => 'L', - 2844 => 'L', - 2845 => 'L', - 2846 => 'L', - 2847 => 'L', - 2848 => 'L', - 2849 => 'L', - 2850 => 'L', - 2851 => 'L', - 2852 => 'L', - 2853 => 'L', - 2854 => 'L', - 2855 => 'L', - 2856 => 'L', - 2858 => 'L', - 2859 => 'L', - 2860 => 'L', - 2861 => 'L', - 2862 => 'L', - 2863 => 'L', - 2864 => 'L', - 2866 => 'L', - 2867 => 'L', - 2869 => 'L', - 2870 => 'L', - 2871 => 'L', - 2872 => 'L', - 2873 => 'L', - 2876 => 'NSM', - 2877 => 'L', - 2878 => 'L', - 2879 => 'NSM', - 2880 => 'L', - 2881 => 'NSM', - 2882 => 'NSM', - 2883 => 'NSM', - 2887 => 'L', - 2888 => 'L', - 2891 => 'L', - 2892 => 'L', - 2893 => 'NSM', - 2902 => 'NSM', - 2903 => 'L', - 2908 => 'L', - 2909 => 'L', - 2911 => 'L', - 2912 => 'L', - 2913 => 'L', - 2918 => 'L', - 2919 => 'L', - 2920 => 'L', - 2921 => 'L', - 2922 => 'L', - 2923 => 'L', - 2924 => 'L', - 2925 => 'L', - 2926 => 'L', - 2927 => 'L', - 2928 => 'L', - 2929 => 'L', - 2946 => 'NSM', - 2947 => 'L', - 2949 => 'L', - 2950 => 'L', - 2951 => 'L', - 2952 => 'L', - 2953 => 'L', - 2954 => 'L', - 2958 => 'L', - 2959 => 'L', - 2960 => 'L', - 2962 => 'L', - 2963 => 'L', - 2964 => 'L', - 2965 => 'L', - 2969 => 'L', - 2970 => 'L', - 2972 => 'L', - 2974 => 'L', - 2975 => 'L', - 2979 => 'L', - 2980 => 'L', - 2984 => 'L', - 2985 => 'L', - 2986 => 'L', - 2990 => 'L', - 2991 => 'L', - 2992 => 'L', - 2993 => 'L', - 2994 => 'L', - 2995 => 'L', - 2996 => 'L', - 2997 => 'L', - 2998 => 'L', - 2999 => 'L', - 3000 => 'L', - 3001 => 'L', - 3006 => 'L', - 3007 => 'L', - 3008 => 'NSM', - 3009 => 'L', - 3010 => 'L', - 3014 => 'L', - 3015 => 'L', - 3016 => 'L', - 3018 => 'L', - 3019 => 'L', - 3020 => 'L', - 3021 => 'NSM', - 3031 => 'L', - 3046 => 'L', - 3047 => 'L', - 3048 => 'L', - 3049 => 'L', - 3050 => 'L', - 3051 => 'L', - 3052 => 'L', - 3053 => 'L', - 3054 => 'L', - 3055 => 'L', - 3056 => 'L', - 3057 => 'L', - 3058 => 'L', - 3059 => 'ON', - 3060 => 'ON', - 3061 => 'ON', - 3062 => 'ON', - 3063 => 'ON', - 3064 => 'ON', - 3065 => 'ET', - 3066 => 'ON', - 3073 => 'L', - 3074 => 'L', - 3075 => 'L', - 3077 => 'L', - 3078 => 'L', - 3079 => 'L', - 3080 => 'L', - 3081 => 'L', - 3082 => 'L', - 3083 => 'L', - 3084 => 'L', - 3086 => 'L', - 3087 => 'L', - 3088 => 'L', - 3090 => 'L', - 3091 => 'L', - 3092 => 'L', - 3093 => 'L', - 3094 => 'L', - 3095 => 'L', - 3096 => 'L', - 3097 => 'L', - 3098 => 'L', - 3099 => 'L', - 3100 => 'L', - 3101 => 'L', - 3102 => 'L', - 3103 => 'L', - 3104 => 'L', - 3105 => 'L', - 3106 => 'L', - 3107 => 'L', - 3108 => 'L', - 3109 => 'L', - 3110 => 'L', - 3111 => 'L', - 3112 => 'L', - 3114 => 'L', - 3115 => 'L', - 3116 => 'L', - 3117 => 'L', - 3118 => 'L', - 3119 => 'L', - 3120 => 'L', - 3121 => 'L', - 3122 => 'L', - 3123 => 'L', - 3125 => 'L', - 3126 => 'L', - 3127 => 'L', - 3128 => 'L', - 3129 => 'L', - 3134 => 'NSM', - 3135 => 'NSM', - 3136 => 'NSM', - 3137 => 'L', - 3138 => 'L', - 3139 => 'L', - 3140 => 'L', - 3142 => 'NSM', - 3143 => 'NSM', - 3144 => 'NSM', - 3146 => 'NSM', - 3147 => 'NSM', - 3148 => 'NSM', - 3149 => 'NSM', - 3157 => 'NSM', - 3158 => 'NSM', - 3168 => 'L', - 3169 => 'L', - 3174 => 'L', - 3175 => 'L', - 3176 => 'L', - 3177 => 'L', - 3178 => 'L', - 3179 => 'L', - 3180 => 'L', - 3181 => 'L', - 3182 => 'L', - 3183 => 'L', - 3202 => 'L', - 3203 => 'L', - 3205 => 'L', - 3206 => 'L', - 3207 => 'L', - 3208 => 'L', - 3209 => 'L', - 3210 => 'L', - 3211 => 'L', - 3212 => 'L', - 3214 => 'L', - 3215 => 'L', - 3216 => 'L', - 3218 => 'L', - 3219 => 'L', - 3220 => 'L', - 3221 => 'L', - 3222 => 'L', - 3223 => 'L', - 3224 => 'L', - 3225 => 'L', - 3226 => 'L', - 3227 => 'L', - 3228 => 'L', - 3229 => 'L', - 3230 => 'L', - 3231 => 'L', - 3232 => 'L', - 3233 => 'L', - 3234 => 'L', - 3235 => 'L', - 3236 => 'L', - 3237 => 'L', - 3238 => 'L', - 3239 => 'L', - 3240 => 'L', - 3242 => 'L', - 3243 => 'L', - 3244 => 'L', - 3245 => 'L', - 3246 => 'L', - 3247 => 'L', - 3248 => 'L', - 3249 => 'L', - 3250 => 'L', - 3251 => 'L', - 3253 => 'L', - 3254 => 'L', - 3255 => 'L', - 3256 => 'L', - 3257 => 'L', - 3260 => 'NSM', - 3261 => 'L', - 3262 => 'L', - 3263 => 'L', - 3264 => 'L', - 3265 => 'L', - 3266 => 'L', - 3267 => 'L', - 3268 => 'L', - 3270 => 'L', - 3271 => 'L', - 3272 => 'L', - 3274 => 'L', - 3275 => 'L', - 3276 => 'NSM', - 3277 => 'NSM', - 3285 => 'L', - 3286 => 'L', - 3294 => 'L', - 3296 => 'L', - 3297 => 'L', - 3298 => 'NSM', - 3299 => 'NSM', - 3302 => 'L', - 3303 => 'L', - 3304 => 'L', - 3305 => 'L', - 3306 => 'L', - 3307 => 'L', - 3308 => 'L', - 3309 => 'L', - 3310 => 'L', - 3311 => 'L', - 3313 => 'ON', - 3314 => 'ON', - 3330 => 'L', - 3331 => 'L', - 3333 => 'L', - 3334 => 'L', - 3335 => 'L', - 3336 => 'L', - 3337 => 'L', - 3338 => 'L', - 3339 => 'L', - 3340 => 'L', - 3342 => 'L', - 3343 => 'L', - 3344 => 'L', - 3346 => 'L', - 3347 => 'L', - 3348 => 'L', - 3349 => 'L', - 3350 => 'L', - 3351 => 'L', - 3352 => 'L', - 3353 => 'L', - 3354 => 'L', - 3355 => 'L', - 3356 => 'L', - 3357 => 'L', - 3358 => 'L', - 3359 => 'L', - 3360 => 'L', - 3361 => 'L', - 3362 => 'L', - 3363 => 'L', - 3364 => 'L', - 3365 => 'L', - 3366 => 'L', - 3367 => 'L', - 3368 => 'L', - 3370 => 'L', - 3371 => 'L', - 3372 => 'L', - 3373 => 'L', - 3374 => 'L', - 3375 => 'L', - 3376 => 'L', - 3377 => 'L', - 3378 => 'L', - 3379 => 'L', - 3380 => 'L', - 3381 => 'L', - 3382 => 'L', - 3383 => 'L', - 3384 => 'L', - 3385 => 'L', - 3390 => 'L', - 3391 => 'L', - 3392 => 'L', - 3393 => 'NSM', - 3394 => 'NSM', - 3395 => 'NSM', - 3398 => 'L', - 3399 => 'L', - 3400 => 'L', - 3402 => 'L', - 3403 => 'L', - 3404 => 'L', - 3405 => 'NSM', - 3415 => 'L', - 3424 => 'L', - 3425 => 'L', - 3430 => 'L', - 3431 => 'L', - 3432 => 'L', - 3433 => 'L', - 3434 => 'L', - 3435 => 'L', - 3436 => 'L', - 3437 => 'L', - 3438 => 'L', - 3439 => 'L', - 3458 => 'L', - 3459 => 'L', - 3461 => 'L', - 3462 => 'L', - 3463 => 'L', - 3464 => 'L', - 3465 => 'L', - 3466 => 'L', - 3467 => 'L', - 3468 => 'L', - 3469 => 'L', - 3470 => 'L', - 3471 => 'L', - 3472 => 'L', - 3473 => 'L', - 3474 => 'L', - 3475 => 'L', - 3476 => 'L', - 3477 => 'L', - 3478 => 'L', - 3482 => 'L', - 3483 => 'L', - 3484 => 'L', - 3485 => 'L', - 3486 => 'L', - 3487 => 'L', - 3488 => 'L', - 3489 => 'L', - 3490 => 'L', - 3491 => 'L', - 3492 => 'L', - 3493 => 'L', - 3494 => 'L', - 3495 => 'L', - 3496 => 'L', - 3497 => 'L', - 3498 => 'L', - 3499 => 'L', - 3500 => 'L', - 3501 => 'L', - 3502 => 'L', - 3503 => 'L', - 3504 => 'L', - 3505 => 'L', - 3507 => 'L', - 3508 => 'L', - 3509 => 'L', - 3510 => 'L', - 3511 => 'L', - 3512 => 'L', - 3513 => 'L', - 3514 => 'L', - 3515 => 'L', - 3517 => 'L', - 3520 => 'L', - 3521 => 'L', - 3522 => 'L', - 3523 => 'L', - 3524 => 'L', - 3525 => 'L', - 3526 => 'L', - 3530 => 'NSM', - 3535 => 'L', - 3536 => 'L', - 3537 => 'L', - 3538 => 'NSM', - 3539 => 'NSM', - 3540 => 'NSM', - 3542 => 'NSM', - 3544 => 'L', - 3545 => 'L', - 3546 => 'L', - 3547 => 'L', - 3548 => 'L', - 3549 => 'L', - 3550 => 'L', - 3551 => 'L', - 3570 => 'L', - 3571 => 'L', - 3572 => 'L', - 3585 => 'L', - 3586 => 'L', - 3587 => 'L', - 3588 => 'L', - 3589 => 'L', - 3590 => 'L', - 3591 => 'L', - 3592 => 'L', - 3593 => 'L', - 3594 => 'L', - 3595 => 'L', - 3596 => 'L', - 3597 => 'L', - 3598 => 'L', - 3599 => 'L', - 3600 => 'L', - 3601 => 'L', - 3602 => 'L', - 3603 => 'L', - 3604 => 'L', - 3605 => 'L', - 3606 => 'L', - 3607 => 'L', - 3608 => 'L', - 3609 => 'L', - 3610 => 'L', - 3611 => 'L', - 3612 => 'L', - 3613 => 'L', - 3614 => 'L', - 3615 => 'L', - 3616 => 'L', - 3617 => 'L', - 3618 => 'L', - 3619 => 'L', - 3620 => 'L', - 3621 => 'L', - 3622 => 'L', - 3623 => 'L', - 3624 => 'L', - 3625 => 'L', - 3626 => 'L', - 3627 => 'L', - 3628 => 'L', - 3629 => 'L', - 3630 => 'L', - 3631 => 'L', - 3632 => 'L', - 3633 => 'NSM', - 3634 => 'L', - 3635 => 'L', - 3636 => 'NSM', - 3637 => 'NSM', - 3638 => 'NSM', - 3639 => 'NSM', - 3640 => 'NSM', - 3641 => 'NSM', - 3642 => 'NSM', - 3647 => 'ET', - 3648 => 'L', - 3649 => 'L', - 3650 => 'L', - 3651 => 'L', - 3652 => 'L', - 3653 => 'L', - 3654 => 'L', - 3655 => 'NSM', - 3656 => 'NSM', - 3657 => 'NSM', - 3658 => 'NSM', - 3659 => 'NSM', - 3660 => 'NSM', - 3661 => 'NSM', - 3662 => 'NSM', - 3663 => 'L', - 3664 => 'L', - 3665 => 'L', - 3666 => 'L', - 3667 => 'L', - 3668 => 'L', - 3669 => 'L', - 3670 => 'L', - 3671 => 'L', - 3672 => 'L', - 3673 => 'L', - 3674 => 'L', - 3675 => 'L', - 3713 => 'L', - 3714 => 'L', - 3716 => 'L', - 3719 => 'L', - 3720 => 'L', - 3722 => 'L', - 3725 => 'L', - 3732 => 'L', - 3733 => 'L', - 3734 => 'L', - 3735 => 'L', - 3737 => 'L', - 3738 => 'L', - 3739 => 'L', - 3740 => 'L', - 3741 => 'L', - 3742 => 'L', - 3743 => 'L', - 3745 => 'L', - 3746 => 'L', - 3747 => 'L', - 3749 => 'L', - 3751 => 'L', - 3754 => 'L', - 3755 => 'L', - 3757 => 'L', - 3758 => 'L', - 3759 => 'L', - 3760 => 'L', - 3761 => 'NSM', - 3762 => 'L', - 3763 => 'L', - 3764 => 'NSM', - 3765 => 'NSM', - 3766 => 'NSM', - 3767 => 'NSM', - 3768 => 'NSM', - 3769 => 'NSM', - 3771 => 'NSM', - 3772 => 'NSM', - 3773 => 'L', - 3776 => 'L', - 3777 => 'L', - 3778 => 'L', - 3779 => 'L', - 3780 => 'L', - 3782 => 'L', - 3784 => 'NSM', - 3785 => 'NSM', - 3786 => 'NSM', - 3787 => 'NSM', - 3788 => 'NSM', - 3789 => 'NSM', - 3792 => 'L', - 3793 => 'L', - 3794 => 'L', - 3795 => 'L', - 3796 => 'L', - 3797 => 'L', - 3798 => 'L', - 3799 => 'L', - 3800 => 'L', - 3801 => 'L', - 3804 => 'L', - 3805 => 'L', - 3840 => 'L', - 3841 => 'L', - 3842 => 'L', - 3843 => 'L', - 3844 => 'L', - 3845 => 'L', - 3846 => 'L', - 3847 => 'L', - 3848 => 'L', - 3849 => 'L', - 3850 => 'L', - 3851 => 'L', - 3852 => 'L', - 3853 => 'L', - 3854 => 'L', - 3855 => 'L', - 3856 => 'L', - 3857 => 'L', - 3858 => 'L', - 3859 => 'L', - 3860 => 'L', - 3861 => 'L', - 3862 => 'L', - 3863 => 'L', - 3864 => 'NSM', - 3865 => 'NSM', - 3866 => 'L', - 3867 => 'L', - 3868 => 'L', - 3869 => 'L', - 3870 => 'L', - 3871 => 'L', - 3872 => 'L', - 3873 => 'L', - 3874 => 'L', - 3875 => 'L', - 3876 => 'L', - 3877 => 'L', - 3878 => 'L', - 3879 => 'L', - 3880 => 'L', - 3881 => 'L', - 3882 => 'L', - 3883 => 'L', - 3884 => 'L', - 3885 => 'L', - 3886 => 'L', - 3887 => 'L', - 3888 => 'L', - 3889 => 'L', - 3890 => 'L', - 3891 => 'L', - 3892 => 'L', - 3893 => 'NSM', - 3894 => 'L', - 3895 => 'NSM', - 3896 => 'L', - 3897 => 'NSM', - 3898 => 'ON', - 3899 => 'ON', - 3900 => 'ON', - 3901 => 'ON', - 3902 => 'L', - 3903 => 'L', - 3904 => 'L', - 3905 => 'L', - 3906 => 'L', - 3907 => 'L', - 3908 => 'L', - 3909 => 'L', - 3910 => 'L', - 3911 => 'L', - 3913 => 'L', - 3914 => 'L', - 3915 => 'L', - 3916 => 'L', - 3917 => 'L', - 3918 => 'L', - 3919 => 'L', - 3920 => 'L', - 3921 => 'L', - 3922 => 'L', - 3923 => 'L', - 3924 => 'L', - 3925 => 'L', - 3926 => 'L', - 3927 => 'L', - 3928 => 'L', - 3929 => 'L', - 3930 => 'L', - 3931 => 'L', - 3932 => 'L', - 3933 => 'L', - 3934 => 'L', - 3935 => 'L', - 3936 => 'L', - 3937 => 'L', - 3938 => 'L', - 3939 => 'L', - 3940 => 'L', - 3941 => 'L', - 3942 => 'L', - 3943 => 'L', - 3944 => 'L', - 3945 => 'L', - 3946 => 'L', - 3953 => 'NSM', - 3954 => 'NSM', - 3955 => 'NSM', - 3956 => 'NSM', - 3957 => 'NSM', - 3958 => 'NSM', - 3959 => 'NSM', - 3960 => 'NSM', - 3961 => 'NSM', - 3962 => 'NSM', - 3963 => 'NSM', - 3964 => 'NSM', - 3965 => 'NSM', - 3966 => 'NSM', - 3967 => 'L', - 3968 => 'NSM', - 3969 => 'NSM', - 3970 => 'NSM', - 3971 => 'NSM', - 3972 => 'NSM', - 3973 => 'L', - 3974 => 'NSM', - 3975 => 'NSM', - 3976 => 'L', - 3977 => 'L', - 3978 => 'L', - 3979 => 'L', - 3984 => 'NSM', - 3985 => 'NSM', - 3986 => 'NSM', - 3987 => 'NSM', - 3988 => 'NSM', - 3989 => 'NSM', - 3990 => 'NSM', - 3991 => 'NSM', - 3993 => 'NSM', - 3994 => 'NSM', - 3995 => 'NSM', - 3996 => 'NSM', - 3997 => 'NSM', - 3998 => 'NSM', - 3999 => 'NSM', - 4000 => 'NSM', - 4001 => 'NSM', - 4002 => 'NSM', - 4003 => 'NSM', - 4004 => 'NSM', - 4005 => 'NSM', - 4006 => 'NSM', - 4007 => 'NSM', - 4008 => 'NSM', - 4009 => 'NSM', - 4010 => 'NSM', - 4011 => 'NSM', - 4012 => 'NSM', - 4013 => 'NSM', - 4014 => 'NSM', - 4015 => 'NSM', - 4016 => 'NSM', - 4017 => 'NSM', - 4018 => 'NSM', - 4019 => 'NSM', - 4020 => 'NSM', - 4021 => 'NSM', - 4022 => 'NSM', - 4023 => 'NSM', - 4024 => 'NSM', - 4025 => 'NSM', - 4026 => 'NSM', - 4027 => 'NSM', - 4028 => 'NSM', - 4030 => 'L', - 4031 => 'L', - 4032 => 'L', - 4033 => 'L', - 4034 => 'L', - 4035 => 'L', - 4036 => 'L', - 4037 => 'L', - 4038 => 'NSM', - 4039 => 'L', - 4040 => 'L', - 4041 => 'L', - 4042 => 'L', - 4043 => 'L', - 4044 => 'L', - 4047 => 'L', - 4048 => 'L', - 4049 => 'L', - 4096 => 'L', - 4097 => 'L', - 4098 => 'L', - 4099 => 'L', - 4100 => 'L', - 4101 => 'L', - 4102 => 'L', - 4103 => 'L', - 4104 => 'L', - 4105 => 'L', - 4106 => 'L', - 4107 => 'L', - 4108 => 'L', - 4109 => 'L', - 4110 => 'L', - 4111 => 'L', - 4112 => 'L', - 4113 => 'L', - 4114 => 'L', - 4115 => 'L', - 4116 => 'L', - 4117 => 'L', - 4118 => 'L', - 4119 => 'L', - 4120 => 'L', - 4121 => 'L', - 4122 => 'L', - 4123 => 'L', - 4124 => 'L', - 4125 => 'L', - 4126 => 'L', - 4127 => 'L', - 4128 => 'L', - 4129 => 'L', - 4131 => 'L', - 4132 => 'L', - 4133 => 'L', - 4134 => 'L', - 4135 => 'L', - 4137 => 'L', - 4138 => 'L', - 4140 => 'L', - 4141 => 'NSM', - 4142 => 'NSM', - 4143 => 'NSM', - 4144 => 'NSM', - 4145 => 'L', - 4146 => 'NSM', - 4150 => 'NSM', - 4151 => 'NSM', - 4152 => 'L', - 4153 => 'NSM', - 4160 => 'L', - 4161 => 'L', - 4162 => 'L', - 4163 => 'L', - 4164 => 'L', - 4165 => 'L', - 4166 => 'L', - 4167 => 'L', - 4168 => 'L', - 4169 => 'L', - 4170 => 'L', - 4171 => 'L', - 4172 => 'L', - 4173 => 'L', - 4174 => 'L', - 4175 => 'L', - 4176 => 'L', - 4177 => 'L', - 4178 => 'L', - 4179 => 'L', - 4180 => 'L', - 4181 => 'L', - 4182 => 'L', - 4183 => 'L', - 4184 => 'NSM', - 4185 => 'NSM', - 4256 => 'L', - 4257 => 'L', - 4258 => 'L', - 4259 => 'L', - 4260 => 'L', - 4261 => 'L', - 4262 => 'L', - 4263 => 'L', - 4264 => 'L', - 4265 => 'L', - 4266 => 'L', - 4267 => 'L', - 4268 => 'L', - 4269 => 'L', - 4270 => 'L', - 4271 => 'L', - 4272 => 'L', - 4273 => 'L', - 4274 => 'L', - 4275 => 'L', - 4276 => 'L', - 4277 => 'L', - 4278 => 'L', - 4279 => 'L', - 4280 => 'L', - 4281 => 'L', - 4282 => 'L', - 4283 => 'L', - 4284 => 'L', - 4285 => 'L', - 4286 => 'L', - 4287 => 'L', - 4288 => 'L', - 4289 => 'L', - 4290 => 'L', - 4291 => 'L', - 4292 => 'L', - 4293 => 'L', - 4304 => 'L', - 4305 => 'L', - 4306 => 'L', - 4307 => 'L', - 4308 => 'L', - 4309 => 'L', - 4310 => 'L', - 4311 => 'L', - 4312 => 'L', - 4313 => 'L', - 4314 => 'L', - 4315 => 'L', - 4316 => 'L', - 4317 => 'L', - 4318 => 'L', - 4319 => 'L', - 4320 => 'L', - 4321 => 'L', - 4322 => 'L', - 4323 => 'L', - 4324 => 'L', - 4325 => 'L', - 4326 => 'L', - 4327 => 'L', - 4328 => 'L', - 4329 => 'L', - 4330 => 'L', - 4331 => 'L', - 4332 => 'L', - 4333 => 'L', - 4334 => 'L', - 4335 => 'L', - 4336 => 'L', - 4337 => 'L', - 4338 => 'L', - 4339 => 'L', - 4340 => 'L', - 4341 => 'L', - 4342 => 'L', - 4343 => 'L', - 4344 => 'L', - 4345 => 'L', - 4346 => 'L', - 4347 => 'L', - 4348 => 'L', - 4352 => 'L', - 4353 => 'L', - 4354 => 'L', - 4355 => 'L', - 4356 => 'L', - 4357 => 'L', - 4358 => 'L', - 4359 => 'L', - 4360 => 'L', - 4361 => 'L', - 4362 => 'L', - 4363 => 'L', - 4364 => 'L', - 4365 => 'L', - 4366 => 'L', - 4367 => 'L', - 4368 => 'L', - 4369 => 'L', - 4370 => 'L', - 4371 => 'L', - 4372 => 'L', - 4373 => 'L', - 4374 => 'L', - 4375 => 'L', - 4376 => 'L', - 4377 => 'L', - 4378 => 'L', - 4379 => 'L', - 4380 => 'L', - 4381 => 'L', - 4382 => 'L', - 4383 => 'L', - 4384 => 'L', - 4385 => 'L', - 4386 => 'L', - 4387 => 'L', - 4388 => 'L', - 4389 => 'L', - 4390 => 'L', - 4391 => 'L', - 4392 => 'L', - 4393 => 'L', - 4394 => 'L', - 4395 => 'L', - 4396 => 'L', - 4397 => 'L', - 4398 => 'L', - 4399 => 'L', - 4400 => 'L', - 4401 => 'L', - 4402 => 'L', - 4403 => 'L', - 4404 => 'L', - 4405 => 'L', - 4406 => 'L', - 4407 => 'L', - 4408 => 'L', - 4409 => 'L', - 4410 => 'L', - 4411 => 'L', - 4412 => 'L', - 4413 => 'L', - 4414 => 'L', - 4415 => 'L', - 4416 => 'L', - 4417 => 'L', - 4418 => 'L', - 4419 => 'L', - 4420 => 'L', - 4421 => 'L', - 4422 => 'L', - 4423 => 'L', - 4424 => 'L', - 4425 => 'L', - 4426 => 'L', - 4427 => 'L', - 4428 => 'L', - 4429 => 'L', - 4430 => 'L', - 4431 => 'L', - 4432 => 'L', - 4433 => 'L', - 4434 => 'L', - 4435 => 'L', - 4436 => 'L', - 4437 => 'L', - 4438 => 'L', - 4439 => 'L', - 4440 => 'L', - 4441 => 'L', - 4447 => 'L', - 4448 => 'L', - 4449 => 'L', - 4450 => 'L', - 4451 => 'L', - 4452 => 'L', - 4453 => 'L', - 4454 => 'L', - 4455 => 'L', - 4456 => 'L', - 4457 => 'L', - 4458 => 'L', - 4459 => 'L', - 4460 => 'L', - 4461 => 'L', - 4462 => 'L', - 4463 => 'L', - 4464 => 'L', - 4465 => 'L', - 4466 => 'L', - 4467 => 'L', - 4468 => 'L', - 4469 => 'L', - 4470 => 'L', - 4471 => 'L', - 4472 => 'L', - 4473 => 'L', - 4474 => 'L', - 4475 => 'L', - 4476 => 'L', - 4477 => 'L', - 4478 => 'L', - 4479 => 'L', - 4480 => 'L', - 4481 => 'L', - 4482 => 'L', - 4483 => 'L', - 4484 => 'L', - 4485 => 'L', - 4486 => 'L', - 4487 => 'L', - 4488 => 'L', - 4489 => 'L', - 4490 => 'L', - 4491 => 'L', - 4492 => 'L', - 4493 => 'L', - 4494 => 'L', - 4495 => 'L', - 4496 => 'L', - 4497 => 'L', - 4498 => 'L', - 4499 => 'L', - 4500 => 'L', - 4501 => 'L', - 4502 => 'L', - 4503 => 'L', - 4504 => 'L', - 4505 => 'L', - 4506 => 'L', - 4507 => 'L', - 4508 => 'L', - 4509 => 'L', - 4510 => 'L', - 4511 => 'L', - 4512 => 'L', - 4513 => 'L', - 4514 => 'L', - 4520 => 'L', - 4521 => 'L', - 4522 => 'L', - 4523 => 'L', - 4524 => 'L', - 4525 => 'L', - 4526 => 'L', - 4527 => 'L', - 4528 => 'L', - 4529 => 'L', - 4530 => 'L', - 4531 => 'L', - 4532 => 'L', - 4533 => 'L', - 4534 => 'L', - 4535 => 'L', - 4536 => 'L', - 4537 => 'L', - 4538 => 'L', - 4539 => 'L', - 4540 => 'L', - 4541 => 'L', - 4542 => 'L', - 4543 => 'L', - 4544 => 'L', - 4545 => 'L', - 4546 => 'L', - 4547 => 'L', - 4548 => 'L', - 4549 => 'L', - 4550 => 'L', - 4551 => 'L', - 4552 => 'L', - 4553 => 'L', - 4554 => 'L', - 4555 => 'L', - 4556 => 'L', - 4557 => 'L', - 4558 => 'L', - 4559 => 'L', - 4560 => 'L', - 4561 => 'L', - 4562 => 'L', - 4563 => 'L', - 4564 => 'L', - 4565 => 'L', - 4566 => 'L', - 4567 => 'L', - 4568 => 'L', - 4569 => 'L', - 4570 => 'L', - 4571 => 'L', - 4572 => 'L', - 4573 => 'L', - 4574 => 'L', - 4575 => 'L', - 4576 => 'L', - 4577 => 'L', - 4578 => 'L', - 4579 => 'L', - 4580 => 'L', - 4581 => 'L', - 4582 => 'L', - 4583 => 'L', - 4584 => 'L', - 4585 => 'L', - 4586 => 'L', - 4587 => 'L', - 4588 => 'L', - 4589 => 'L', - 4590 => 'L', - 4591 => 'L', - 4592 => 'L', - 4593 => 'L', - 4594 => 'L', - 4595 => 'L', - 4596 => 'L', - 4597 => 'L', - 4598 => 'L', - 4599 => 'L', - 4600 => 'L', - 4601 => 'L', - 4608 => 'L', - 4609 => 'L', - 4610 => 'L', - 4611 => 'L', - 4612 => 'L', - 4613 => 'L', - 4614 => 'L', - 4615 => 'L', - 4616 => 'L', - 4617 => 'L', - 4618 => 'L', - 4619 => 'L', - 4620 => 'L', - 4621 => 'L', - 4622 => 'L', - 4623 => 'L', - 4624 => 'L', - 4625 => 'L', - 4626 => 'L', - 4627 => 'L', - 4628 => 'L', - 4629 => 'L', - 4630 => 'L', - 4631 => 'L', - 4632 => 'L', - 4633 => 'L', - 4634 => 'L', - 4635 => 'L', - 4636 => 'L', - 4637 => 'L', - 4638 => 'L', - 4639 => 'L', - 4640 => 'L', - 4641 => 'L', - 4642 => 'L', - 4643 => 'L', - 4644 => 'L', - 4645 => 'L', - 4646 => 'L', - 4647 => 'L', - 4648 => 'L', - 4649 => 'L', - 4650 => 'L', - 4651 => 'L', - 4652 => 'L', - 4653 => 'L', - 4654 => 'L', - 4655 => 'L', - 4656 => 'L', - 4657 => 'L', - 4658 => 'L', - 4659 => 'L', - 4660 => 'L', - 4661 => 'L', - 4662 => 'L', - 4663 => 'L', - 4664 => 'L', - 4665 => 'L', - 4666 => 'L', - 4667 => 'L', - 4668 => 'L', - 4669 => 'L', - 4670 => 'L', - 4671 => 'L', - 4672 => 'L', - 4673 => 'L', - 4674 => 'L', - 4675 => 'L', - 4676 => 'L', - 4677 => 'L', - 4678 => 'L', - 4679 => 'L', - 4680 => 'L', - 4682 => 'L', - 4683 => 'L', - 4684 => 'L', - 4685 => 'L', - 4688 => 'L', - 4689 => 'L', - 4690 => 'L', - 4691 => 'L', - 4692 => 'L', - 4693 => 'L', - 4694 => 'L', - 4696 => 'L', - 4698 => 'L', - 4699 => 'L', - 4700 => 'L', - 4701 => 'L', - 4704 => 'L', - 4705 => 'L', - 4706 => 'L', - 4707 => 'L', - 4708 => 'L', - 4709 => 'L', - 4710 => 'L', - 4711 => 'L', - 4712 => 'L', - 4713 => 'L', - 4714 => 'L', - 4715 => 'L', - 4716 => 'L', - 4717 => 'L', - 4718 => 'L', - 4719 => 'L', - 4720 => 'L', - 4721 => 'L', - 4722 => 'L', - 4723 => 'L', - 4724 => 'L', - 4725 => 'L', - 4726 => 'L', - 4727 => 'L', - 4728 => 'L', - 4729 => 'L', - 4730 => 'L', - 4731 => 'L', - 4732 => 'L', - 4733 => 'L', - 4734 => 'L', - 4735 => 'L', - 4736 => 'L', - 4737 => 'L', - 4738 => 'L', - 4739 => 'L', - 4740 => 'L', - 4741 => 'L', - 4742 => 'L', - 4743 => 'L', - 4744 => 'L', - 4746 => 'L', - 4747 => 'L', - 4748 => 'L', - 4749 => 'L', - 4752 => 'L', - 4753 => 'L', - 4754 => 'L', - 4755 => 'L', - 4756 => 'L', - 4757 => 'L', - 4758 => 'L', - 4759 => 'L', - 4760 => 'L', - 4761 => 'L', - 4762 => 'L', - 4763 => 'L', - 4764 => 'L', - 4765 => 'L', - 4766 => 'L', - 4767 => 'L', - 4768 => 'L', - 4769 => 'L', - 4770 => 'L', - 4771 => 'L', - 4772 => 'L', - 4773 => 'L', - 4774 => 'L', - 4775 => 'L', - 4776 => 'L', - 4777 => 'L', - 4778 => 'L', - 4779 => 'L', - 4780 => 'L', - 4781 => 'L', - 4782 => 'L', - 4783 => 'L', - 4784 => 'L', - 4786 => 'L', - 4787 => 'L', - 4788 => 'L', - 4789 => 'L', - 4792 => 'L', - 4793 => 'L', - 4794 => 'L', - 4795 => 'L', - 4796 => 'L', - 4797 => 'L', - 4798 => 'L', - 4800 => 'L', - 4802 => 'L', - 4803 => 'L', - 4804 => 'L', - 4805 => 'L', - 4808 => 'L', - 4809 => 'L', - 4810 => 'L', - 4811 => 'L', - 4812 => 'L', - 4813 => 'L', - 4814 => 'L', - 4815 => 'L', - 4816 => 'L', - 4817 => 'L', - 4818 => 'L', - 4819 => 'L', - 4820 => 'L', - 4821 => 'L', - 4822 => 'L', - 4824 => 'L', - 4825 => 'L', - 4826 => 'L', - 4827 => 'L', - 4828 => 'L', - 4829 => 'L', - 4830 => 'L', - 4831 => 'L', - 4832 => 'L', - 4833 => 'L', - 4834 => 'L', - 4835 => 'L', - 4836 => 'L', - 4837 => 'L', - 4838 => 'L', - 4839 => 'L', - 4840 => 'L', - 4841 => 'L', - 4842 => 'L', - 4843 => 'L', - 4844 => 'L', - 4845 => 'L', - 4846 => 'L', - 4847 => 'L', - 4848 => 'L', - 4849 => 'L', - 4850 => 'L', - 4851 => 'L', - 4852 => 'L', - 4853 => 'L', - 4854 => 'L', - 4855 => 'L', - 4856 => 'L', - 4857 => 'L', - 4858 => 'L', - 4859 => 'L', - 4860 => 'L', - 4861 => 'L', - 4862 => 'L', - 4863 => 'L', - 4864 => 'L', - 4865 => 'L', - 4866 => 'L', - 4867 => 'L', - 4868 => 'L', - 4869 => 'L', - 4870 => 'L', - 4871 => 'L', - 4872 => 'L', - 4873 => 'L', - 4874 => 'L', - 4875 => 'L', - 4876 => 'L', - 4877 => 'L', - 4878 => 'L', - 4879 => 'L', - 4880 => 'L', - 4882 => 'L', - 4883 => 'L', - 4884 => 'L', - 4885 => 'L', - 4888 => 'L', - 4889 => 'L', - 4890 => 'L', - 4891 => 'L', - 4892 => 'L', - 4893 => 'L', - 4894 => 'L', - 4895 => 'L', - 4896 => 'L', - 4897 => 'L', - 4898 => 'L', - 4899 => 'L', - 4900 => 'L', - 4901 => 'L', - 4902 => 'L', - 4903 => 'L', - 4904 => 'L', - 4905 => 'L', - 4906 => 'L', - 4907 => 'L', - 4908 => 'L', - 4909 => 'L', - 4910 => 'L', - 4911 => 'L', - 4912 => 'L', - 4913 => 'L', - 4914 => 'L', - 4915 => 'L', - 4916 => 'L', - 4917 => 'L', - 4918 => 'L', - 4919 => 'L', - 4920 => 'L', - 4921 => 'L', - 4922 => 'L', - 4923 => 'L', - 4924 => 'L', - 4925 => 'L', - 4926 => 'L', - 4927 => 'L', - 4928 => 'L', - 4929 => 'L', - 4930 => 'L', - 4931 => 'L', - 4932 => 'L', - 4933 => 'L', - 4934 => 'L', - 4935 => 'L', - 4936 => 'L', - 4937 => 'L', - 4938 => 'L', - 4939 => 'L', - 4940 => 'L', - 4941 => 'L', - 4942 => 'L', - 4943 => 'L', - 4944 => 'L', - 4945 => 'L', - 4946 => 'L', - 4947 => 'L', - 4948 => 'L', - 4949 => 'L', - 4950 => 'L', - 4951 => 'L', - 4952 => 'L', - 4953 => 'L', - 4954 => 'L', - 4959 => 'NSM', - 4960 => 'L', - 4961 => 'L', - 4962 => 'L', - 4963 => 'L', - 4964 => 'L', - 4965 => 'L', - 4966 => 'L', - 4967 => 'L', - 4968 => 'L', - 4969 => 'L', - 4970 => 'L', - 4971 => 'L', - 4972 => 'L', - 4973 => 'L', - 4974 => 'L', - 4975 => 'L', - 4976 => 'L', - 4977 => 'L', - 4978 => 'L', - 4979 => 'L', - 4980 => 'L', - 4981 => 'L', - 4982 => 'L', - 4983 => 'L', - 4984 => 'L', - 4985 => 'L', - 4986 => 'L', - 4987 => 'L', - 4988 => 'L', - 4992 => 'L', - 4993 => 'L', - 4994 => 'L', - 4995 => 'L', - 4996 => 'L', - 4997 => 'L', - 4998 => 'L', - 4999 => 'L', - 5000 => 'L', - 5001 => 'L', - 5002 => 'L', - 5003 => 'L', - 5004 => 'L', - 5005 => 'L', - 5006 => 'L', - 5007 => 'L', - 5008 => 'ON', - 5009 => 'ON', - 5010 => 'ON', - 5011 => 'ON', - 5012 => 'ON', - 5013 => 'ON', - 5014 => 'ON', - 5015 => 'ON', - 5016 => 'ON', - 5017 => 'ON', - 5024 => 'L', - 5025 => 'L', - 5026 => 'L', - 5027 => 'L', - 5028 => 'L', - 5029 => 'L', - 5030 => 'L', - 5031 => 'L', - 5032 => 'L', - 5033 => 'L', - 5034 => 'L', - 5035 => 'L', - 5036 => 'L', - 5037 => 'L', - 5038 => 'L', - 5039 => 'L', - 5040 => 'L', - 5041 => 'L', - 5042 => 'L', - 5043 => 'L', - 5044 => 'L', - 5045 => 'L', - 5046 => 'L', - 5047 => 'L', - 5048 => 'L', - 5049 => 'L', - 5050 => 'L', - 5051 => 'L', - 5052 => 'L', - 5053 => 'L', - 5054 => 'L', - 5055 => 'L', - 5056 => 'L', - 5057 => 'L', - 5058 => 'L', - 5059 => 'L', - 5060 => 'L', - 5061 => 'L', - 5062 => 'L', - 5063 => 'L', - 5064 => 'L', - 5065 => 'L', - 5066 => 'L', - 5067 => 'L', - 5068 => 'L', - 5069 => 'L', - 5070 => 'L', - 5071 => 'L', - 5072 => 'L', - 5073 => 'L', - 5074 => 'L', - 5075 => 'L', - 5076 => 'L', - 5077 => 'L', - 5078 => 'L', - 5079 => 'L', - 5080 => 'L', - 5081 => 'L', - 5082 => 'L', - 5083 => 'L', - 5084 => 'L', - 5085 => 'L', - 5086 => 'L', - 5087 => 'L', - 5088 => 'L', - 5089 => 'L', - 5090 => 'L', - 5091 => 'L', - 5092 => 'L', - 5093 => 'L', - 5094 => 'L', - 5095 => 'L', - 5096 => 'L', - 5097 => 'L', - 5098 => 'L', - 5099 => 'L', - 5100 => 'L', - 5101 => 'L', - 5102 => 'L', - 5103 => 'L', - 5104 => 'L', - 5105 => 'L', - 5106 => 'L', - 5107 => 'L', - 5108 => 'L', - 5121 => 'L', - 5122 => 'L', - 5123 => 'L', - 5124 => 'L', - 5125 => 'L', - 5126 => 'L', - 5127 => 'L', - 5128 => 'L', - 5129 => 'L', - 5130 => 'L', - 5131 => 'L', - 5132 => 'L', - 5133 => 'L', - 5134 => 'L', - 5135 => 'L', - 5136 => 'L', - 5137 => 'L', - 5138 => 'L', - 5139 => 'L', - 5140 => 'L', - 5141 => 'L', - 5142 => 'L', - 5143 => 'L', - 5144 => 'L', - 5145 => 'L', - 5146 => 'L', - 5147 => 'L', - 5148 => 'L', - 5149 => 'L', - 5150 => 'L', - 5151 => 'L', - 5152 => 'L', - 5153 => 'L', - 5154 => 'L', - 5155 => 'L', - 5156 => 'L', - 5157 => 'L', - 5158 => 'L', - 5159 => 'L', - 5160 => 'L', - 5161 => 'L', - 5162 => 'L', - 5163 => 'L', - 5164 => 'L', - 5165 => 'L', - 5166 => 'L', - 5167 => 'L', - 5168 => 'L', - 5169 => 'L', - 5170 => 'L', - 5171 => 'L', - 5172 => 'L', - 5173 => 'L', - 5174 => 'L', - 5175 => 'L', - 5176 => 'L', - 5177 => 'L', - 5178 => 'L', - 5179 => 'L', - 5180 => 'L', - 5181 => 'L', - 5182 => 'L', - 5183 => 'L', - 5184 => 'L', - 5185 => 'L', - 5186 => 'L', - 5187 => 'L', - 5188 => 'L', - 5189 => 'L', - 5190 => 'L', - 5191 => 'L', - 5192 => 'L', - 5193 => 'L', - 5194 => 'L', - 5195 => 'L', - 5196 => 'L', - 5197 => 'L', - 5198 => 'L', - 5199 => 'L', - 5200 => 'L', - 5201 => 'L', - 5202 => 'L', - 5203 => 'L', - 5204 => 'L', - 5205 => 'L', - 5206 => 'L', - 5207 => 'L', - 5208 => 'L', - 5209 => 'L', - 5210 => 'L', - 5211 => 'L', - 5212 => 'L', - 5213 => 'L', - 5214 => 'L', - 5215 => 'L', - 5216 => 'L', - 5217 => 'L', - 5218 => 'L', - 5219 => 'L', - 5220 => 'L', - 5221 => 'L', - 5222 => 'L', - 5223 => 'L', - 5224 => 'L', - 5225 => 'L', - 5226 => 'L', - 5227 => 'L', - 5228 => 'L', - 5229 => 'L', - 5230 => 'L', - 5231 => 'L', - 5232 => 'L', - 5233 => 'L', - 5234 => 'L', - 5235 => 'L', - 5236 => 'L', - 5237 => 'L', - 5238 => 'L', - 5239 => 'L', - 5240 => 'L', - 5241 => 'L', - 5242 => 'L', - 5243 => 'L', - 5244 => 'L', - 5245 => 'L', - 5246 => 'L', - 5247 => 'L', - 5248 => 'L', - 5249 => 'L', - 5250 => 'L', - 5251 => 'L', - 5252 => 'L', - 5253 => 'L', - 5254 => 'L', - 5255 => 'L', - 5256 => 'L', - 5257 => 'L', - 5258 => 'L', - 5259 => 'L', - 5260 => 'L', - 5261 => 'L', - 5262 => 'L', - 5263 => 'L', - 5264 => 'L', - 5265 => 'L', - 5266 => 'L', - 5267 => 'L', - 5268 => 'L', - 5269 => 'L', - 5270 => 'L', - 5271 => 'L', - 5272 => 'L', - 5273 => 'L', - 5274 => 'L', - 5275 => 'L', - 5276 => 'L', - 5277 => 'L', - 5278 => 'L', - 5279 => 'L', - 5280 => 'L', - 5281 => 'L', - 5282 => 'L', - 5283 => 'L', - 5284 => 'L', - 5285 => 'L', - 5286 => 'L', - 5287 => 'L', - 5288 => 'L', - 5289 => 'L', - 5290 => 'L', - 5291 => 'L', - 5292 => 'L', - 5293 => 'L', - 5294 => 'L', - 5295 => 'L', - 5296 => 'L', - 5297 => 'L', - 5298 => 'L', - 5299 => 'L', - 5300 => 'L', - 5301 => 'L', - 5302 => 'L', - 5303 => 'L', - 5304 => 'L', - 5305 => 'L', - 5306 => 'L', - 5307 => 'L', - 5308 => 'L', - 5309 => 'L', - 5310 => 'L', - 5311 => 'L', - 5312 => 'L', - 5313 => 'L', - 5314 => 'L', - 5315 => 'L', - 5316 => 'L', - 5317 => 'L', - 5318 => 'L', - 5319 => 'L', - 5320 => 'L', - 5321 => 'L', - 5322 => 'L', - 5323 => 'L', - 5324 => 'L', - 5325 => 'L', - 5326 => 'L', - 5327 => 'L', - 5328 => 'L', - 5329 => 'L', - 5330 => 'L', - 5331 => 'L', - 5332 => 'L', - 5333 => 'L', - 5334 => 'L', - 5335 => 'L', - 5336 => 'L', - 5337 => 'L', - 5338 => 'L', - 5339 => 'L', - 5340 => 'L', - 5341 => 'L', - 5342 => 'L', - 5343 => 'L', - 5344 => 'L', - 5345 => 'L', - 5346 => 'L', - 5347 => 'L', - 5348 => 'L', - 5349 => 'L', - 5350 => 'L', - 5351 => 'L', - 5352 => 'L', - 5353 => 'L', - 5354 => 'L', - 5355 => 'L', - 5356 => 'L', - 5357 => 'L', - 5358 => 'L', - 5359 => 'L', - 5360 => 'L', - 5361 => 'L', - 5362 => 'L', - 5363 => 'L', - 5364 => 'L', - 5365 => 'L', - 5366 => 'L', - 5367 => 'L', - 5368 => 'L', - 5369 => 'L', - 5370 => 'L', - 5371 => 'L', - 5372 => 'L', - 5373 => 'L', - 5374 => 'L', - 5375 => 'L', - 5376 => 'L', - 5377 => 'L', - 5378 => 'L', - 5379 => 'L', - 5380 => 'L', - 5381 => 'L', - 5382 => 'L', - 5383 => 'L', - 5384 => 'L', - 5385 => 'L', - 5386 => 'L', - 5387 => 'L', - 5388 => 'L', - 5389 => 'L', - 5390 => 'L', - 5391 => 'L', - 5392 => 'L', - 5393 => 'L', - 5394 => 'L', - 5395 => 'L', - 5396 => 'L', - 5397 => 'L', - 5398 => 'L', - 5399 => 'L', - 5400 => 'L', - 5401 => 'L', - 5402 => 'L', - 5403 => 'L', - 5404 => 'L', - 5405 => 'L', - 5406 => 'L', - 5407 => 'L', - 5408 => 'L', - 5409 => 'L', - 5410 => 'L', - 5411 => 'L', - 5412 => 'L', - 5413 => 'L', - 5414 => 'L', - 5415 => 'L', - 5416 => 'L', - 5417 => 'L', - 5418 => 'L', - 5419 => 'L', - 5420 => 'L', - 5421 => 'L', - 5422 => 'L', - 5423 => 'L', - 5424 => 'L', - 5425 => 'L', - 5426 => 'L', - 5427 => 'L', - 5428 => 'L', - 5429 => 'L', - 5430 => 'L', - 5431 => 'L', - 5432 => 'L', - 5433 => 'L', - 5434 => 'L', - 5435 => 'L', - 5436 => 'L', - 5437 => 'L', - 5438 => 'L', - 5439 => 'L', - 5440 => 'L', - 5441 => 'L', - 5442 => 'L', - 5443 => 'L', - 5444 => 'L', - 5445 => 'L', - 5446 => 'L', - 5447 => 'L', - 5448 => 'L', - 5449 => 'L', - 5450 => 'L', - 5451 => 'L', - 5452 => 'L', - 5453 => 'L', - 5454 => 'L', - 5455 => 'L', - 5456 => 'L', - 5457 => 'L', - 5458 => 'L', - 5459 => 'L', - 5460 => 'L', - 5461 => 'L', - 5462 => 'L', - 5463 => 'L', - 5464 => 'L', - 5465 => 'L', - 5466 => 'L', - 5467 => 'L', - 5468 => 'L', - 5469 => 'L', - 5470 => 'L', - 5471 => 'L', - 5472 => 'L', - 5473 => 'L', - 5474 => 'L', - 5475 => 'L', - 5476 => 'L', - 5477 => 'L', - 5478 => 'L', - 5479 => 'L', - 5480 => 'L', - 5481 => 'L', - 5482 => 'L', - 5483 => 'L', - 5484 => 'L', - 5485 => 'L', - 5486 => 'L', - 5487 => 'L', - 5488 => 'L', - 5489 => 'L', - 5490 => 'L', - 5491 => 'L', - 5492 => 'L', - 5493 => 'L', - 5494 => 'L', - 5495 => 'L', - 5496 => 'L', - 5497 => 'L', - 5498 => 'L', - 5499 => 'L', - 5500 => 'L', - 5501 => 'L', - 5502 => 'L', - 5503 => 'L', - 5504 => 'L', - 5505 => 'L', - 5506 => 'L', - 5507 => 'L', - 5508 => 'L', - 5509 => 'L', - 5510 => 'L', - 5511 => 'L', - 5512 => 'L', - 5513 => 'L', - 5514 => 'L', - 5515 => 'L', - 5516 => 'L', - 5517 => 'L', - 5518 => 'L', - 5519 => 'L', - 5520 => 'L', - 5521 => 'L', - 5522 => 'L', - 5523 => 'L', - 5524 => 'L', - 5525 => 'L', - 5526 => 'L', - 5527 => 'L', - 5528 => 'L', - 5529 => 'L', - 5530 => 'L', - 5531 => 'L', - 5532 => 'L', - 5533 => 'L', - 5534 => 'L', - 5535 => 'L', - 5536 => 'L', - 5537 => 'L', - 5538 => 'L', - 5539 => 'L', - 5540 => 'L', - 5541 => 'L', - 5542 => 'L', - 5543 => 'L', - 5544 => 'L', - 5545 => 'L', - 5546 => 'L', - 5547 => 'L', - 5548 => 'L', - 5549 => 'L', - 5550 => 'L', - 5551 => 'L', - 5552 => 'L', - 5553 => 'L', - 5554 => 'L', - 5555 => 'L', - 5556 => 'L', - 5557 => 'L', - 5558 => 'L', - 5559 => 'L', - 5560 => 'L', - 5561 => 'L', - 5562 => 'L', - 5563 => 'L', - 5564 => 'L', - 5565 => 'L', - 5566 => 'L', - 5567 => 'L', - 5568 => 'L', - 5569 => 'L', - 5570 => 'L', - 5571 => 'L', - 5572 => 'L', - 5573 => 'L', - 5574 => 'L', - 5575 => 'L', - 5576 => 'L', - 5577 => 'L', - 5578 => 'L', - 5579 => 'L', - 5580 => 'L', - 5581 => 'L', - 5582 => 'L', - 5583 => 'L', - 5584 => 'L', - 5585 => 'L', - 5586 => 'L', - 5587 => 'L', - 5588 => 'L', - 5589 => 'L', - 5590 => 'L', - 5591 => 'L', - 5592 => 'L', - 5593 => 'L', - 5594 => 'L', - 5595 => 'L', - 5596 => 'L', - 5597 => 'L', - 5598 => 'L', - 5599 => 'L', - 5600 => 'L', - 5601 => 'L', - 5602 => 'L', - 5603 => 'L', - 5604 => 'L', - 5605 => 'L', - 5606 => 'L', - 5607 => 'L', - 5608 => 'L', - 5609 => 'L', - 5610 => 'L', - 5611 => 'L', - 5612 => 'L', - 5613 => 'L', - 5614 => 'L', - 5615 => 'L', - 5616 => 'L', - 5617 => 'L', - 5618 => 'L', - 5619 => 'L', - 5620 => 'L', - 5621 => 'L', - 5622 => 'L', - 5623 => 'L', - 5624 => 'L', - 5625 => 'L', - 5626 => 'L', - 5627 => 'L', - 5628 => 'L', - 5629 => 'L', - 5630 => 'L', - 5631 => 'L', - 5632 => 'L', - 5633 => 'L', - 5634 => 'L', - 5635 => 'L', - 5636 => 'L', - 5637 => 'L', - 5638 => 'L', - 5639 => 'L', - 5640 => 'L', - 5641 => 'L', - 5642 => 'L', - 5643 => 'L', - 5644 => 'L', - 5645 => 'L', - 5646 => 'L', - 5647 => 'L', - 5648 => 'L', - 5649 => 'L', - 5650 => 'L', - 5651 => 'L', - 5652 => 'L', - 5653 => 'L', - 5654 => 'L', - 5655 => 'L', - 5656 => 'L', - 5657 => 'L', - 5658 => 'L', - 5659 => 'L', - 5660 => 'L', - 5661 => 'L', - 5662 => 'L', - 5663 => 'L', - 5664 => 'L', - 5665 => 'L', - 5666 => 'L', - 5667 => 'L', - 5668 => 'L', - 5669 => 'L', - 5670 => 'L', - 5671 => 'L', - 5672 => 'L', - 5673 => 'L', - 5674 => 'L', - 5675 => 'L', - 5676 => 'L', - 5677 => 'L', - 5678 => 'L', - 5679 => 'L', - 5680 => 'L', - 5681 => 'L', - 5682 => 'L', - 5683 => 'L', - 5684 => 'L', - 5685 => 'L', - 5686 => 'L', - 5687 => 'L', - 5688 => 'L', - 5689 => 'L', - 5690 => 'L', - 5691 => 'L', - 5692 => 'L', - 5693 => 'L', - 5694 => 'L', - 5695 => 'L', - 5696 => 'L', - 5697 => 'L', - 5698 => 'L', - 5699 => 'L', - 5700 => 'L', - 5701 => 'L', - 5702 => 'L', - 5703 => 'L', - 5704 => 'L', - 5705 => 'L', - 5706 => 'L', - 5707 => 'L', - 5708 => 'L', - 5709 => 'L', - 5710 => 'L', - 5711 => 'L', - 5712 => 'L', - 5713 => 'L', - 5714 => 'L', - 5715 => 'L', - 5716 => 'L', - 5717 => 'L', - 5718 => 'L', - 5719 => 'L', - 5720 => 'L', - 5721 => 'L', - 5722 => 'L', - 5723 => 'L', - 5724 => 'L', - 5725 => 'L', - 5726 => 'L', - 5727 => 'L', - 5728 => 'L', - 5729 => 'L', - 5730 => 'L', - 5731 => 'L', - 5732 => 'L', - 5733 => 'L', - 5734 => 'L', - 5735 => 'L', - 5736 => 'L', - 5737 => 'L', - 5738 => 'L', - 5739 => 'L', - 5740 => 'L', - 5741 => 'L', - 5742 => 'L', - 5743 => 'L', - 5744 => 'L', - 5745 => 'L', - 5746 => 'L', - 5747 => 'L', - 5748 => 'L', - 5749 => 'L', - 5750 => 'L', - 5760 => 'WS', - 5761 => 'L', - 5762 => 'L', - 5763 => 'L', - 5764 => 'L', - 5765 => 'L', - 5766 => 'L', - 5767 => 'L', - 5768 => 'L', - 5769 => 'L', - 5770 => 'L', - 5771 => 'L', - 5772 => 'L', - 5773 => 'L', - 5774 => 'L', - 5775 => 'L', - 5776 => 'L', - 5777 => 'L', - 5778 => 'L', - 5779 => 'L', - 5780 => 'L', - 5781 => 'L', - 5782 => 'L', - 5783 => 'L', - 5784 => 'L', - 5785 => 'L', - 5786 => 'L', - 5787 => 'ON', - 5788 => 'ON', - 5792 => 'L', - 5793 => 'L', - 5794 => 'L', - 5795 => 'L', - 5796 => 'L', - 5797 => 'L', - 5798 => 'L', - 5799 => 'L', - 5800 => 'L', - 5801 => 'L', - 5802 => 'L', - 5803 => 'L', - 5804 => 'L', - 5805 => 'L', - 5806 => 'L', - 5807 => 'L', - 5808 => 'L', - 5809 => 'L', - 5810 => 'L', - 5811 => 'L', - 5812 => 'L', - 5813 => 'L', - 5814 => 'L', - 5815 => 'L', - 5816 => 'L', - 5817 => 'L', - 5818 => 'L', - 5819 => 'L', - 5820 => 'L', - 5821 => 'L', - 5822 => 'L', - 5823 => 'L', - 5824 => 'L', - 5825 => 'L', - 5826 => 'L', - 5827 => 'L', - 5828 => 'L', - 5829 => 'L', - 5830 => 'L', - 5831 => 'L', - 5832 => 'L', - 5833 => 'L', - 5834 => 'L', - 5835 => 'L', - 5836 => 'L', - 5837 => 'L', - 5838 => 'L', - 5839 => 'L', - 5840 => 'L', - 5841 => 'L', - 5842 => 'L', - 5843 => 'L', - 5844 => 'L', - 5845 => 'L', - 5846 => 'L', - 5847 => 'L', - 5848 => 'L', - 5849 => 'L', - 5850 => 'L', - 5851 => 'L', - 5852 => 'L', - 5853 => 'L', - 5854 => 'L', - 5855 => 'L', - 5856 => 'L', - 5857 => 'L', - 5858 => 'L', - 5859 => 'L', - 5860 => 'L', - 5861 => 'L', - 5862 => 'L', - 5863 => 'L', - 5864 => 'L', - 5865 => 'L', - 5866 => 'L', - 5867 => 'L', - 5868 => 'L', - 5869 => 'L', - 5870 => 'L', - 5871 => 'L', - 5872 => 'L', - 5888 => 'L', - 5889 => 'L', - 5890 => 'L', - 5891 => 'L', - 5892 => 'L', - 5893 => 'L', - 5894 => 'L', - 5895 => 'L', - 5896 => 'L', - 5897 => 'L', - 5898 => 'L', - 5899 => 'L', - 5900 => 'L', - 5902 => 'L', - 5903 => 'L', - 5904 => 'L', - 5905 => 'L', - 5906 => 'NSM', - 5907 => 'NSM', - 5908 => 'NSM', - 5920 => 'L', - 5921 => 'L', - 5922 => 'L', - 5923 => 'L', - 5924 => 'L', - 5925 => 'L', - 5926 => 'L', - 5927 => 'L', - 5928 => 'L', - 5929 => 'L', - 5930 => 'L', - 5931 => 'L', - 5932 => 'L', - 5933 => 'L', - 5934 => 'L', - 5935 => 'L', - 5936 => 'L', - 5937 => 'L', - 5938 => 'NSM', - 5939 => 'NSM', - 5940 => 'NSM', - 5941 => 'L', - 5942 => 'L', - 5952 => 'L', - 5953 => 'L', - 5954 => 'L', - 5955 => 'L', - 5956 => 'L', - 5957 => 'L', - 5958 => 'L', - 5959 => 'L', - 5960 => 'L', - 5961 => 'L', - 5962 => 'L', - 5963 => 'L', - 5964 => 'L', - 5965 => 'L', - 5966 => 'L', - 5967 => 'L', - 5968 => 'L', - 5969 => 'L', - 5970 => 'NSM', - 5971 => 'NSM', - 5984 => 'L', - 5985 => 'L', - 5986 => 'L', - 5987 => 'L', - 5988 => 'L', - 5989 => 'L', - 5990 => 'L', - 5991 => 'L', - 5992 => 'L', - 5993 => 'L', - 5994 => 'L', - 5995 => 'L', - 5996 => 'L', - 5998 => 'L', - 5999 => 'L', - 6000 => 'L', - 6002 => 'NSM', - 6003 => 'NSM', - 6016 => 'L', - 6017 => 'L', - 6018 => 'L', - 6019 => 'L', - 6020 => 'L', - 6021 => 'L', - 6022 => 'L', - 6023 => 'L', - 6024 => 'L', - 6025 => 'L', - 6026 => 'L', - 6027 => 'L', - 6028 => 'L', - 6029 => 'L', - 6030 => 'L', - 6031 => 'L', - 6032 => 'L', - 6033 => 'L', - 6034 => 'L', - 6035 => 'L', - 6036 => 'L', - 6037 => 'L', - 6038 => 'L', - 6039 => 'L', - 6040 => 'L', - 6041 => 'L', - 6042 => 'L', - 6043 => 'L', - 6044 => 'L', - 6045 => 'L', - 6046 => 'L', - 6047 => 'L', - 6048 => 'L', - 6049 => 'L', - 6050 => 'L', - 6051 => 'L', - 6052 => 'L', - 6053 => 'L', - 6054 => 'L', - 6055 => 'L', - 6056 => 'L', - 6057 => 'L', - 6058 => 'L', - 6059 => 'L', - 6060 => 'L', - 6061 => 'L', - 6062 => 'L', - 6063 => 'L', - 6064 => 'L', - 6065 => 'L', - 6066 => 'L', - 6067 => 'L', - 6068 => 'L', - 6069 => 'L', - 6070 => 'L', - 6071 => 'NSM', - 6072 => 'NSM', - 6073 => 'NSM', - 6074 => 'NSM', - 6075 => 'NSM', - 6076 => 'NSM', - 6077 => 'NSM', - 6078 => 'L', - 6079 => 'L', - 6080 => 'L', - 6081 => 'L', - 6082 => 'L', - 6083 => 'L', - 6084 => 'L', - 6085 => 'L', - 6086 => 'NSM', - 6087 => 'L', - 6088 => 'L', - 6089 => 'NSM', - 6090 => 'NSM', - 6091 => 'NSM', - 6092 => 'NSM', - 6093 => 'NSM', - 6094 => 'NSM', - 6095 => 'NSM', - 6096 => 'NSM', - 6097 => 'NSM', - 6098 => 'NSM', - 6099 => 'NSM', - 6100 => 'L', - 6101 => 'L', - 6102 => 'L', - 6103 => 'L', - 6104 => 'L', - 6105 => 'L', - 6106 => 'L', - 6107 => 'ET', - 6108 => 'L', - 6109 => 'NSM', - 6112 => 'L', - 6113 => 'L', - 6114 => 'L', - 6115 => 'L', - 6116 => 'L', - 6117 => 'L', - 6118 => 'L', - 6119 => 'L', - 6120 => 'L', - 6121 => 'L', - 6128 => 'ON', - 6129 => 'ON', - 6130 => 'ON', - 6131 => 'ON', - 6132 => 'ON', - 6133 => 'ON', - 6134 => 'ON', - 6135 => 'ON', - 6136 => 'ON', - 6137 => 'ON', - 6144 => 'ON', - 6145 => 'ON', - 6146 => 'ON', - 6147 => 'ON', - 6148 => 'ON', - 6149 => 'ON', - 6150 => 'ON', - 6151 => 'ON', - 6152 => 'ON', - 6153 => 'ON', - 6154 => 'ON', - 6155 => 'NSM', - 6156 => 'NSM', - 6157 => 'NSM', - 6158 => 'WS', - 6160 => 'L', - 6161 => 'L', - 6162 => 'L', - 6163 => 'L', - 6164 => 'L', - 6165 => 'L', - 6166 => 'L', - 6167 => 'L', - 6168 => 'L', - 6169 => 'L', - 6176 => 'L', - 6177 => 'L', - 6178 => 'L', - 6179 => 'L', - 6180 => 'L', - 6181 => 'L', - 6182 => 'L', - 6183 => 'L', - 6184 => 'L', - 6185 => 'L', - 6186 => 'L', - 6187 => 'L', - 6188 => 'L', - 6189 => 'L', - 6190 => 'L', - 6191 => 'L', - 6192 => 'L', - 6193 => 'L', - 6194 => 'L', - 6195 => 'L', - 6196 => 'L', - 6197 => 'L', - 6198 => 'L', - 6199 => 'L', - 6200 => 'L', - 6201 => 'L', - 6202 => 'L', - 6203 => 'L', - 6204 => 'L', - 6205 => 'L', - 6206 => 'L', - 6207 => 'L', - 6208 => 'L', - 6209 => 'L', - 6210 => 'L', - 6211 => 'L', - 6212 => 'L', - 6213 => 'L', - 6214 => 'L', - 6215 => 'L', - 6216 => 'L', - 6217 => 'L', - 6218 => 'L', - 6219 => 'L', - 6220 => 'L', - 6221 => 'L', - 6222 => 'L', - 6223 => 'L', - 6224 => 'L', - 6225 => 'L', - 6226 => 'L', - 6227 => 'L', - 6228 => 'L', - 6229 => 'L', - 6230 => 'L', - 6231 => 'L', - 6232 => 'L', - 6233 => 'L', - 6234 => 'L', - 6235 => 'L', - 6236 => 'L', - 6237 => 'L', - 6238 => 'L', - 6239 => 'L', - 6240 => 'L', - 6241 => 'L', - 6242 => 'L', - 6243 => 'L', - 6244 => 'L', - 6245 => 'L', - 6246 => 'L', - 6247 => 'L', - 6248 => 'L', - 6249 => 'L', - 6250 => 'L', - 6251 => 'L', - 6252 => 'L', - 6253 => 'L', - 6254 => 'L', - 6255 => 'L', - 6256 => 'L', - 6257 => 'L', - 6258 => 'L', - 6259 => 'L', - 6260 => 'L', - 6261 => 'L', - 6262 => 'L', - 6263 => 'L', - 6272 => 'L', - 6273 => 'L', - 6274 => 'L', - 6275 => 'L', - 6276 => 'L', - 6277 => 'L', - 6278 => 'L', - 6279 => 'L', - 6280 => 'L', - 6281 => 'L', - 6282 => 'L', - 6283 => 'L', - 6284 => 'L', - 6285 => 'L', - 6286 => 'L', - 6287 => 'L', - 6288 => 'L', - 6289 => 'L', - 6290 => 'L', - 6291 => 'L', - 6292 => 'L', - 6293 => 'L', - 6294 => 'L', - 6295 => 'L', - 6296 => 'L', - 6297 => 'L', - 6298 => 'L', - 6299 => 'L', - 6300 => 'L', - 6301 => 'L', - 6302 => 'L', - 6303 => 'L', - 6304 => 'L', - 6305 => 'L', - 6306 => 'L', - 6307 => 'L', - 6308 => 'L', - 6309 => 'L', - 6310 => 'L', - 6311 => 'L', - 6312 => 'L', - 6313 => 'NSM', - 6400 => 'L', - 6401 => 'L', - 6402 => 'L', - 6403 => 'L', - 6404 => 'L', - 6405 => 'L', - 6406 => 'L', - 6407 => 'L', - 6408 => 'L', - 6409 => 'L', - 6410 => 'L', - 6411 => 'L', - 6412 => 'L', - 6413 => 'L', - 6414 => 'L', - 6415 => 'L', - 6416 => 'L', - 6417 => 'L', - 6418 => 'L', - 6419 => 'L', - 6420 => 'L', - 6421 => 'L', - 6422 => 'L', - 6423 => 'L', - 6424 => 'L', - 6425 => 'L', - 6426 => 'L', - 6427 => 'L', - 6428 => 'L', - 6432 => 'NSM', - 6433 => 'NSM', - 6434 => 'NSM', - 6435 => 'L', - 6436 => 'L', - 6437 => 'L', - 6438 => 'L', - 6439 => 'NSM', - 6440 => 'NSM', - 6441 => 'NSM', - 6442 => 'NSM', - 6443 => 'NSM', - 6448 => 'L', - 6449 => 'L', - 6450 => 'NSM', - 6451 => 'L', - 6452 => 'L', - 6453 => 'L', - 6454 => 'L', - 6455 => 'L', - 6456 => 'L', - 6457 => 'NSM', - 6458 => 'NSM', - 6459 => 'NSM', - 6464 => 'ON', - 6468 => 'ON', - 6469 => 'ON', - 6470 => 'L', - 6471 => 'L', - 6472 => 'L', - 6473 => 'L', - 6474 => 'L', - 6475 => 'L', - 6476 => 'L', - 6477 => 'L', - 6478 => 'L', - 6479 => 'L', - 6480 => 'L', - 6481 => 'L', - 6482 => 'L', - 6483 => 'L', - 6484 => 'L', - 6485 => 'L', - 6486 => 'L', - 6487 => 'L', - 6488 => 'L', - 6489 => 'L', - 6490 => 'L', - 6491 => 'L', - 6492 => 'L', - 6493 => 'L', - 6494 => 'L', - 6495 => 'L', - 6496 => 'L', - 6497 => 'L', - 6498 => 'L', - 6499 => 'L', - 6500 => 'L', - 6501 => 'L', - 6502 => 'L', - 6503 => 'L', - 6504 => 'L', - 6505 => 'L', - 6506 => 'L', - 6507 => 'L', - 6508 => 'L', - 6509 => 'L', - 6512 => 'L', - 6513 => 'L', - 6514 => 'L', - 6515 => 'L', - 6516 => 'L', - 6528 => 'L', - 6529 => 'L', - 6530 => 'L', - 6531 => 'L', - 6532 => 'L', - 6533 => 'L', - 6534 => 'L', - 6535 => 'L', - 6536 => 'L', - 6537 => 'L', - 6538 => 'L', - 6539 => 'L', - 6540 => 'L', - 6541 => 'L', - 6542 => 'L', - 6543 => 'L', - 6544 => 'L', - 6545 => 'L', - 6546 => 'L', - 6547 => 'L', - 6548 => 'L', - 6549 => 'L', - 6550 => 'L', - 6551 => 'L', - 6552 => 'L', - 6553 => 'L', - 6554 => 'L', - 6555 => 'L', - 6556 => 'L', - 6557 => 'L', - 6558 => 'L', - 6559 => 'L', - 6560 => 'L', - 6561 => 'L', - 6562 => 'L', - 6563 => 'L', - 6564 => 'L', - 6565 => 'L', - 6566 => 'L', - 6567 => 'L', - 6568 => 'L', - 6569 => 'L', - 6576 => 'L', - 6577 => 'L', - 6578 => 'L', - 6579 => 'L', - 6580 => 'L', - 6581 => 'L', - 6582 => 'L', - 6583 => 'L', - 6584 => 'L', - 6585 => 'L', - 6586 => 'L', - 6587 => 'L', - 6588 => 'L', - 6589 => 'L', - 6590 => 'L', - 6591 => 'L', - 6592 => 'L', - 6593 => 'L', - 6594 => 'L', - 6595 => 'L', - 6596 => 'L', - 6597 => 'L', - 6598 => 'L', - 6599 => 'L', - 6600 => 'L', - 6601 => 'L', - 6608 => 'L', - 6609 => 'L', - 6610 => 'L', - 6611 => 'L', - 6612 => 'L', - 6613 => 'L', - 6614 => 'L', - 6615 => 'L', - 6616 => 'L', - 6617 => 'L', - 6622 => 'ON', - 6623 => 'ON', - 6624 => 'ON', - 6625 => 'ON', - 6626 => 'ON', - 6627 => 'ON', - 6628 => 'ON', - 6629 => 'ON', - 6630 => 'ON', - 6631 => 'ON', - 6632 => 'ON', - 6633 => 'ON', - 6634 => 'ON', - 6635 => 'ON', - 6636 => 'ON', - 6637 => 'ON', - 6638 => 'ON', - 6639 => 'ON', - 6640 => 'ON', - 6641 => 'ON', - 6642 => 'ON', - 6643 => 'ON', - 6644 => 'ON', - 6645 => 'ON', - 6646 => 'ON', - 6647 => 'ON', - 6648 => 'ON', - 6649 => 'ON', - 6650 => 'ON', - 6651 => 'ON', - 6652 => 'ON', - 6653 => 'ON', - 6654 => 'ON', - 6655 => 'ON', - 6656 => 'L', - 6657 => 'L', - 6658 => 'L', - 6659 => 'L', - 6660 => 'L', - 6661 => 'L', - 6662 => 'L', - 6663 => 'L', - 6664 => 'L', - 6665 => 'L', - 6666 => 'L', - 6667 => 'L', - 6668 => 'L', - 6669 => 'L', - 6670 => 'L', - 6671 => 'L', - 6672 => 'L', - 6673 => 'L', - 6674 => 'L', - 6675 => 'L', - 6676 => 'L', - 6677 => 'L', - 6678 => 'L', - 6679 => 'NSM', - 6680 => 'NSM', - 6681 => 'L', - 6682 => 'L', - 6683 => 'L', - 6686 => 'L', - 6687 => 'L', - 6912 => 'NSM', - 6913 => 'NSM', - 6914 => 'NSM', - 6915 => 'NSM', - 6916 => 'L', - 6917 => 'L', - 6918 => 'L', - 6919 => 'L', - 6920 => 'L', - 6921 => 'L', - 6922 => 'L', - 6923 => 'L', - 6924 => 'L', - 6925 => 'L', - 6926 => 'L', - 6927 => 'L', - 6928 => 'L', - 6929 => 'L', - 6930 => 'L', - 6931 => 'L', - 6932 => 'L', - 6933 => 'L', - 6934 => 'L', - 6935 => 'L', - 6936 => 'L', - 6937 => 'L', - 6938 => 'L', - 6939 => 'L', - 6940 => 'L', - 6941 => 'L', - 6942 => 'L', - 6943 => 'L', - 6944 => 'L', - 6945 => 'L', - 6946 => 'L', - 6947 => 'L', - 6948 => 'L', - 6949 => 'L', - 6950 => 'L', - 6951 => 'L', - 6952 => 'L', - 6953 => 'L', - 6954 => 'L', - 6955 => 'L', - 6956 => 'L', - 6957 => 'L', - 6958 => 'L', - 6959 => 'L', - 6960 => 'L', - 6961 => 'L', - 6962 => 'L', - 6963 => 'L', - 6964 => 'NSM', - 6965 => 'L', - 6966 => 'NSM', - 6967 => 'NSM', - 6968 => 'NSM', - 6969 => 'NSM', - 6970 => 'NSM', - 6971 => 'L', - 6972 => 'NSM', - 6973 => 'L', - 6974 => 'L', - 6975 => 'L', - 6976 => 'L', - 6977 => 'L', - 6978 => 'NSM', - 6979 => 'L', - 6980 => 'L', - 6981 => 'L', - 6982 => 'L', - 6983 => 'L', - 6984 => 'L', - 6985 => 'L', - 6986 => 'L', - 6987 => 'L', - 6992 => 'L', - 6993 => 'L', - 6994 => 'L', - 6995 => 'L', - 6996 => 'L', - 6997 => 'L', - 6998 => 'L', - 6999 => 'L', - 7000 => 'L', - 7001 => 'L', - 7002 => 'L', - 7003 => 'L', - 7004 => 'L', - 7005 => 'L', - 7006 => 'L', - 7007 => 'L', - 7008 => 'L', - 7009 => 'L', - 7010 => 'L', - 7011 => 'L', - 7012 => 'L', - 7013 => 'L', - 7014 => 'L', - 7015 => 'L', - 7016 => 'L', - 7017 => 'L', - 7018 => 'L', - 7019 => 'NSM', - 7020 => 'NSM', - 7021 => 'NSM', - 7022 => 'NSM', - 7023 => 'NSM', - 7024 => 'NSM', - 7025 => 'NSM', - 7026 => 'NSM', - 7027 => 'NSM', - 7028 => 'L', - 7029 => 'L', - 7030 => 'L', - 7031 => 'L', - 7032 => 'L', - 7033 => 'L', - 7034 => 'L', - 7035 => 'L', - 7036 => 'L', - 7424 => 'L', - 7425 => 'L', - 7426 => 'L', - 7427 => 'L', - 7428 => 'L', - 7429 => 'L', - 7430 => 'L', - 7431 => 'L', - 7432 => 'L', - 7433 => 'L', - 7434 => 'L', - 7435 => 'L', - 7436 => 'L', - 7437 => 'L', - 7438 => 'L', - 7439 => 'L', - 7440 => 'L', - 7441 => 'L', - 7442 => 'L', - 7443 => 'L', - 7444 => 'L', - 7445 => 'L', - 7446 => 'L', - 7447 => 'L', - 7448 => 'L', - 7449 => 'L', - 7450 => 'L', - 7451 => 'L', - 7452 => 'L', - 7453 => 'L', - 7454 => 'L', - 7455 => 'L', - 7456 => 'L', - 7457 => 'L', - 7458 => 'L', - 7459 => 'L', - 7460 => 'L', - 7461 => 'L', - 7462 => 'L', - 7463 => 'L', - 7464 => 'L', - 7465 => 'L', - 7466 => 'L', - 7467 => 'L', - 7468 => 'L', - 7469 => 'L', - 7470 => 'L', - 7471 => 'L', - 7472 => 'L', - 7473 => 'L', - 7474 => 'L', - 7475 => 'L', - 7476 => 'L', - 7477 => 'L', - 7478 => 'L', - 7479 => 'L', - 7480 => 'L', - 7481 => 'L', - 7482 => 'L', - 7483 => 'L', - 7484 => 'L', - 7485 => 'L', - 7486 => 'L', - 7487 => 'L', - 7488 => 'L', - 7489 => 'L', - 7490 => 'L', - 7491 => 'L', - 7492 => 'L', - 7493 => 'L', - 7494 => 'L', - 7495 => 'L', - 7496 => 'L', - 7497 => 'L', - 7498 => 'L', - 7499 => 'L', - 7500 => 'L', - 7501 => 'L', - 7502 => 'L', - 7503 => 'L', - 7504 => 'L', - 7505 => 'L', - 7506 => 'L', - 7507 => 'L', - 7508 => 'L', - 7509 => 'L', - 7510 => 'L', - 7511 => 'L', - 7512 => 'L', - 7513 => 'L', - 7514 => 'L', - 7515 => 'L', - 7516 => 'L', - 7517 => 'L', - 7518 => 'L', - 7519 => 'L', - 7520 => 'L', - 7521 => 'L', - 7522 => 'L', - 7523 => 'L', - 7524 => 'L', - 7525 => 'L', - 7526 => 'L', - 7527 => 'L', - 7528 => 'L', - 7529 => 'L', - 7530 => 'L', - 7531 => 'L', - 7532 => 'L', - 7533 => 'L', - 7534 => 'L', - 7535 => 'L', - 7536 => 'L', - 7537 => 'L', - 7538 => 'L', - 7539 => 'L', - 7540 => 'L', - 7541 => 'L', - 7542 => 'L', - 7543 => 'L', - 7544 => 'L', - 7545 => 'L', - 7546 => 'L', - 7547 => 'L', - 7548 => 'L', - 7549 => 'L', - 7550 => 'L', - 7551 => 'L', - 7552 => 'L', - 7553 => 'L', - 7554 => 'L', - 7555 => 'L', - 7556 => 'L', - 7557 => 'L', - 7558 => 'L', - 7559 => 'L', - 7560 => 'L', - 7561 => 'L', - 7562 => 'L', - 7563 => 'L', - 7564 => 'L', - 7565 => 'L', - 7566 => 'L', - 7567 => 'L', - 7568 => 'L', - 7569 => 'L', - 7570 => 'L', - 7571 => 'L', - 7572 => 'L', - 7573 => 'L', - 7574 => 'L', - 7575 => 'L', - 7576 => 'L', - 7577 => 'L', - 7578 => 'L', - 7579 => 'L', - 7580 => 'L', - 7581 => 'L', - 7582 => 'L', - 7583 => 'L', - 7584 => 'L', - 7585 => 'L', - 7586 => 'L', - 7587 => 'L', - 7588 => 'L', - 7589 => 'L', - 7590 => 'L', - 7591 => 'L', - 7592 => 'L', - 7593 => 'L', - 7594 => 'L', - 7595 => 'L', - 7596 => 'L', - 7597 => 'L', - 7598 => 'L', - 7599 => 'L', - 7600 => 'L', - 7601 => 'L', - 7602 => 'L', - 7603 => 'L', - 7604 => 'L', - 7605 => 'L', - 7606 => 'L', - 7607 => 'L', - 7608 => 'L', - 7609 => 'L', - 7610 => 'L', - 7611 => 'L', - 7612 => 'L', - 7613 => 'L', - 7614 => 'L', - 7615 => 'L', - 7616 => 'NSM', - 7617 => 'NSM', - 7618 => 'NSM', - 7619 => 'NSM', - 7620 => 'NSM', - 7621 => 'NSM', - 7622 => 'NSM', - 7623 => 'NSM', - 7624 => 'NSM', - 7625 => 'NSM', - 7626 => 'NSM', - 7678 => 'NSM', - 7679 => 'NSM', - 7680 => 'L', - 7681 => 'L', - 7682 => 'L', - 7683 => 'L', - 7684 => 'L', - 7685 => 'L', - 7686 => 'L', - 7687 => 'L', - 7688 => 'L', - 7689 => 'L', - 7690 => 'L', - 7691 => 'L', - 7692 => 'L', - 7693 => 'L', - 7694 => 'L', - 7695 => 'L', - 7696 => 'L', - 7697 => 'L', - 7698 => 'L', - 7699 => 'L', - 7700 => 'L', - 7701 => 'L', - 7702 => 'L', - 7703 => 'L', - 7704 => 'L', - 7705 => 'L', - 7706 => 'L', - 7707 => 'L', - 7708 => 'L', - 7709 => 'L', - 7710 => 'L', - 7711 => 'L', - 7712 => 'L', - 7713 => 'L', - 7714 => 'L', - 7715 => 'L', - 7716 => 'L', - 7717 => 'L', - 7718 => 'L', - 7719 => 'L', - 7720 => 'L', - 7721 => 'L', - 7722 => 'L', - 7723 => 'L', - 7724 => 'L', - 7725 => 'L', - 7726 => 'L', - 7727 => 'L', - 7728 => 'L', - 7729 => 'L', - 7730 => 'L', - 7731 => 'L', - 7732 => 'L', - 7733 => 'L', - 7734 => 'L', - 7735 => 'L', - 7736 => 'L', - 7737 => 'L', - 7738 => 'L', - 7739 => 'L', - 7740 => 'L', - 7741 => 'L', - 7742 => 'L', - 7743 => 'L', - 7744 => 'L', - 7745 => 'L', - 7746 => 'L', - 7747 => 'L', - 7748 => 'L', - 7749 => 'L', - 7750 => 'L', - 7751 => 'L', - 7752 => 'L', - 7753 => 'L', - 7754 => 'L', - 7755 => 'L', - 7756 => 'L', - 7757 => 'L', - 7758 => 'L', - 7759 => 'L', - 7760 => 'L', - 7761 => 'L', - 7762 => 'L', - 7763 => 'L', - 7764 => 'L', - 7765 => 'L', - 7766 => 'L', - 7767 => 'L', - 7768 => 'L', - 7769 => 'L', - 7770 => 'L', - 7771 => 'L', - 7772 => 'L', - 7773 => 'L', - 7774 => 'L', - 7775 => 'L', - 7776 => 'L', - 7777 => 'L', - 7778 => 'L', - 7779 => 'L', - 7780 => 'L', - 7781 => 'L', - 7782 => 'L', - 7783 => 'L', - 7784 => 'L', - 7785 => 'L', - 7786 => 'L', - 7787 => 'L', - 7788 => 'L', - 7789 => 'L', - 7790 => 'L', - 7791 => 'L', - 7792 => 'L', - 7793 => 'L', - 7794 => 'L', - 7795 => 'L', - 7796 => 'L', - 7797 => 'L', - 7798 => 'L', - 7799 => 'L', - 7800 => 'L', - 7801 => 'L', - 7802 => 'L', - 7803 => 'L', - 7804 => 'L', - 7805 => 'L', - 7806 => 'L', - 7807 => 'L', - 7808 => 'L', - 7809 => 'L', - 7810 => 'L', - 7811 => 'L', - 7812 => 'L', - 7813 => 'L', - 7814 => 'L', - 7815 => 'L', - 7816 => 'L', - 7817 => 'L', - 7818 => 'L', - 7819 => 'L', - 7820 => 'L', - 7821 => 'L', - 7822 => 'L', - 7823 => 'L', - 7824 => 'L', - 7825 => 'L', - 7826 => 'L', - 7827 => 'L', - 7828 => 'L', - 7829 => 'L', - 7830 => 'L', - 7831 => 'L', - 7832 => 'L', - 7833 => 'L', - 7834 => 'L', - 7835 => 'L', - 7840 => 'L', - 7841 => 'L', - 7842 => 'L', - 7843 => 'L', - 7844 => 'L', - 7845 => 'L', - 7846 => 'L', - 7847 => 'L', - 7848 => 'L', - 7849 => 'L', - 7850 => 'L', - 7851 => 'L', - 7852 => 'L', - 7853 => 'L', - 7854 => 'L', - 7855 => 'L', - 7856 => 'L', - 7857 => 'L', - 7858 => 'L', - 7859 => 'L', - 7860 => 'L', - 7861 => 'L', - 7862 => 'L', - 7863 => 'L', - 7864 => 'L', - 7865 => 'L', - 7866 => 'L', - 7867 => 'L', - 7868 => 'L', - 7869 => 'L', - 7870 => 'L', - 7871 => 'L', - 7872 => 'L', - 7873 => 'L', - 7874 => 'L', - 7875 => 'L', - 7876 => 'L', - 7877 => 'L', - 7878 => 'L', - 7879 => 'L', - 7880 => 'L', - 7881 => 'L', - 7882 => 'L', - 7883 => 'L', - 7884 => 'L', - 7885 => 'L', - 7886 => 'L', - 7887 => 'L', - 7888 => 'L', - 7889 => 'L', - 7890 => 'L', - 7891 => 'L', - 7892 => 'L', - 7893 => 'L', - 7894 => 'L', - 7895 => 'L', - 7896 => 'L', - 7897 => 'L', - 7898 => 'L', - 7899 => 'L', - 7900 => 'L', - 7901 => 'L', - 7902 => 'L', - 7903 => 'L', - 7904 => 'L', - 7905 => 'L', - 7906 => 'L', - 7907 => 'L', - 7908 => 'L', - 7909 => 'L', - 7910 => 'L', - 7911 => 'L', - 7912 => 'L', - 7913 => 'L', - 7914 => 'L', - 7915 => 'L', - 7916 => 'L', - 7917 => 'L', - 7918 => 'L', - 7919 => 'L', - 7920 => 'L', - 7921 => 'L', - 7922 => 'L', - 7923 => 'L', - 7924 => 'L', - 7925 => 'L', - 7926 => 'L', - 7927 => 'L', - 7928 => 'L', - 7929 => 'L', - 7936 => 'L', - 7937 => 'L', - 7938 => 'L', - 7939 => 'L', - 7940 => 'L', - 7941 => 'L', - 7942 => 'L', - 7943 => 'L', - 7944 => 'L', - 7945 => 'L', - 7946 => 'L', - 7947 => 'L', - 7948 => 'L', - 7949 => 'L', - 7950 => 'L', - 7951 => 'L', - 7952 => 'L', - 7953 => 'L', - 7954 => 'L', - 7955 => 'L', - 7956 => 'L', - 7957 => 'L', - 7960 => 'L', - 7961 => 'L', - 7962 => 'L', - 7963 => 'L', - 7964 => 'L', - 7965 => 'L', - 7968 => 'L', - 7969 => 'L', - 7970 => 'L', - 7971 => 'L', - 7972 => 'L', - 7973 => 'L', - 7974 => 'L', - 7975 => 'L', - 7976 => 'L', - 7977 => 'L', - 7978 => 'L', - 7979 => 'L', - 7980 => 'L', - 7981 => 'L', - 7982 => 'L', - 7983 => 'L', - 7984 => 'L', - 7985 => 'L', - 7986 => 'L', - 7987 => 'L', - 7988 => 'L', - 7989 => 'L', - 7990 => 'L', - 7991 => 'L', - 7992 => 'L', - 7993 => 'L', - 7994 => 'L', - 7995 => 'L', - 7996 => 'L', - 7997 => 'L', - 7998 => 'L', - 7999 => 'L', - 8000 => 'L', - 8001 => 'L', - 8002 => 'L', - 8003 => 'L', - 8004 => 'L', - 8005 => 'L', - 8008 => 'L', - 8009 => 'L', - 8010 => 'L', - 8011 => 'L', - 8012 => 'L', - 8013 => 'L', - 8016 => 'L', - 8017 => 'L', - 8018 => 'L', - 8019 => 'L', - 8020 => 'L', - 8021 => 'L', - 8022 => 'L', - 8023 => 'L', - 8025 => 'L', - 8027 => 'L', - 8029 => 'L', - 8031 => 'L', - 8032 => 'L', - 8033 => 'L', - 8034 => 'L', - 8035 => 'L', - 8036 => 'L', - 8037 => 'L', - 8038 => 'L', - 8039 => 'L', - 8040 => 'L', - 8041 => 'L', - 8042 => 'L', - 8043 => 'L', - 8044 => 'L', - 8045 => 'L', - 8046 => 'L', - 8047 => 'L', - 8048 => 'L', - 8049 => 'L', - 8050 => 'L', - 8051 => 'L', - 8052 => 'L', - 8053 => 'L', - 8054 => 'L', - 8055 => 'L', - 8056 => 'L', - 8057 => 'L', - 8058 => 'L', - 8059 => 'L', - 8060 => 'L', - 8061 => 'L', - 8064 => 'L', - 8065 => 'L', - 8066 => 'L', - 8067 => 'L', - 8068 => 'L', - 8069 => 'L', - 8070 => 'L', - 8071 => 'L', - 8072 => 'L', - 8073 => 'L', - 8074 => 'L', - 8075 => 'L', - 8076 => 'L', - 8077 => 'L', - 8078 => 'L', - 8079 => 'L', - 8080 => 'L', - 8081 => 'L', - 8082 => 'L', - 8083 => 'L', - 8084 => 'L', - 8085 => 'L', - 8086 => 'L', - 8087 => 'L', - 8088 => 'L', - 8089 => 'L', - 8090 => 'L', - 8091 => 'L', - 8092 => 'L', - 8093 => 'L', - 8094 => 'L', - 8095 => 'L', - 8096 => 'L', - 8097 => 'L', - 8098 => 'L', - 8099 => 'L', - 8100 => 'L', - 8101 => 'L', - 8102 => 'L', - 8103 => 'L', - 8104 => 'L', - 8105 => 'L', - 8106 => 'L', - 8107 => 'L', - 8108 => 'L', - 8109 => 'L', - 8110 => 'L', - 8111 => 'L', - 8112 => 'L', - 8113 => 'L', - 8114 => 'L', - 8115 => 'L', - 8116 => 'L', - 8118 => 'L', - 8119 => 'L', - 8120 => 'L', - 8121 => 'L', - 8122 => 'L', - 8123 => 'L', - 8124 => 'L', - 8125 => 'ON', - 8126 => 'L', - 8127 => 'ON', - 8128 => 'ON', - 8129 => 'ON', - 8130 => 'L', - 8131 => 'L', - 8132 => 'L', - 8134 => 'L', - 8135 => 'L', - 8136 => 'L', - 8137 => 'L', - 8138 => 'L', - 8139 => 'L', - 8140 => 'L', - 8141 => 'ON', - 8142 => 'ON', - 8143 => 'ON', - 8144 => 'L', - 8145 => 'L', - 8146 => 'L', - 8147 => 'L', - 8150 => 'L', - 8151 => 'L', - 8152 => 'L', - 8153 => 'L', - 8154 => 'L', - 8155 => 'L', - 8157 => 'ON', - 8158 => 'ON', - 8159 => 'ON', - 8160 => 'L', - 8161 => 'L', - 8162 => 'L', - 8163 => 'L', - 8164 => 'L', - 8165 => 'L', - 8166 => 'L', - 8167 => 'L', - 8168 => 'L', - 8169 => 'L', - 8170 => 'L', - 8171 => 'L', - 8172 => 'L', - 8173 => 'ON', - 8174 => 'ON', - 8175 => 'ON', - 8178 => 'L', - 8179 => 'L', - 8180 => 'L', - 8182 => 'L', - 8183 => 'L', - 8184 => 'L', - 8185 => 'L', - 8186 => 'L', - 8187 => 'L', - 8188 => 'L', - 8189 => 'ON', - 8190 => 'ON', - 8192 => 'WS', - 8193 => 'WS', - 8194 => 'WS', - 8195 => 'WS', - 8196 => 'WS', - 8197 => 'WS', - 8198 => 'WS', - 8199 => 'WS', - 8200 => 'WS', - 8201 => 'WS', - 8202 => 'WS', - 8203 => 'BN', - 8204 => 'BN', - 8205 => 'BN', - 8206 => 'L', - 8207 => 'R', - 8208 => 'ON', - 8209 => 'ON', - 8210 => 'ON', - 8211 => 'ON', - 8212 => 'ON', - 8213 => 'ON', - 8214 => 'ON', - 8215 => 'ON', - 8216 => 'ON', - 8217 => 'ON', - 8218 => 'ON', - 8219 => 'ON', - 8220 => 'ON', - 8221 => 'ON', - 8222 => 'ON', - 8223 => 'ON', - 8224 => 'ON', - 8225 => 'ON', - 8226 => 'ON', - 8227 => 'ON', - 8228 => 'ON', - 8229 => 'ON', - 8230 => 'ON', - 8231 => 'ON', - 8232 => 'WS', - 8233 => 'B', - 8234 => 'LRE', - 8235 => 'RLE', - 8236 => 'PDF', - 8237 => 'LRO', - 8238 => 'RLO', - 8239 => 'CS', - 8240 => 'ET', - 8241 => 'ET', - 8242 => 'ET', - 8243 => 'ET', - 8244 => 'ET', - 8245 => 'ON', - 8246 => 'ON', - 8247 => 'ON', - 8248 => 'ON', - 8249 => 'ON', - 8250 => 'ON', - 8251 => 'ON', - 8252 => 'ON', - 8253 => 'ON', - 8254 => 'ON', - 8255 => 'ON', - 8256 => 'ON', - 8257 => 'ON', - 8258 => 'ON', - 8259 => 'ON', - 8260 => 'CS', - 8261 => 'ON', - 8262 => 'ON', - 8263 => 'ON', - 8264 => 'ON', - 8265 => 'ON', - 8266 => 'ON', - 8267 => 'ON', - 8268 => 'ON', - 8269 => 'ON', - 8270 => 'ON', - 8271 => 'ON', - 8272 => 'ON', - 8273 => 'ON', - 8274 => 'ON', - 8275 => 'ON', - 8276 => 'ON', - 8277 => 'ON', - 8278 => 'ON', - 8279 => 'ON', - 8280 => 'ON', - 8281 => 'ON', - 8282 => 'ON', - 8283 => 'ON', - 8284 => 'ON', - 8285 => 'ON', - 8286 => 'ON', - 8287 => 'WS', - 8288 => 'BN', - 8289 => 'BN', - 8290 => 'BN', - 8291 => 'BN', - 8298 => 'BN', - 8299 => 'BN', - 8300 => 'BN', - 8301 => 'BN', - 8302 => 'BN', - 8303 => 'BN', - 8304 => 'EN', - 8305 => 'L', - 8308 => 'EN', - 8309 => 'EN', - 8310 => 'EN', - 8311 => 'EN', - 8312 => 'EN', - 8313 => 'EN', - 8314 => 'ES', - 8315 => 'ES', - 8316 => 'ON', - 8317 => 'ON', - 8318 => 'ON', - 8319 => 'L', - 8320 => 'EN', - 8321 => 'EN', - 8322 => 'EN', - 8323 => 'EN', - 8324 => 'EN', - 8325 => 'EN', - 8326 => 'EN', - 8327 => 'EN', - 8328 => 'EN', - 8329 => 'EN', - 8330 => 'ES', - 8331 => 'ES', - 8332 => 'ON', - 8333 => 'ON', - 8334 => 'ON', - 8336 => 'L', - 8337 => 'L', - 8338 => 'L', - 8339 => 'L', - 8340 => 'L', - 8352 => 'ET', - 8353 => 'ET', - 8354 => 'ET', - 8355 => 'ET', - 8356 => 'ET', - 8357 => 'ET', - 8358 => 'ET', - 8359 => 'ET', - 8360 => 'ET', - 8361 => 'ET', - 8362 => 'ET', - 8363 => 'ET', - 8364 => 'ET', - 8365 => 'ET', - 8366 => 'ET', - 8367 => 'ET', - 8368 => 'ET', - 8369 => 'ET', - 8370 => 'ET', - 8371 => 'ET', - 8372 => 'ET', - 8373 => 'ET', - 8400 => 'NSM', - 8401 => 'NSM', - 8402 => 'NSM', - 8403 => 'NSM', - 8404 => 'NSM', - 8405 => 'NSM', - 8406 => 'NSM', - 8407 => 'NSM', - 8408 => 'NSM', - 8409 => 'NSM', - 8410 => 'NSM', - 8411 => 'NSM', - 8412 => 'NSM', - 8413 => 'NSM', - 8414 => 'NSM', - 8415 => 'NSM', - 8416 => 'NSM', - 8417 => 'NSM', - 8418 => 'NSM', - 8419 => 'NSM', - 8420 => 'NSM', - 8421 => 'NSM', - 8422 => 'NSM', - 8423 => 'NSM', - 8424 => 'NSM', - 8425 => 'NSM', - 8426 => 'NSM', - 8427 => 'NSM', - 8428 => 'NSM', - 8429 => 'NSM', - 8430 => 'NSM', - 8431 => 'NSM', - 8448 => 'ON', - 8449 => 'ON', - 8450 => 'L', - 8451 => 'ON', - 8452 => 'ON', - 8453 => 'ON', - 8454 => 'ON', - 8455 => 'L', - 8456 => 'ON', - 8457 => 'ON', - 8458 => 'L', - 8459 => 'L', - 8460 => 'L', - 8461 => 'L', - 8462 => 'L', - 8463 => 'L', - 8464 => 'L', - 8465 => 'L', - 8466 => 'L', - 8467 => 'L', - 8468 => 'ON', - 8469 => 'L', - 8470 => 'ON', - 8471 => 'ON', - 8472 => 'ON', - 8473 => 'L', - 8474 => 'L', - 8475 => 'L', - 8476 => 'L', - 8477 => 'L', - 8478 => 'ON', - 8479 => 'ON', - 8480 => 'ON', - 8481 => 'ON', - 8482 => 'ON', - 8483 => 'ON', - 8484 => 'L', - 8485 => 'ON', - 8486 => 'L', - 8487 => 'ON', - 8488 => 'L', - 8489 => 'ON', - 8490 => 'L', - 8491 => 'L', - 8492 => 'L', - 8493 => 'L', - 8494 => 'ET', - 8495 => 'L', - 8496 => 'L', - 8497 => 'L', - 8498 => 'L', - 8499 => 'L', - 8500 => 'L', - 8501 => 'L', - 8502 => 'L', - 8503 => 'L', - 8504 => 'L', - 8505 => 'L', - 8506 => 'ON', - 8507 => 'ON', - 8508 => 'L', - 8509 => 'L', - 8510 => 'L', - 8511 => 'L', - 8512 => 'ON', - 8513 => 'ON', - 8514 => 'ON', - 8515 => 'ON', - 8516 => 'ON', - 8517 => 'L', - 8518 => 'L', - 8519 => 'L', - 8520 => 'L', - 8521 => 'L', - 8522 => 'ON', - 8523 => 'ON', - 8524 => 'ON', - 8525 => 'ON', - 8526 => 'L', - 8531 => 'ON', - 8532 => 'ON', - 8533 => 'ON', - 8534 => 'ON', - 8535 => 'ON', - 8536 => 'ON', - 8537 => 'ON', - 8538 => 'ON', - 8539 => 'ON', - 8540 => 'ON', - 8541 => 'ON', - 8542 => 'ON', - 8543 => 'ON', - 8544 => 'L', - 8545 => 'L', - 8546 => 'L', - 8547 => 'L', - 8548 => 'L', - 8549 => 'L', - 8550 => 'L', - 8551 => 'L', - 8552 => 'L', - 8553 => 'L', - 8554 => 'L', - 8555 => 'L', - 8556 => 'L', - 8557 => 'L', - 8558 => 'L', - 8559 => 'L', - 8560 => 'L', - 8561 => 'L', - 8562 => 'L', - 8563 => 'L', - 8564 => 'L', - 8565 => 'L', - 8566 => 'L', - 8567 => 'L', - 8568 => 'L', - 8569 => 'L', - 8570 => 'L', - 8571 => 'L', - 8572 => 'L', - 8573 => 'L', - 8574 => 'L', - 8575 => 'L', - 8576 => 'L', - 8577 => 'L', - 8578 => 'L', - 8579 => 'L', - 8580 => 'L', - 8592 => 'ON', - 8593 => 'ON', - 8594 => 'ON', - 8595 => 'ON', - 8596 => 'ON', - 8597 => 'ON', - 8598 => 'ON', - 8599 => 'ON', - 8600 => 'ON', - 8601 => 'ON', - 8602 => 'ON', - 8603 => 'ON', - 8604 => 'ON', - 8605 => 'ON', - 8606 => 'ON', - 8607 => 'ON', - 8608 => 'ON', - 8609 => 'ON', - 8610 => 'ON', - 8611 => 'ON', - 8612 => 'ON', - 8613 => 'ON', - 8614 => 'ON', - 8615 => 'ON', - 8616 => 'ON', - 8617 => 'ON', - 8618 => 'ON', - 8619 => 'ON', - 8620 => 'ON', - 8621 => 'ON', - 8622 => 'ON', - 8623 => 'ON', - 8624 => 'ON', - 8625 => 'ON', - 8626 => 'ON', - 8627 => 'ON', - 8628 => 'ON', - 8629 => 'ON', - 8630 => 'ON', - 8631 => 'ON', - 8632 => 'ON', - 8633 => 'ON', - 8634 => 'ON', - 8635 => 'ON', - 8636 => 'ON', - 8637 => 'ON', - 8638 => 'ON', - 8639 => 'ON', - 8640 => 'ON', - 8641 => 'ON', - 8642 => 'ON', - 8643 => 'ON', - 8644 => 'ON', - 8645 => 'ON', - 8646 => 'ON', - 8647 => 'ON', - 8648 => 'ON', - 8649 => 'ON', - 8650 => 'ON', - 8651 => 'ON', - 8652 => 'ON', - 8653 => 'ON', - 8654 => 'ON', - 8655 => 'ON', - 8656 => 'ON', - 8657 => 'ON', - 8658 => 'ON', - 8659 => 'ON', - 8660 => 'ON', - 8661 => 'ON', - 8662 => 'ON', - 8663 => 'ON', - 8664 => 'ON', - 8665 => 'ON', - 8666 => 'ON', - 8667 => 'ON', - 8668 => 'ON', - 8669 => 'ON', - 8670 => 'ON', - 8671 => 'ON', - 8672 => 'ON', - 8673 => 'ON', - 8674 => 'ON', - 8675 => 'ON', - 8676 => 'ON', - 8677 => 'ON', - 8678 => 'ON', - 8679 => 'ON', - 8680 => 'ON', - 8681 => 'ON', - 8682 => 'ON', - 8683 => 'ON', - 8684 => 'ON', - 8685 => 'ON', - 8686 => 'ON', - 8687 => 'ON', - 8688 => 'ON', - 8689 => 'ON', - 8690 => 'ON', - 8691 => 'ON', - 8692 => 'ON', - 8693 => 'ON', - 8694 => 'ON', - 8695 => 'ON', - 8696 => 'ON', - 8697 => 'ON', - 8698 => 'ON', - 8699 => 'ON', - 8700 => 'ON', - 8701 => 'ON', - 8702 => 'ON', - 8703 => 'ON', - 8704 => 'ON', - 8705 => 'ON', - 8706 => 'ON', - 8707 => 'ON', - 8708 => 'ON', - 8709 => 'ON', - 8710 => 'ON', - 8711 => 'ON', - 8712 => 'ON', - 8713 => 'ON', - 8714 => 'ON', - 8715 => 'ON', - 8716 => 'ON', - 8717 => 'ON', - 8718 => 'ON', - 8719 => 'ON', - 8720 => 'ON', - 8721 => 'ON', - 8722 => 'ES', - 8723 => 'ET', - 8724 => 'ON', - 8725 => 'ON', - 8726 => 'ON', - 8727 => 'ON', - 8728 => 'ON', - 8729 => 'ON', - 8730 => 'ON', - 8731 => 'ON', - 8732 => 'ON', - 8733 => 'ON', - 8734 => 'ON', - 8735 => 'ON', - 8736 => 'ON', - 8737 => 'ON', - 8738 => 'ON', - 8739 => 'ON', - 8740 => 'ON', - 8741 => 'ON', - 8742 => 'ON', - 8743 => 'ON', - 8744 => 'ON', - 8745 => 'ON', - 8746 => 'ON', - 8747 => 'ON', - 8748 => 'ON', - 8749 => 'ON', - 8750 => 'ON', - 8751 => 'ON', - 8752 => 'ON', - 8753 => 'ON', - 8754 => 'ON', - 8755 => 'ON', - 8756 => 'ON', - 8757 => 'ON', - 8758 => 'ON', - 8759 => 'ON', - 8760 => 'ON', - 8761 => 'ON', - 8762 => 'ON', - 8763 => 'ON', - 8764 => 'ON', - 8765 => 'ON', - 8766 => 'ON', - 8767 => 'ON', - 8768 => 'ON', - 8769 => 'ON', - 8770 => 'ON', - 8771 => 'ON', - 8772 => 'ON', - 8773 => 'ON', - 8774 => 'ON', - 8775 => 'ON', - 8776 => 'ON', - 8777 => 'ON', - 8778 => 'ON', - 8779 => 'ON', - 8780 => 'ON', - 8781 => 'ON', - 8782 => 'ON', - 8783 => 'ON', - 8784 => 'ON', - 8785 => 'ON', - 8786 => 'ON', - 8787 => 'ON', - 8788 => 'ON', - 8789 => 'ON', - 8790 => 'ON', - 8791 => 'ON', - 8792 => 'ON', - 8793 => 'ON', - 8794 => 'ON', - 8795 => 'ON', - 8796 => 'ON', - 8797 => 'ON', - 8798 => 'ON', - 8799 => 'ON', - 8800 => 'ON', - 8801 => 'ON', - 8802 => 'ON', - 8803 => 'ON', - 8804 => 'ON', - 8805 => 'ON', - 8806 => 'ON', - 8807 => 'ON', - 8808 => 'ON', - 8809 => 'ON', - 8810 => 'ON', - 8811 => 'ON', - 8812 => 'ON', - 8813 => 'ON', - 8814 => 'ON', - 8815 => 'ON', - 8816 => 'ON', - 8817 => 'ON', - 8818 => 'ON', - 8819 => 'ON', - 8820 => 'ON', - 8821 => 'ON', - 8822 => 'ON', - 8823 => 'ON', - 8824 => 'ON', - 8825 => 'ON', - 8826 => 'ON', - 8827 => 'ON', - 8828 => 'ON', - 8829 => 'ON', - 8830 => 'ON', - 8831 => 'ON', - 8832 => 'ON', - 8833 => 'ON', - 8834 => 'ON', - 8835 => 'ON', - 8836 => 'ON', - 8837 => 'ON', - 8838 => 'ON', - 8839 => 'ON', - 8840 => 'ON', - 8841 => 'ON', - 8842 => 'ON', - 8843 => 'ON', - 8844 => 'ON', - 8845 => 'ON', - 8846 => 'ON', - 8847 => 'ON', - 8848 => 'ON', - 8849 => 'ON', - 8850 => 'ON', - 8851 => 'ON', - 8852 => 'ON', - 8853 => 'ON', - 8854 => 'ON', - 8855 => 'ON', - 8856 => 'ON', - 8857 => 'ON', - 8858 => 'ON', - 8859 => 'ON', - 8860 => 'ON', - 8861 => 'ON', - 8862 => 'ON', - 8863 => 'ON', - 8864 => 'ON', - 8865 => 'ON', - 8866 => 'ON', - 8867 => 'ON', - 8868 => 'ON', - 8869 => 'ON', - 8870 => 'ON', - 8871 => 'ON', - 8872 => 'ON', - 8873 => 'ON', - 8874 => 'ON', - 8875 => 'ON', - 8876 => 'ON', - 8877 => 'ON', - 8878 => 'ON', - 8879 => 'ON', - 8880 => 'ON', - 8881 => 'ON', - 8882 => 'ON', - 8883 => 'ON', - 8884 => 'ON', - 8885 => 'ON', - 8886 => 'ON', - 8887 => 'ON', - 8888 => 'ON', - 8889 => 'ON', - 8890 => 'ON', - 8891 => 'ON', - 8892 => 'ON', - 8893 => 'ON', - 8894 => 'ON', - 8895 => 'ON', - 8896 => 'ON', - 8897 => 'ON', - 8898 => 'ON', - 8899 => 'ON', - 8900 => 'ON', - 8901 => 'ON', - 8902 => 'ON', - 8903 => 'ON', - 8904 => 'ON', - 8905 => 'ON', - 8906 => 'ON', - 8907 => 'ON', - 8908 => 'ON', - 8909 => 'ON', - 8910 => 'ON', - 8911 => 'ON', - 8912 => 'ON', - 8913 => 'ON', - 8914 => 'ON', - 8915 => 'ON', - 8916 => 'ON', - 8917 => 'ON', - 8918 => 'ON', - 8919 => 'ON', - 8920 => 'ON', - 8921 => 'ON', - 8922 => 'ON', - 8923 => 'ON', - 8924 => 'ON', - 8925 => 'ON', - 8926 => 'ON', - 8927 => 'ON', - 8928 => 'ON', - 8929 => 'ON', - 8930 => 'ON', - 8931 => 'ON', - 8932 => 'ON', - 8933 => 'ON', - 8934 => 'ON', - 8935 => 'ON', - 8936 => 'ON', - 8937 => 'ON', - 8938 => 'ON', - 8939 => 'ON', - 8940 => 'ON', - 8941 => 'ON', - 8942 => 'ON', - 8943 => 'ON', - 8944 => 'ON', - 8945 => 'ON', - 8946 => 'ON', - 8947 => 'ON', - 8948 => 'ON', - 8949 => 'ON', - 8950 => 'ON', - 8951 => 'ON', - 8952 => 'ON', - 8953 => 'ON', - 8954 => 'ON', - 8955 => 'ON', - 8956 => 'ON', - 8957 => 'ON', - 8958 => 'ON', - 8959 => 'ON', - 8960 => 'ON', - 8961 => 'ON', - 8962 => 'ON', - 8963 => 'ON', - 8964 => 'ON', - 8965 => 'ON', - 8966 => 'ON', - 8967 => 'ON', - 8968 => 'ON', - 8969 => 'ON', - 8970 => 'ON', - 8971 => 'ON', - 8972 => 'ON', - 8973 => 'ON', - 8974 => 'ON', - 8975 => 'ON', - 8976 => 'ON', - 8977 => 'ON', - 8978 => 'ON', - 8979 => 'ON', - 8980 => 'ON', - 8981 => 'ON', - 8982 => 'ON', - 8983 => 'ON', - 8984 => 'ON', - 8985 => 'ON', - 8986 => 'ON', - 8987 => 'ON', - 8988 => 'ON', - 8989 => 'ON', - 8990 => 'ON', - 8991 => 'ON', - 8992 => 'ON', - 8993 => 'ON', - 8994 => 'ON', - 8995 => 'ON', - 8996 => 'ON', - 8997 => 'ON', - 8998 => 'ON', - 8999 => 'ON', - 9000 => 'ON', - 9001 => 'ON', - 9002 => 'ON', - 9003 => 'ON', - 9004 => 'ON', - 9005 => 'ON', - 9006 => 'ON', - 9007 => 'ON', - 9008 => 'ON', - 9009 => 'ON', - 9010 => 'ON', - 9011 => 'ON', - 9012 => 'ON', - 9013 => 'ON', - 9014 => 'L', - 9015 => 'L', - 9016 => 'L', - 9017 => 'L', - 9018 => 'L', - 9019 => 'L', - 9020 => 'L', - 9021 => 'L', - 9022 => 'L', - 9023 => 'L', - 9024 => 'L', - 9025 => 'L', - 9026 => 'L', - 9027 => 'L', - 9028 => 'L', - 9029 => 'L', - 9030 => 'L', - 9031 => 'L', - 9032 => 'L', - 9033 => 'L', - 9034 => 'L', - 9035 => 'L', - 9036 => 'L', - 9037 => 'L', - 9038 => 'L', - 9039 => 'L', - 9040 => 'L', - 9041 => 'L', - 9042 => 'L', - 9043 => 'L', - 9044 => 'L', - 9045 => 'L', - 9046 => 'L', - 9047 => 'L', - 9048 => 'L', - 9049 => 'L', - 9050 => 'L', - 9051 => 'L', - 9052 => 'L', - 9053 => 'L', - 9054 => 'L', - 9055 => 'L', - 9056 => 'L', - 9057 => 'L', - 9058 => 'L', - 9059 => 'L', - 9060 => 'L', - 9061 => 'L', - 9062 => 'L', - 9063 => 'L', - 9064 => 'L', - 9065 => 'L', - 9066 => 'L', - 9067 => 'L', - 9068 => 'L', - 9069 => 'L', - 9070 => 'L', - 9071 => 'L', - 9072 => 'L', - 9073 => 'L', - 9074 => 'L', - 9075 => 'L', - 9076 => 'L', - 9077 => 'L', - 9078 => 'L', - 9079 => 'L', - 9080 => 'L', - 9081 => 'L', - 9082 => 'L', - 9083 => 'ON', - 9084 => 'ON', - 9085 => 'ON', - 9086 => 'ON', - 9087 => 'ON', - 9088 => 'ON', - 9089 => 'ON', - 9090 => 'ON', - 9091 => 'ON', - 9092 => 'ON', - 9093 => 'ON', - 9094 => 'ON', - 9095 => 'ON', - 9096 => 'ON', - 9097 => 'ON', - 9098 => 'ON', - 9099 => 'ON', - 9100 => 'ON', - 9101 => 'ON', - 9102 => 'ON', - 9103 => 'ON', - 9104 => 'ON', - 9105 => 'ON', - 9106 => 'ON', - 9107 => 'ON', - 9108 => 'ON', - 9109 => 'L', - 9110 => 'ON', - 9111 => 'ON', - 9112 => 'ON', - 9113 => 'ON', - 9114 => 'ON', - 9115 => 'ON', - 9116 => 'ON', - 9117 => 'ON', - 9118 => 'ON', - 9119 => 'ON', - 9120 => 'ON', - 9121 => 'ON', - 9122 => 'ON', - 9123 => 'ON', - 9124 => 'ON', - 9125 => 'ON', - 9126 => 'ON', - 9127 => 'ON', - 9128 => 'ON', - 9129 => 'ON', - 9130 => 'ON', - 9131 => 'ON', - 9132 => 'ON', - 9133 => 'ON', - 9134 => 'ON', - 9135 => 'ON', - 9136 => 'ON', - 9137 => 'ON', - 9138 => 'ON', - 9139 => 'ON', - 9140 => 'ON', - 9141 => 'ON', - 9142 => 'ON', - 9143 => 'ON', - 9144 => 'ON', - 9145 => 'ON', - 9146 => 'ON', - 9147 => 'ON', - 9148 => 'ON', - 9149 => 'ON', - 9150 => 'ON', - 9151 => 'ON', - 9152 => 'ON', - 9153 => 'ON', - 9154 => 'ON', - 9155 => 'ON', - 9156 => 'ON', - 9157 => 'ON', - 9158 => 'ON', - 9159 => 'ON', - 9160 => 'ON', - 9161 => 'ON', - 9162 => 'ON', - 9163 => 'ON', - 9164 => 'ON', - 9165 => 'ON', - 9166 => 'ON', - 9167 => 'ON', - 9168 => 'ON', - 9169 => 'ON', - 9170 => 'ON', - 9171 => 'ON', - 9172 => 'ON', - 9173 => 'ON', - 9174 => 'ON', - 9175 => 'ON', - 9176 => 'ON', - 9177 => 'ON', - 9178 => 'ON', - 9179 => 'ON', - 9180 => 'ON', - 9181 => 'ON', - 9182 => 'ON', - 9183 => 'ON', - 9184 => 'ON', - 9185 => 'ON', - 9186 => 'ON', - 9187 => 'ON', - 9188 => 'ON', - 9189 => 'ON', - 9190 => 'ON', - 9191 => 'ON', - 9216 => 'ON', - 9217 => 'ON', - 9218 => 'ON', - 9219 => 'ON', - 9220 => 'ON', - 9221 => 'ON', - 9222 => 'ON', - 9223 => 'ON', - 9224 => 'ON', - 9225 => 'ON', - 9226 => 'ON', - 9227 => 'ON', - 9228 => 'ON', - 9229 => 'ON', - 9230 => 'ON', - 9231 => 'ON', - 9232 => 'ON', - 9233 => 'ON', - 9234 => 'ON', - 9235 => 'ON', - 9236 => 'ON', - 9237 => 'ON', - 9238 => 'ON', - 9239 => 'ON', - 9240 => 'ON', - 9241 => 'ON', - 9242 => 'ON', - 9243 => 'ON', - 9244 => 'ON', - 9245 => 'ON', - 9246 => 'ON', - 9247 => 'ON', - 9248 => 'ON', - 9249 => 'ON', - 9250 => 'ON', - 9251 => 'ON', - 9252 => 'ON', - 9253 => 'ON', - 9254 => 'ON', - 9280 => 'ON', - 9281 => 'ON', - 9282 => 'ON', - 9283 => 'ON', - 9284 => 'ON', - 9285 => 'ON', - 9286 => 'ON', - 9287 => 'ON', - 9288 => 'ON', - 9289 => 'ON', - 9290 => 'ON', - 9312 => 'ON', - 9313 => 'ON', - 9314 => 'ON', - 9315 => 'ON', - 9316 => 'ON', - 9317 => 'ON', - 9318 => 'ON', - 9319 => 'ON', - 9320 => 'ON', - 9321 => 'ON', - 9322 => 'ON', - 9323 => 'ON', - 9324 => 'ON', - 9325 => 'ON', - 9326 => 'ON', - 9327 => 'ON', - 9328 => 'ON', - 9329 => 'ON', - 9330 => 'ON', - 9331 => 'ON', - 9332 => 'ON', - 9333 => 'ON', - 9334 => 'ON', - 9335 => 'ON', - 9336 => 'ON', - 9337 => 'ON', - 9338 => 'ON', - 9339 => 'ON', - 9340 => 'ON', - 9341 => 'ON', - 9342 => 'ON', - 9343 => 'ON', - 9344 => 'ON', - 9345 => 'ON', - 9346 => 'ON', - 9347 => 'ON', - 9348 => 'ON', - 9349 => 'ON', - 9350 => 'ON', - 9351 => 'ON', - 9352 => 'EN', - 9353 => 'EN', - 9354 => 'EN', - 9355 => 'EN', - 9356 => 'EN', - 9357 => 'EN', - 9358 => 'EN', - 9359 => 'EN', - 9360 => 'EN', - 9361 => 'EN', - 9362 => 'EN', - 9363 => 'EN', - 9364 => 'EN', - 9365 => 'EN', - 9366 => 'EN', - 9367 => 'EN', - 9368 => 'EN', - 9369 => 'EN', - 9370 => 'EN', - 9371 => 'EN', - 9372 => 'L', - 9373 => 'L', - 9374 => 'L', - 9375 => 'L', - 9376 => 'L', - 9377 => 'L', - 9378 => 'L', - 9379 => 'L', - 9380 => 'L', - 9381 => 'L', - 9382 => 'L', - 9383 => 'L', - 9384 => 'L', - 9385 => 'L', - 9386 => 'L', - 9387 => 'L', - 9388 => 'L', - 9389 => 'L', - 9390 => 'L', - 9391 => 'L', - 9392 => 'L', - 9393 => 'L', - 9394 => 'L', - 9395 => 'L', - 9396 => 'L', - 9397 => 'L', - 9398 => 'L', - 9399 => 'L', - 9400 => 'L', - 9401 => 'L', - 9402 => 'L', - 9403 => 'L', - 9404 => 'L', - 9405 => 'L', - 9406 => 'L', - 9407 => 'L', - 9408 => 'L', - 9409 => 'L', - 9410 => 'L', - 9411 => 'L', - 9412 => 'L', - 9413 => 'L', - 9414 => 'L', - 9415 => 'L', - 9416 => 'L', - 9417 => 'L', - 9418 => 'L', - 9419 => 'L', - 9420 => 'L', - 9421 => 'L', - 9422 => 'L', - 9423 => 'L', - 9424 => 'L', - 9425 => 'L', - 9426 => 'L', - 9427 => 'L', - 9428 => 'L', - 9429 => 'L', - 9430 => 'L', - 9431 => 'L', - 9432 => 'L', - 9433 => 'L', - 9434 => 'L', - 9435 => 'L', - 9436 => 'L', - 9437 => 'L', - 9438 => 'L', - 9439 => 'L', - 9440 => 'L', - 9441 => 'L', - 9442 => 'L', - 9443 => 'L', - 9444 => 'L', - 9445 => 'L', - 9446 => 'L', - 9447 => 'L', - 9448 => 'L', - 9449 => 'L', - 9450 => 'ON', - 9451 => 'ON', - 9452 => 'ON', - 9453 => 'ON', - 9454 => 'ON', - 9455 => 'ON', - 9456 => 'ON', - 9457 => 'ON', - 9458 => 'ON', - 9459 => 'ON', - 9460 => 'ON', - 9461 => 'ON', - 9462 => 'ON', - 9463 => 'ON', - 9464 => 'ON', - 9465 => 'ON', - 9466 => 'ON', - 9467 => 'ON', - 9468 => 'ON', - 9469 => 'ON', - 9470 => 'ON', - 9471 => 'ON', - 9472 => 'ON', - 9473 => 'ON', - 9474 => 'ON', - 9475 => 'ON', - 9476 => 'ON', - 9477 => 'ON', - 9478 => 'ON', - 9479 => 'ON', - 9480 => 'ON', - 9481 => 'ON', - 9482 => 'ON', - 9483 => 'ON', - 9484 => 'ON', - 9485 => 'ON', - 9486 => 'ON', - 9487 => 'ON', - 9488 => 'ON', - 9489 => 'ON', - 9490 => 'ON', - 9491 => 'ON', - 9492 => 'ON', - 9493 => 'ON', - 9494 => 'ON', - 9495 => 'ON', - 9496 => 'ON', - 9497 => 'ON', - 9498 => 'ON', - 9499 => 'ON', - 9500 => 'ON', - 9501 => 'ON', - 9502 => 'ON', - 9503 => 'ON', - 9504 => 'ON', - 9505 => 'ON', - 9506 => 'ON', - 9507 => 'ON', - 9508 => 'ON', - 9509 => 'ON', - 9510 => 'ON', - 9511 => 'ON', - 9512 => 'ON', - 9513 => 'ON', - 9514 => 'ON', - 9515 => 'ON', - 9516 => 'ON', - 9517 => 'ON', - 9518 => 'ON', - 9519 => 'ON', - 9520 => 'ON', - 9521 => 'ON', - 9522 => 'ON', - 9523 => 'ON', - 9524 => 'ON', - 9525 => 'ON', - 9526 => 'ON', - 9527 => 'ON', - 9528 => 'ON', - 9529 => 'ON', - 9530 => 'ON', - 9531 => 'ON', - 9532 => 'ON', - 9533 => 'ON', - 9534 => 'ON', - 9535 => 'ON', - 9536 => 'ON', - 9537 => 'ON', - 9538 => 'ON', - 9539 => 'ON', - 9540 => 'ON', - 9541 => 'ON', - 9542 => 'ON', - 9543 => 'ON', - 9544 => 'ON', - 9545 => 'ON', - 9546 => 'ON', - 9547 => 'ON', - 9548 => 'ON', - 9549 => 'ON', - 9550 => 'ON', - 9551 => 'ON', - 9552 => 'ON', - 9553 => 'ON', - 9554 => 'ON', - 9555 => 'ON', - 9556 => 'ON', - 9557 => 'ON', - 9558 => 'ON', - 9559 => 'ON', - 9560 => 'ON', - 9561 => 'ON', - 9562 => 'ON', - 9563 => 'ON', - 9564 => 'ON', - 9565 => 'ON', - 9566 => 'ON', - 9567 => 'ON', - 9568 => 'ON', - 9569 => 'ON', - 9570 => 'ON', - 9571 => 'ON', - 9572 => 'ON', - 9573 => 'ON', - 9574 => 'ON', - 9575 => 'ON', - 9576 => 'ON', - 9577 => 'ON', - 9578 => 'ON', - 9579 => 'ON', - 9580 => 'ON', - 9581 => 'ON', - 9582 => 'ON', - 9583 => 'ON', - 9584 => 'ON', - 9585 => 'ON', - 9586 => 'ON', - 9587 => 'ON', - 9588 => 'ON', - 9589 => 'ON', - 9590 => 'ON', - 9591 => 'ON', - 9592 => 'ON', - 9593 => 'ON', - 9594 => 'ON', - 9595 => 'ON', - 9596 => 'ON', - 9597 => 'ON', - 9598 => 'ON', - 9599 => 'ON', - 9600 => 'ON', - 9601 => 'ON', - 9602 => 'ON', - 9603 => 'ON', - 9604 => 'ON', - 9605 => 'ON', - 9606 => 'ON', - 9607 => 'ON', - 9608 => 'ON', - 9609 => 'ON', - 9610 => 'ON', - 9611 => 'ON', - 9612 => 'ON', - 9613 => 'ON', - 9614 => 'ON', - 9615 => 'ON', - 9616 => 'ON', - 9617 => 'ON', - 9618 => 'ON', - 9619 => 'ON', - 9620 => 'ON', - 9621 => 'ON', - 9622 => 'ON', - 9623 => 'ON', - 9624 => 'ON', - 9625 => 'ON', - 9626 => 'ON', - 9627 => 'ON', - 9628 => 'ON', - 9629 => 'ON', - 9630 => 'ON', - 9631 => 'ON', - 9632 => 'ON', - 9633 => 'ON', - 9634 => 'ON', - 9635 => 'ON', - 9636 => 'ON', - 9637 => 'ON', - 9638 => 'ON', - 9639 => 'ON', - 9640 => 'ON', - 9641 => 'ON', - 9642 => 'ON', - 9643 => 'ON', - 9644 => 'ON', - 9645 => 'ON', - 9646 => 'ON', - 9647 => 'ON', - 9648 => 'ON', - 9649 => 'ON', - 9650 => 'ON', - 9651 => 'ON', - 9652 => 'ON', - 9653 => 'ON', - 9654 => 'ON', - 9655 => 'ON', - 9656 => 'ON', - 9657 => 'ON', - 9658 => 'ON', - 9659 => 'ON', - 9660 => 'ON', - 9661 => 'ON', - 9662 => 'ON', - 9663 => 'ON', - 9664 => 'ON', - 9665 => 'ON', - 9666 => 'ON', - 9667 => 'ON', - 9668 => 'ON', - 9669 => 'ON', - 9670 => 'ON', - 9671 => 'ON', - 9672 => 'ON', - 9673 => 'ON', - 9674 => 'ON', - 9675 => 'ON', - 9676 => 'ON', - 9677 => 'ON', - 9678 => 'ON', - 9679 => 'ON', - 9680 => 'ON', - 9681 => 'ON', - 9682 => 'ON', - 9683 => 'ON', - 9684 => 'ON', - 9685 => 'ON', - 9686 => 'ON', - 9687 => 'ON', - 9688 => 'ON', - 9689 => 'ON', - 9690 => 'ON', - 9691 => 'ON', - 9692 => 'ON', - 9693 => 'ON', - 9694 => 'ON', - 9695 => 'ON', - 9696 => 'ON', - 9697 => 'ON', - 9698 => 'ON', - 9699 => 'ON', - 9700 => 'ON', - 9701 => 'ON', - 9702 => 'ON', - 9703 => 'ON', - 9704 => 'ON', - 9705 => 'ON', - 9706 => 'ON', - 9707 => 'ON', - 9708 => 'ON', - 9709 => 'ON', - 9710 => 'ON', - 9711 => 'ON', - 9712 => 'ON', - 9713 => 'ON', - 9714 => 'ON', - 9715 => 'ON', - 9716 => 'ON', - 9717 => 'ON', - 9718 => 'ON', - 9719 => 'ON', - 9720 => 'ON', - 9721 => 'ON', - 9722 => 'ON', - 9723 => 'ON', - 9724 => 'ON', - 9725 => 'ON', - 9726 => 'ON', - 9727 => 'ON', - 9728 => 'ON', - 9729 => 'ON', - 9730 => 'ON', - 9731 => 'ON', - 9732 => 'ON', - 9733 => 'ON', - 9734 => 'ON', - 9735 => 'ON', - 9736 => 'ON', - 9737 => 'ON', - 9738 => 'ON', - 9739 => 'ON', - 9740 => 'ON', - 9741 => 'ON', - 9742 => 'ON', - 9743 => 'ON', - 9744 => 'ON', - 9745 => 'ON', - 9746 => 'ON', - 9747 => 'ON', - 9748 => 'ON', - 9749 => 'ON', - 9750 => 'ON', - 9751 => 'ON', - 9752 => 'ON', - 9753 => 'ON', - 9754 => 'ON', - 9755 => 'ON', - 9756 => 'ON', - 9757 => 'ON', - 9758 => 'ON', - 9759 => 'ON', - 9760 => 'ON', - 9761 => 'ON', - 9762 => 'ON', - 9763 => 'ON', - 9764 => 'ON', - 9765 => 'ON', - 9766 => 'ON', - 9767 => 'ON', - 9768 => 'ON', - 9769 => 'ON', - 9770 => 'ON', - 9771 => 'ON', - 9772 => 'ON', - 9773 => 'ON', - 9774 => 'ON', - 9775 => 'ON', - 9776 => 'ON', - 9777 => 'ON', - 9778 => 'ON', - 9779 => 'ON', - 9780 => 'ON', - 9781 => 'ON', - 9782 => 'ON', - 9783 => 'ON', - 9784 => 'ON', - 9785 => 'ON', - 9786 => 'ON', - 9787 => 'ON', - 9788 => 'ON', - 9789 => 'ON', - 9790 => 'ON', - 9791 => 'ON', - 9792 => 'ON', - 9793 => 'ON', - 9794 => 'ON', - 9795 => 'ON', - 9796 => 'ON', - 9797 => 'ON', - 9798 => 'ON', - 9799 => 'ON', - 9800 => 'ON', - 9801 => 'ON', - 9802 => 'ON', - 9803 => 'ON', - 9804 => 'ON', - 9805 => 'ON', - 9806 => 'ON', - 9807 => 'ON', - 9808 => 'ON', - 9809 => 'ON', - 9810 => 'ON', - 9811 => 'ON', - 9812 => 'ON', - 9813 => 'ON', - 9814 => 'ON', - 9815 => 'ON', - 9816 => 'ON', - 9817 => 'ON', - 9818 => 'ON', - 9819 => 'ON', - 9820 => 'ON', - 9821 => 'ON', - 9822 => 'ON', - 9823 => 'ON', - 9824 => 'ON', - 9825 => 'ON', - 9826 => 'ON', - 9827 => 'ON', - 9828 => 'ON', - 9829 => 'ON', - 9830 => 'ON', - 9831 => 'ON', - 9832 => 'ON', - 9833 => 'ON', - 9834 => 'ON', - 9835 => 'ON', - 9836 => 'ON', - 9837 => 'ON', - 9838 => 'ON', - 9839 => 'ON', - 9840 => 'ON', - 9841 => 'ON', - 9842 => 'ON', - 9843 => 'ON', - 9844 => 'ON', - 9845 => 'ON', - 9846 => 'ON', - 9847 => 'ON', - 9848 => 'ON', - 9849 => 'ON', - 9850 => 'ON', - 9851 => 'ON', - 9852 => 'ON', - 9853 => 'ON', - 9854 => 'ON', - 9855 => 'ON', - 9856 => 'ON', - 9857 => 'ON', - 9858 => 'ON', - 9859 => 'ON', - 9860 => 'ON', - 9861 => 'ON', - 9862 => 'ON', - 9863 => 'ON', - 9864 => 'ON', - 9865 => 'ON', - 9866 => 'ON', - 9867 => 'ON', - 9868 => 'ON', - 9869 => 'ON', - 9870 => 'ON', - 9871 => 'ON', - 9872 => 'ON', - 9873 => 'ON', - 9874 => 'ON', - 9875 => 'ON', - 9876 => 'ON', - 9877 => 'ON', - 9878 => 'ON', - 9879 => 'ON', - 9880 => 'ON', - 9881 => 'ON', - 9882 => 'ON', - 9883 => 'ON', - 9884 => 'ON', - 9888 => 'ON', - 9889 => 'ON', - 9890 => 'ON', - 9891 => 'ON', - 9892 => 'ON', - 9893 => 'ON', - 9894 => 'ON', - 9895 => 'ON', - 9896 => 'ON', - 9897 => 'ON', - 9898 => 'ON', - 9899 => 'ON', - 9900 => 'L', - 9901 => 'ON', - 9902 => 'ON', - 9903 => 'ON', - 9904 => 'ON', - 9905 => 'ON', - 9906 => 'ON', - 9985 => 'ON', - 9986 => 'ON', - 9987 => 'ON', - 9988 => 'ON', - 9990 => 'ON', - 9991 => 'ON', - 9992 => 'ON', - 9993 => 'ON', - 9996 => 'ON', - 9997 => 'ON', - 9998 => 'ON', - 9999 => 'ON', - 10000 => 'ON', - 10001 => 'ON', - 10002 => 'ON', - 10003 => 'ON', - 10004 => 'ON', - 10005 => 'ON', - 10006 => 'ON', - 10007 => 'ON', - 10008 => 'ON', - 10009 => 'ON', - 10010 => 'ON', - 10011 => 'ON', - 10012 => 'ON', - 10013 => 'ON', - 10014 => 'ON', - 10015 => 'ON', - 10016 => 'ON', - 10017 => 'ON', - 10018 => 'ON', - 10019 => 'ON', - 10020 => 'ON', - 10021 => 'ON', - 10022 => 'ON', - 10023 => 'ON', - 10025 => 'ON', - 10026 => 'ON', - 10027 => 'ON', - 10028 => 'ON', - 10029 => 'ON', - 10030 => 'ON', - 10031 => 'ON', - 10032 => 'ON', - 10033 => 'ON', - 10034 => 'ON', - 10035 => 'ON', - 10036 => 'ON', - 10037 => 'ON', - 10038 => 'ON', - 10039 => 'ON', - 10040 => 'ON', - 10041 => 'ON', - 10042 => 'ON', - 10043 => 'ON', - 10044 => 'ON', - 10045 => 'ON', - 10046 => 'ON', - 10047 => 'ON', - 10048 => 'ON', - 10049 => 'ON', - 10050 => 'ON', - 10051 => 'ON', - 10052 => 'ON', - 10053 => 'ON', - 10054 => 'ON', - 10055 => 'ON', - 10056 => 'ON', - 10057 => 'ON', - 10058 => 'ON', - 10059 => 'ON', - 10061 => 'ON', - 10063 => 'ON', - 10064 => 'ON', - 10065 => 'ON', - 10066 => 'ON', - 10070 => 'ON', - 10072 => 'ON', - 10073 => 'ON', - 10074 => 'ON', - 10075 => 'ON', - 10076 => 'ON', - 10077 => 'ON', - 10078 => 'ON', - 10081 => 'ON', - 10082 => 'ON', - 10083 => 'ON', - 10084 => 'ON', - 10085 => 'ON', - 10086 => 'ON', - 10087 => 'ON', - 10088 => 'ON', - 10089 => 'ON', - 10090 => 'ON', - 10091 => 'ON', - 10092 => 'ON', - 10093 => 'ON', - 10094 => 'ON', - 10095 => 'ON', - 10096 => 'ON', - 10097 => 'ON', - 10098 => 'ON', - 10099 => 'ON', - 10100 => 'ON', - 10101 => 'ON', - 10102 => 'ON', - 10103 => 'ON', - 10104 => 'ON', - 10105 => 'ON', - 10106 => 'ON', - 10107 => 'ON', - 10108 => 'ON', - 10109 => 'ON', - 10110 => 'ON', - 10111 => 'ON', - 10112 => 'ON', - 10113 => 'ON', - 10114 => 'ON', - 10115 => 'ON', - 10116 => 'ON', - 10117 => 'ON', - 10118 => 'ON', - 10119 => 'ON', - 10120 => 'ON', - 10121 => 'ON', - 10122 => 'ON', - 10123 => 'ON', - 10124 => 'ON', - 10125 => 'ON', - 10126 => 'ON', - 10127 => 'ON', - 10128 => 'ON', - 10129 => 'ON', - 10130 => 'ON', - 10131 => 'ON', - 10132 => 'ON', - 10136 => 'ON', - 10137 => 'ON', - 10138 => 'ON', - 10139 => 'ON', - 10140 => 'ON', - 10141 => 'ON', - 10142 => 'ON', - 10143 => 'ON', - 10144 => 'ON', - 10145 => 'ON', - 10146 => 'ON', - 10147 => 'ON', - 10148 => 'ON', - 10149 => 'ON', - 10150 => 'ON', - 10151 => 'ON', - 10152 => 'ON', - 10153 => 'ON', - 10154 => 'ON', - 10155 => 'ON', - 10156 => 'ON', - 10157 => 'ON', - 10158 => 'ON', - 10159 => 'ON', - 10161 => 'ON', - 10162 => 'ON', - 10163 => 'ON', - 10164 => 'ON', - 10165 => 'ON', - 10166 => 'ON', - 10167 => 'ON', - 10168 => 'ON', - 10169 => 'ON', - 10170 => 'ON', - 10171 => 'ON', - 10172 => 'ON', - 10173 => 'ON', - 10174 => 'ON', - 10176 => 'ON', - 10177 => 'ON', - 10178 => 'ON', - 10179 => 'ON', - 10180 => 'ON', - 10181 => 'ON', - 10182 => 'ON', - 10183 => 'ON', - 10184 => 'ON', - 10185 => 'ON', - 10186 => 'ON', - 10192 => 'ON', - 10193 => 'ON', - 10194 => 'ON', - 10195 => 'ON', - 10196 => 'ON', - 10197 => 'ON', - 10198 => 'ON', - 10199 => 'ON', - 10200 => 'ON', - 10201 => 'ON', - 10202 => 'ON', - 10203 => 'ON', - 10204 => 'ON', - 10205 => 'ON', - 10206 => 'ON', - 10207 => 'ON', - 10208 => 'ON', - 10209 => 'ON', - 10210 => 'ON', - 10211 => 'ON', - 10212 => 'ON', - 10213 => 'ON', - 10214 => 'ON', - 10215 => 'ON', - 10216 => 'ON', - 10217 => 'ON', - 10218 => 'ON', - 10219 => 'ON', - 10224 => 'ON', - 10225 => 'ON', - 10226 => 'ON', - 10227 => 'ON', - 10228 => 'ON', - 10229 => 'ON', - 10230 => 'ON', - 10231 => 'ON', - 10232 => 'ON', - 10233 => 'ON', - 10234 => 'ON', - 10235 => 'ON', - 10236 => 'ON', - 10237 => 'ON', - 10238 => 'ON', - 10239 => 'ON', - 10240 => 'L', - 10241 => 'L', - 10242 => 'L', - 10243 => 'L', - 10244 => 'L', - 10245 => 'L', - 10246 => 'L', - 10247 => 'L', - 10248 => 'L', - 10249 => 'L', - 10250 => 'L', - 10251 => 'L', - 10252 => 'L', - 10253 => 'L', - 10254 => 'L', - 10255 => 'L', - 10256 => 'L', - 10257 => 'L', - 10258 => 'L', - 10259 => 'L', - 10260 => 'L', - 10261 => 'L', - 10262 => 'L', - 10263 => 'L', - 10264 => 'L', - 10265 => 'L', - 10266 => 'L', - 10267 => 'L', - 10268 => 'L', - 10269 => 'L', - 10270 => 'L', - 10271 => 'L', - 10272 => 'L', - 10273 => 'L', - 10274 => 'L', - 10275 => 'L', - 10276 => 'L', - 10277 => 'L', - 10278 => 'L', - 10279 => 'L', - 10280 => 'L', - 10281 => 'L', - 10282 => 'L', - 10283 => 'L', - 10284 => 'L', - 10285 => 'L', - 10286 => 'L', - 10287 => 'L', - 10288 => 'L', - 10289 => 'L', - 10290 => 'L', - 10291 => 'L', - 10292 => 'L', - 10293 => 'L', - 10294 => 'L', - 10295 => 'L', - 10296 => 'L', - 10297 => 'L', - 10298 => 'L', - 10299 => 'L', - 10300 => 'L', - 10301 => 'L', - 10302 => 'L', - 10303 => 'L', - 10304 => 'L', - 10305 => 'L', - 10306 => 'L', - 10307 => 'L', - 10308 => 'L', - 10309 => 'L', - 10310 => 'L', - 10311 => 'L', - 10312 => 'L', - 10313 => 'L', - 10314 => 'L', - 10315 => 'L', - 10316 => 'L', - 10317 => 'L', - 10318 => 'L', - 10319 => 'L', - 10320 => 'L', - 10321 => 'L', - 10322 => 'L', - 10323 => 'L', - 10324 => 'L', - 10325 => 'L', - 10326 => 'L', - 10327 => 'L', - 10328 => 'L', - 10329 => 'L', - 10330 => 'L', - 10331 => 'L', - 10332 => 'L', - 10333 => 'L', - 10334 => 'L', - 10335 => 'L', - 10336 => 'L', - 10337 => 'L', - 10338 => 'L', - 10339 => 'L', - 10340 => 'L', - 10341 => 'L', - 10342 => 'L', - 10343 => 'L', - 10344 => 'L', - 10345 => 'L', - 10346 => 'L', - 10347 => 'L', - 10348 => 'L', - 10349 => 'L', - 10350 => 'L', - 10351 => 'L', - 10352 => 'L', - 10353 => 'L', - 10354 => 'L', - 10355 => 'L', - 10356 => 'L', - 10357 => 'L', - 10358 => 'L', - 10359 => 'L', - 10360 => 'L', - 10361 => 'L', - 10362 => 'L', - 10363 => 'L', - 10364 => 'L', - 10365 => 'L', - 10366 => 'L', - 10367 => 'L', - 10368 => 'L', - 10369 => 'L', - 10370 => 'L', - 10371 => 'L', - 10372 => 'L', - 10373 => 'L', - 10374 => 'L', - 10375 => 'L', - 10376 => 'L', - 10377 => 'L', - 10378 => 'L', - 10379 => 'L', - 10380 => 'L', - 10381 => 'L', - 10382 => 'L', - 10383 => 'L', - 10384 => 'L', - 10385 => 'L', - 10386 => 'L', - 10387 => 'L', - 10388 => 'L', - 10389 => 'L', - 10390 => 'L', - 10391 => 'L', - 10392 => 'L', - 10393 => 'L', - 10394 => 'L', - 10395 => 'L', - 10396 => 'L', - 10397 => 'L', - 10398 => 'L', - 10399 => 'L', - 10400 => 'L', - 10401 => 'L', - 10402 => 'L', - 10403 => 'L', - 10404 => 'L', - 10405 => 'L', - 10406 => 'L', - 10407 => 'L', - 10408 => 'L', - 10409 => 'L', - 10410 => 'L', - 10411 => 'L', - 10412 => 'L', - 10413 => 'L', - 10414 => 'L', - 10415 => 'L', - 10416 => 'L', - 10417 => 'L', - 10418 => 'L', - 10419 => 'L', - 10420 => 'L', - 10421 => 'L', - 10422 => 'L', - 10423 => 'L', - 10424 => 'L', - 10425 => 'L', - 10426 => 'L', - 10427 => 'L', - 10428 => 'L', - 10429 => 'L', - 10430 => 'L', - 10431 => 'L', - 10432 => 'L', - 10433 => 'L', - 10434 => 'L', - 10435 => 'L', - 10436 => 'L', - 10437 => 'L', - 10438 => 'L', - 10439 => 'L', - 10440 => 'L', - 10441 => 'L', - 10442 => 'L', - 10443 => 'L', - 10444 => 'L', - 10445 => 'L', - 10446 => 'L', - 10447 => 'L', - 10448 => 'L', - 10449 => 'L', - 10450 => 'L', - 10451 => 'L', - 10452 => 'L', - 10453 => 'L', - 10454 => 'L', - 10455 => 'L', - 10456 => 'L', - 10457 => 'L', - 10458 => 'L', - 10459 => 'L', - 10460 => 'L', - 10461 => 'L', - 10462 => 'L', - 10463 => 'L', - 10464 => 'L', - 10465 => 'L', - 10466 => 'L', - 10467 => 'L', - 10468 => 'L', - 10469 => 'L', - 10470 => 'L', - 10471 => 'L', - 10472 => 'L', - 10473 => 'L', - 10474 => 'L', - 10475 => 'L', - 10476 => 'L', - 10477 => 'L', - 10478 => 'L', - 10479 => 'L', - 10480 => 'L', - 10481 => 'L', - 10482 => 'L', - 10483 => 'L', - 10484 => 'L', - 10485 => 'L', - 10486 => 'L', - 10487 => 'L', - 10488 => 'L', - 10489 => 'L', - 10490 => 'L', - 10491 => 'L', - 10492 => 'L', - 10493 => 'L', - 10494 => 'L', - 10495 => 'L', - 10496 => 'ON', - 10497 => 'ON', - 10498 => 'ON', - 10499 => 'ON', - 10500 => 'ON', - 10501 => 'ON', - 10502 => 'ON', - 10503 => 'ON', - 10504 => 'ON', - 10505 => 'ON', - 10506 => 'ON', - 10507 => 'ON', - 10508 => 'ON', - 10509 => 'ON', - 10510 => 'ON', - 10511 => 'ON', - 10512 => 'ON', - 10513 => 'ON', - 10514 => 'ON', - 10515 => 'ON', - 10516 => 'ON', - 10517 => 'ON', - 10518 => 'ON', - 10519 => 'ON', - 10520 => 'ON', - 10521 => 'ON', - 10522 => 'ON', - 10523 => 'ON', - 10524 => 'ON', - 10525 => 'ON', - 10526 => 'ON', - 10527 => 'ON', - 10528 => 'ON', - 10529 => 'ON', - 10530 => 'ON', - 10531 => 'ON', - 10532 => 'ON', - 10533 => 'ON', - 10534 => 'ON', - 10535 => 'ON', - 10536 => 'ON', - 10537 => 'ON', - 10538 => 'ON', - 10539 => 'ON', - 10540 => 'ON', - 10541 => 'ON', - 10542 => 'ON', - 10543 => 'ON', - 10544 => 'ON', - 10545 => 'ON', - 10546 => 'ON', - 10547 => 'ON', - 10548 => 'ON', - 10549 => 'ON', - 10550 => 'ON', - 10551 => 'ON', - 10552 => 'ON', - 10553 => 'ON', - 10554 => 'ON', - 10555 => 'ON', - 10556 => 'ON', - 10557 => 'ON', - 10558 => 'ON', - 10559 => 'ON', - 10560 => 'ON', - 10561 => 'ON', - 10562 => 'ON', - 10563 => 'ON', - 10564 => 'ON', - 10565 => 'ON', - 10566 => 'ON', - 10567 => 'ON', - 10568 => 'ON', - 10569 => 'ON', - 10570 => 'ON', - 10571 => 'ON', - 10572 => 'ON', - 10573 => 'ON', - 10574 => 'ON', - 10575 => 'ON', - 10576 => 'ON', - 10577 => 'ON', - 10578 => 'ON', - 10579 => 'ON', - 10580 => 'ON', - 10581 => 'ON', - 10582 => 'ON', - 10583 => 'ON', - 10584 => 'ON', - 10585 => 'ON', - 10586 => 'ON', - 10587 => 'ON', - 10588 => 'ON', - 10589 => 'ON', - 10590 => 'ON', - 10591 => 'ON', - 10592 => 'ON', - 10593 => 'ON', - 10594 => 'ON', - 10595 => 'ON', - 10596 => 'ON', - 10597 => 'ON', - 10598 => 'ON', - 10599 => 'ON', - 10600 => 'ON', - 10601 => 'ON', - 10602 => 'ON', - 10603 => 'ON', - 10604 => 'ON', - 10605 => 'ON', - 10606 => 'ON', - 10607 => 'ON', - 10608 => 'ON', - 10609 => 'ON', - 10610 => 'ON', - 10611 => 'ON', - 10612 => 'ON', - 10613 => 'ON', - 10614 => 'ON', - 10615 => 'ON', - 10616 => 'ON', - 10617 => 'ON', - 10618 => 'ON', - 10619 => 'ON', - 10620 => 'ON', - 10621 => 'ON', - 10622 => 'ON', - 10623 => 'ON', - 10624 => 'ON', - 10625 => 'ON', - 10626 => 'ON', - 10627 => 'ON', - 10628 => 'ON', - 10629 => 'ON', - 10630 => 'ON', - 10631 => 'ON', - 10632 => 'ON', - 10633 => 'ON', - 10634 => 'ON', - 10635 => 'ON', - 10636 => 'ON', - 10637 => 'ON', - 10638 => 'ON', - 10639 => 'ON', - 10640 => 'ON', - 10641 => 'ON', - 10642 => 'ON', - 10643 => 'ON', - 10644 => 'ON', - 10645 => 'ON', - 10646 => 'ON', - 10647 => 'ON', - 10648 => 'ON', - 10649 => 'ON', - 10650 => 'ON', - 10651 => 'ON', - 10652 => 'ON', - 10653 => 'ON', - 10654 => 'ON', - 10655 => 'ON', - 10656 => 'ON', - 10657 => 'ON', - 10658 => 'ON', - 10659 => 'ON', - 10660 => 'ON', - 10661 => 'ON', - 10662 => 'ON', - 10663 => 'ON', - 10664 => 'ON', - 10665 => 'ON', - 10666 => 'ON', - 10667 => 'ON', - 10668 => 'ON', - 10669 => 'ON', - 10670 => 'ON', - 10671 => 'ON', - 10672 => 'ON', - 10673 => 'ON', - 10674 => 'ON', - 10675 => 'ON', - 10676 => 'ON', - 10677 => 'ON', - 10678 => 'ON', - 10679 => 'ON', - 10680 => 'ON', - 10681 => 'ON', - 10682 => 'ON', - 10683 => 'ON', - 10684 => 'ON', - 10685 => 'ON', - 10686 => 'ON', - 10687 => 'ON', - 10688 => 'ON', - 10689 => 'ON', - 10690 => 'ON', - 10691 => 'ON', - 10692 => 'ON', - 10693 => 'ON', - 10694 => 'ON', - 10695 => 'ON', - 10696 => 'ON', - 10697 => 'ON', - 10698 => 'ON', - 10699 => 'ON', - 10700 => 'ON', - 10701 => 'ON', - 10702 => 'ON', - 10703 => 'ON', - 10704 => 'ON', - 10705 => 'ON', - 10706 => 'ON', - 10707 => 'ON', - 10708 => 'ON', - 10709 => 'ON', - 10710 => 'ON', - 10711 => 'ON', - 10712 => 'ON', - 10713 => 'ON', - 10714 => 'ON', - 10715 => 'ON', - 10716 => 'ON', - 10717 => 'ON', - 10718 => 'ON', - 10719 => 'ON', - 10720 => 'ON', - 10721 => 'ON', - 10722 => 'ON', - 10723 => 'ON', - 10724 => 'ON', - 10725 => 'ON', - 10726 => 'ON', - 10727 => 'ON', - 10728 => 'ON', - 10729 => 'ON', - 10730 => 'ON', - 10731 => 'ON', - 10732 => 'ON', - 10733 => 'ON', - 10734 => 'ON', - 10735 => 'ON', - 10736 => 'ON', - 10737 => 'ON', - 10738 => 'ON', - 10739 => 'ON', - 10740 => 'ON', - 10741 => 'ON', - 10742 => 'ON', - 10743 => 'ON', - 10744 => 'ON', - 10745 => 'ON', - 10746 => 'ON', - 10747 => 'ON', - 10748 => 'ON', - 10749 => 'ON', - 10750 => 'ON', - 10751 => 'ON', - 10752 => 'ON', - 10753 => 'ON', - 10754 => 'ON', - 10755 => 'ON', - 10756 => 'ON', - 10757 => 'ON', - 10758 => 'ON', - 10759 => 'ON', - 10760 => 'ON', - 10761 => 'ON', - 10762 => 'ON', - 10763 => 'ON', - 10764 => 'ON', - 10765 => 'ON', - 10766 => 'ON', - 10767 => 'ON', - 10768 => 'ON', - 10769 => 'ON', - 10770 => 'ON', - 10771 => 'ON', - 10772 => 'ON', - 10773 => 'ON', - 10774 => 'ON', - 10775 => 'ON', - 10776 => 'ON', - 10777 => 'ON', - 10778 => 'ON', - 10779 => 'ON', - 10780 => 'ON', - 10781 => 'ON', - 10782 => 'ON', - 10783 => 'ON', - 10784 => 'ON', - 10785 => 'ON', - 10786 => 'ON', - 10787 => 'ON', - 10788 => 'ON', - 10789 => 'ON', - 10790 => 'ON', - 10791 => 'ON', - 10792 => 'ON', - 10793 => 'ON', - 10794 => 'ON', - 10795 => 'ON', - 10796 => 'ON', - 10797 => 'ON', - 10798 => 'ON', - 10799 => 'ON', - 10800 => 'ON', - 10801 => 'ON', - 10802 => 'ON', - 10803 => 'ON', - 10804 => 'ON', - 10805 => 'ON', - 10806 => 'ON', - 10807 => 'ON', - 10808 => 'ON', - 10809 => 'ON', - 10810 => 'ON', - 10811 => 'ON', - 10812 => 'ON', - 10813 => 'ON', - 10814 => 'ON', - 10815 => 'ON', - 10816 => 'ON', - 10817 => 'ON', - 10818 => 'ON', - 10819 => 'ON', - 10820 => 'ON', - 10821 => 'ON', - 10822 => 'ON', - 10823 => 'ON', - 10824 => 'ON', - 10825 => 'ON', - 10826 => 'ON', - 10827 => 'ON', - 10828 => 'ON', - 10829 => 'ON', - 10830 => 'ON', - 10831 => 'ON', - 10832 => 'ON', - 10833 => 'ON', - 10834 => 'ON', - 10835 => 'ON', - 10836 => 'ON', - 10837 => 'ON', - 10838 => 'ON', - 10839 => 'ON', - 10840 => 'ON', - 10841 => 'ON', - 10842 => 'ON', - 10843 => 'ON', - 10844 => 'ON', - 10845 => 'ON', - 10846 => 'ON', - 10847 => 'ON', - 10848 => 'ON', - 10849 => 'ON', - 10850 => 'ON', - 10851 => 'ON', - 10852 => 'ON', - 10853 => 'ON', - 10854 => 'ON', - 10855 => 'ON', - 10856 => 'ON', - 10857 => 'ON', - 10858 => 'ON', - 10859 => 'ON', - 10860 => 'ON', - 10861 => 'ON', - 10862 => 'ON', - 10863 => 'ON', - 10864 => 'ON', - 10865 => 'ON', - 10866 => 'ON', - 10867 => 'ON', - 10868 => 'ON', - 10869 => 'ON', - 10870 => 'ON', - 10871 => 'ON', - 10872 => 'ON', - 10873 => 'ON', - 10874 => 'ON', - 10875 => 'ON', - 10876 => 'ON', - 10877 => 'ON', - 10878 => 'ON', - 10879 => 'ON', - 10880 => 'ON', - 10881 => 'ON', - 10882 => 'ON', - 10883 => 'ON', - 10884 => 'ON', - 10885 => 'ON', - 10886 => 'ON', - 10887 => 'ON', - 10888 => 'ON', - 10889 => 'ON', - 10890 => 'ON', - 10891 => 'ON', - 10892 => 'ON', - 10893 => 'ON', - 10894 => 'ON', - 10895 => 'ON', - 10896 => 'ON', - 10897 => 'ON', - 10898 => 'ON', - 10899 => 'ON', - 10900 => 'ON', - 10901 => 'ON', - 10902 => 'ON', - 10903 => 'ON', - 10904 => 'ON', - 10905 => 'ON', - 10906 => 'ON', - 10907 => 'ON', - 10908 => 'ON', - 10909 => 'ON', - 10910 => 'ON', - 10911 => 'ON', - 10912 => 'ON', - 10913 => 'ON', - 10914 => 'ON', - 10915 => 'ON', - 10916 => 'ON', - 10917 => 'ON', - 10918 => 'ON', - 10919 => 'ON', - 10920 => 'ON', - 10921 => 'ON', - 10922 => 'ON', - 10923 => 'ON', - 10924 => 'ON', - 10925 => 'ON', - 10926 => 'ON', - 10927 => 'ON', - 10928 => 'ON', - 10929 => 'ON', - 10930 => 'ON', - 10931 => 'ON', - 10932 => 'ON', - 10933 => 'ON', - 10934 => 'ON', - 10935 => 'ON', - 10936 => 'ON', - 10937 => 'ON', - 10938 => 'ON', - 10939 => 'ON', - 10940 => 'ON', - 10941 => 'ON', - 10942 => 'ON', - 10943 => 'ON', - 10944 => 'ON', - 10945 => 'ON', - 10946 => 'ON', - 10947 => 'ON', - 10948 => 'ON', - 10949 => 'ON', - 10950 => 'ON', - 10951 => 'ON', - 10952 => 'ON', - 10953 => 'ON', - 10954 => 'ON', - 10955 => 'ON', - 10956 => 'ON', - 10957 => 'ON', - 10958 => 'ON', - 10959 => 'ON', - 10960 => 'ON', - 10961 => 'ON', - 10962 => 'ON', - 10963 => 'ON', - 10964 => 'ON', - 10965 => 'ON', - 10966 => 'ON', - 10967 => 'ON', - 10968 => 'ON', - 10969 => 'ON', - 10970 => 'ON', - 10971 => 'ON', - 10972 => 'ON', - 10973 => 'ON', - 10974 => 'ON', - 10975 => 'ON', - 10976 => 'ON', - 10977 => 'ON', - 10978 => 'ON', - 10979 => 'ON', - 10980 => 'ON', - 10981 => 'ON', - 10982 => 'ON', - 10983 => 'ON', - 10984 => 'ON', - 10985 => 'ON', - 10986 => 'ON', - 10987 => 'ON', - 10988 => 'ON', - 10989 => 'ON', - 10990 => 'ON', - 10991 => 'ON', - 10992 => 'ON', - 10993 => 'ON', - 10994 => 'ON', - 10995 => 'ON', - 10996 => 'ON', - 10997 => 'ON', - 10998 => 'ON', - 10999 => 'ON', - 11000 => 'ON', - 11001 => 'ON', - 11002 => 'ON', - 11003 => 'ON', - 11004 => 'ON', - 11005 => 'ON', - 11006 => 'ON', - 11007 => 'ON', - 11008 => 'ON', - 11009 => 'ON', - 11010 => 'ON', - 11011 => 'ON', - 11012 => 'ON', - 11013 => 'ON', - 11014 => 'ON', - 11015 => 'ON', - 11016 => 'ON', - 11017 => 'ON', - 11018 => 'ON', - 11019 => 'ON', - 11020 => 'ON', - 11021 => 'ON', - 11022 => 'ON', - 11023 => 'ON', - 11024 => 'ON', - 11025 => 'ON', - 11026 => 'ON', - 11027 => 'ON', - 11028 => 'ON', - 11029 => 'ON', - 11030 => 'ON', - 11031 => 'ON', - 11032 => 'ON', - 11033 => 'ON', - 11034 => 'ON', - 11040 => 'ON', - 11041 => 'ON', - 11042 => 'ON', - 11043 => 'ON', - 11264 => 'L', - 11265 => 'L', - 11266 => 'L', - 11267 => 'L', - 11268 => 'L', - 11269 => 'L', - 11270 => 'L', - 11271 => 'L', - 11272 => 'L', - 11273 => 'L', - 11274 => 'L', - 11275 => 'L', - 11276 => 'L', - 11277 => 'L', - 11278 => 'L', - 11279 => 'L', - 11280 => 'L', - 11281 => 'L', - 11282 => 'L', - 11283 => 'L', - 11284 => 'L', - 11285 => 'L', - 11286 => 'L', - 11287 => 'L', - 11288 => 'L', - 11289 => 'L', - 11290 => 'L', - 11291 => 'L', - 11292 => 'L', - 11293 => 'L', - 11294 => 'L', - 11295 => 'L', - 11296 => 'L', - 11297 => 'L', - 11298 => 'L', - 11299 => 'L', - 11300 => 'L', - 11301 => 'L', - 11302 => 'L', - 11303 => 'L', - 11304 => 'L', - 11305 => 'L', - 11306 => 'L', - 11307 => 'L', - 11308 => 'L', - 11309 => 'L', - 11310 => 'L', - 11312 => 'L', - 11313 => 'L', - 11314 => 'L', - 11315 => 'L', - 11316 => 'L', - 11317 => 'L', - 11318 => 'L', - 11319 => 'L', - 11320 => 'L', - 11321 => 'L', - 11322 => 'L', - 11323 => 'L', - 11324 => 'L', - 11325 => 'L', - 11326 => 'L', - 11327 => 'L', - 11328 => 'L', - 11329 => 'L', - 11330 => 'L', - 11331 => 'L', - 11332 => 'L', - 11333 => 'L', - 11334 => 'L', - 11335 => 'L', - 11336 => 'L', - 11337 => 'L', - 11338 => 'L', - 11339 => 'L', - 11340 => 'L', - 11341 => 'L', - 11342 => 'L', - 11343 => 'L', - 11344 => 'L', - 11345 => 'L', - 11346 => 'L', - 11347 => 'L', - 11348 => 'L', - 11349 => 'L', - 11350 => 'L', - 11351 => 'L', - 11352 => 'L', - 11353 => 'L', - 11354 => 'L', - 11355 => 'L', - 11356 => 'L', - 11357 => 'L', - 11358 => 'L', - 11360 => 'L', - 11361 => 'L', - 11362 => 'L', - 11363 => 'L', - 11364 => 'L', - 11365 => 'L', - 11366 => 'L', - 11367 => 'L', - 11368 => 'L', - 11369 => 'L', - 11370 => 'L', - 11371 => 'L', - 11372 => 'L', - 11380 => 'L', - 11381 => 'L', - 11382 => 'L', - 11383 => 'L', - 11392 => 'L', - 11393 => 'L', - 11394 => 'L', - 11395 => 'L', - 11396 => 'L', - 11397 => 'L', - 11398 => 'L', - 11399 => 'L', - 11400 => 'L', - 11401 => 'L', - 11402 => 'L', - 11403 => 'L', - 11404 => 'L', - 11405 => 'L', - 11406 => 'L', - 11407 => 'L', - 11408 => 'L', - 11409 => 'L', - 11410 => 'L', - 11411 => 'L', - 11412 => 'L', - 11413 => 'L', - 11414 => 'L', - 11415 => 'L', - 11416 => 'L', - 11417 => 'L', - 11418 => 'L', - 11419 => 'L', - 11420 => 'L', - 11421 => 'L', - 11422 => 'L', - 11423 => 'L', - 11424 => 'L', - 11425 => 'L', - 11426 => 'L', - 11427 => 'L', - 11428 => 'L', - 11429 => 'L', - 11430 => 'L', - 11431 => 'L', - 11432 => 'L', - 11433 => 'L', - 11434 => 'L', - 11435 => 'L', - 11436 => 'L', - 11437 => 'L', - 11438 => 'L', - 11439 => 'L', - 11440 => 'L', - 11441 => 'L', - 11442 => 'L', - 11443 => 'L', - 11444 => 'L', - 11445 => 'L', - 11446 => 'L', - 11447 => 'L', - 11448 => 'L', - 11449 => 'L', - 11450 => 'L', - 11451 => 'L', - 11452 => 'L', - 11453 => 'L', - 11454 => 'L', - 11455 => 'L', - 11456 => 'L', - 11457 => 'L', - 11458 => 'L', - 11459 => 'L', - 11460 => 'L', - 11461 => 'L', - 11462 => 'L', - 11463 => 'L', - 11464 => 'L', - 11465 => 'L', - 11466 => 'L', - 11467 => 'L', - 11468 => 'L', - 11469 => 'L', - 11470 => 'L', - 11471 => 'L', - 11472 => 'L', - 11473 => 'L', - 11474 => 'L', - 11475 => 'L', - 11476 => 'L', - 11477 => 'L', - 11478 => 'L', - 11479 => 'L', - 11480 => 'L', - 11481 => 'L', - 11482 => 'L', - 11483 => 'L', - 11484 => 'L', - 11485 => 'L', - 11486 => 'L', - 11487 => 'L', - 11488 => 'L', - 11489 => 'L', - 11490 => 'L', - 11491 => 'L', - 11492 => 'L', - 11493 => 'ON', - 11494 => 'ON', - 11495 => 'ON', - 11496 => 'ON', - 11497 => 'ON', - 11498 => 'ON', - 11513 => 'ON', - 11514 => 'ON', - 11515 => 'ON', - 11516 => 'ON', - 11517 => 'ON', - 11518 => 'ON', - 11519 => 'ON', - 11520 => 'L', - 11521 => 'L', - 11522 => 'L', - 11523 => 'L', - 11524 => 'L', - 11525 => 'L', - 11526 => 'L', - 11527 => 'L', - 11528 => 'L', - 11529 => 'L', - 11530 => 'L', - 11531 => 'L', - 11532 => 'L', - 11533 => 'L', - 11534 => 'L', - 11535 => 'L', - 11536 => 'L', - 11537 => 'L', - 11538 => 'L', - 11539 => 'L', - 11540 => 'L', - 11541 => 'L', - 11542 => 'L', - 11543 => 'L', - 11544 => 'L', - 11545 => 'L', - 11546 => 'L', - 11547 => 'L', - 11548 => 'L', - 11549 => 'L', - 11550 => 'L', - 11551 => 'L', - 11552 => 'L', - 11553 => 'L', - 11554 => 'L', - 11555 => 'L', - 11556 => 'L', - 11557 => 'L', - 11568 => 'L', - 11569 => 'L', - 11570 => 'L', - 11571 => 'L', - 11572 => 'L', - 11573 => 'L', - 11574 => 'L', - 11575 => 'L', - 11576 => 'L', - 11577 => 'L', - 11578 => 'L', - 11579 => 'L', - 11580 => 'L', - 11581 => 'L', - 11582 => 'L', - 11583 => 'L', - 11584 => 'L', - 11585 => 'L', - 11586 => 'L', - 11587 => 'L', - 11588 => 'L', - 11589 => 'L', - 11590 => 'L', - 11591 => 'L', - 11592 => 'L', - 11593 => 'L', - 11594 => 'L', - 11595 => 'L', - 11596 => 'L', - 11597 => 'L', - 11598 => 'L', - 11599 => 'L', - 11600 => 'L', - 11601 => 'L', - 11602 => 'L', - 11603 => 'L', - 11604 => 'L', - 11605 => 'L', - 11606 => 'L', - 11607 => 'L', - 11608 => 'L', - 11609 => 'L', - 11610 => 'L', - 11611 => 'L', - 11612 => 'L', - 11613 => 'L', - 11614 => 'L', - 11615 => 'L', - 11616 => 'L', - 11617 => 'L', - 11618 => 'L', - 11619 => 'L', - 11620 => 'L', - 11621 => 'L', - 11631 => 'L', - 11648 => 'L', - 11649 => 'L', - 11650 => 'L', - 11651 => 'L', - 11652 => 'L', - 11653 => 'L', - 11654 => 'L', - 11655 => 'L', - 11656 => 'L', - 11657 => 'L', - 11658 => 'L', - 11659 => 'L', - 11660 => 'L', - 11661 => 'L', - 11662 => 'L', - 11663 => 'L', - 11664 => 'L', - 11665 => 'L', - 11666 => 'L', - 11667 => 'L', - 11668 => 'L', - 11669 => 'L', - 11670 => 'L', - 11680 => 'L', - 11681 => 'L', - 11682 => 'L', - 11683 => 'L', - 11684 => 'L', - 11685 => 'L', - 11686 => 'L', - 11688 => 'L', - 11689 => 'L', - 11690 => 'L', - 11691 => 'L', - 11692 => 'L', - 11693 => 'L', - 11694 => 'L', - 11696 => 'L', - 11697 => 'L', - 11698 => 'L', - 11699 => 'L', - 11700 => 'L', - 11701 => 'L', - 11702 => 'L', - 11704 => 'L', - 11705 => 'L', - 11706 => 'L', - 11707 => 'L', - 11708 => 'L', - 11709 => 'L', - 11710 => 'L', - 11712 => 'L', - 11713 => 'L', - 11714 => 'L', - 11715 => 'L', - 11716 => 'L', - 11717 => 'L', - 11718 => 'L', - 11720 => 'L', - 11721 => 'L', - 11722 => 'L', - 11723 => 'L', - 11724 => 'L', - 11725 => 'L', - 11726 => 'L', - 11728 => 'L', - 11729 => 'L', - 11730 => 'L', - 11731 => 'L', - 11732 => 'L', - 11733 => 'L', - 11734 => 'L', - 11736 => 'L', - 11737 => 'L', - 11738 => 'L', - 11739 => 'L', - 11740 => 'L', - 11741 => 'L', - 11742 => 'L', - 11776 => 'ON', - 11777 => 'ON', - 11778 => 'ON', - 11779 => 'ON', - 11780 => 'ON', - 11781 => 'ON', - 11782 => 'ON', - 11783 => 'ON', - 11784 => 'ON', - 11785 => 'ON', - 11786 => 'ON', - 11787 => 'ON', - 11788 => 'ON', - 11789 => 'ON', - 11790 => 'ON', - 11791 => 'ON', - 11792 => 'ON', - 11793 => 'ON', - 11794 => 'ON', - 11795 => 'ON', - 11796 => 'ON', - 11797 => 'ON', - 11798 => 'ON', - 11799 => 'ON', - 11804 => 'ON', - 11805 => 'ON', - 11904 => 'ON', - 11905 => 'ON', - 11906 => 'ON', - 11907 => 'ON', - 11908 => 'ON', - 11909 => 'ON', - 11910 => 'ON', - 11911 => 'ON', - 11912 => 'ON', - 11913 => 'ON', - 11914 => 'ON', - 11915 => 'ON', - 11916 => 'ON', - 11917 => 'ON', - 11918 => 'ON', - 11919 => 'ON', - 11920 => 'ON', - 11921 => 'ON', - 11922 => 'ON', - 11923 => 'ON', - 11924 => 'ON', - 11925 => 'ON', - 11926 => 'ON', - 11927 => 'ON', - 11928 => 'ON', - 11929 => 'ON', - 11931 => 'ON', - 11932 => 'ON', - 11933 => 'ON', - 11934 => 'ON', - 11935 => 'ON', - 11936 => 'ON', - 11937 => 'ON', - 11938 => 'ON', - 11939 => 'ON', - 11940 => 'ON', - 11941 => 'ON', - 11942 => 'ON', - 11943 => 'ON', - 11944 => 'ON', - 11945 => 'ON', - 11946 => 'ON', - 11947 => 'ON', - 11948 => 'ON', - 11949 => 'ON', - 11950 => 'ON', - 11951 => 'ON', - 11952 => 'ON', - 11953 => 'ON', - 11954 => 'ON', - 11955 => 'ON', - 11956 => 'ON', - 11957 => 'ON', - 11958 => 'ON', - 11959 => 'ON', - 11960 => 'ON', - 11961 => 'ON', - 11962 => 'ON', - 11963 => 'ON', - 11964 => 'ON', - 11965 => 'ON', - 11966 => 'ON', - 11967 => 'ON', - 11968 => 'ON', - 11969 => 'ON', - 11970 => 'ON', - 11971 => 'ON', - 11972 => 'ON', - 11973 => 'ON', - 11974 => 'ON', - 11975 => 'ON', - 11976 => 'ON', - 11977 => 'ON', - 11978 => 'ON', - 11979 => 'ON', - 11980 => 'ON', - 11981 => 'ON', - 11982 => 'ON', - 11983 => 'ON', - 11984 => 'ON', - 11985 => 'ON', - 11986 => 'ON', - 11987 => 'ON', - 11988 => 'ON', - 11989 => 'ON', - 11990 => 'ON', - 11991 => 'ON', - 11992 => 'ON', - 11993 => 'ON', - 11994 => 'ON', - 11995 => 'ON', - 11996 => 'ON', - 11997 => 'ON', - 11998 => 'ON', - 11999 => 'ON', - 12000 => 'ON', - 12001 => 'ON', - 12002 => 'ON', - 12003 => 'ON', - 12004 => 'ON', - 12005 => 'ON', - 12006 => 'ON', - 12007 => 'ON', - 12008 => 'ON', - 12009 => 'ON', - 12010 => 'ON', - 12011 => 'ON', - 12012 => 'ON', - 12013 => 'ON', - 12014 => 'ON', - 12015 => 'ON', - 12016 => 'ON', - 12017 => 'ON', - 12018 => 'ON', - 12019 => 'ON', - 12032 => 'ON', - 12033 => 'ON', - 12034 => 'ON', - 12035 => 'ON', - 12036 => 'ON', - 12037 => 'ON', - 12038 => 'ON', - 12039 => 'ON', - 12040 => 'ON', - 12041 => 'ON', - 12042 => 'ON', - 12043 => 'ON', - 12044 => 'ON', - 12045 => 'ON', - 12046 => 'ON', - 12047 => 'ON', - 12048 => 'ON', - 12049 => 'ON', - 12050 => 'ON', - 12051 => 'ON', - 12052 => 'ON', - 12053 => 'ON', - 12054 => 'ON', - 12055 => 'ON', - 12056 => 'ON', - 12057 => 'ON', - 12058 => 'ON', - 12059 => 'ON', - 12060 => 'ON', - 12061 => 'ON', - 12062 => 'ON', - 12063 => 'ON', - 12064 => 'ON', - 12065 => 'ON', - 12066 => 'ON', - 12067 => 'ON', - 12068 => 'ON', - 12069 => 'ON', - 12070 => 'ON', - 12071 => 'ON', - 12072 => 'ON', - 12073 => 'ON', - 12074 => 'ON', - 12075 => 'ON', - 12076 => 'ON', - 12077 => 'ON', - 12078 => 'ON', - 12079 => 'ON', - 12080 => 'ON', - 12081 => 'ON', - 12082 => 'ON', - 12083 => 'ON', - 12084 => 'ON', - 12085 => 'ON', - 12086 => 'ON', - 12087 => 'ON', - 12088 => 'ON', - 12089 => 'ON', - 12090 => 'ON', - 12091 => 'ON', - 12092 => 'ON', - 12093 => 'ON', - 12094 => 'ON', - 12095 => 'ON', - 12096 => 'ON', - 12097 => 'ON', - 12098 => 'ON', - 12099 => 'ON', - 12100 => 'ON', - 12101 => 'ON', - 12102 => 'ON', - 12103 => 'ON', - 12104 => 'ON', - 12105 => 'ON', - 12106 => 'ON', - 12107 => 'ON', - 12108 => 'ON', - 12109 => 'ON', - 12110 => 'ON', - 12111 => 'ON', - 12112 => 'ON', - 12113 => 'ON', - 12114 => 'ON', - 12115 => 'ON', - 12116 => 'ON', - 12117 => 'ON', - 12118 => 'ON', - 12119 => 'ON', - 12120 => 'ON', - 12121 => 'ON', - 12122 => 'ON', - 12123 => 'ON', - 12124 => 'ON', - 12125 => 'ON', - 12126 => 'ON', - 12127 => 'ON', - 12128 => 'ON', - 12129 => 'ON', - 12130 => 'ON', - 12131 => 'ON', - 12132 => 'ON', - 12133 => 'ON', - 12134 => 'ON', - 12135 => 'ON', - 12136 => 'ON', - 12137 => 'ON', - 12138 => 'ON', - 12139 => 'ON', - 12140 => 'ON', - 12141 => 'ON', - 12142 => 'ON', - 12143 => 'ON', - 12144 => 'ON', - 12145 => 'ON', - 12146 => 'ON', - 12147 => 'ON', - 12148 => 'ON', - 12149 => 'ON', - 12150 => 'ON', - 12151 => 'ON', - 12152 => 'ON', - 12153 => 'ON', - 12154 => 'ON', - 12155 => 'ON', - 12156 => 'ON', - 12157 => 'ON', - 12158 => 'ON', - 12159 => 'ON', - 12160 => 'ON', - 12161 => 'ON', - 12162 => 'ON', - 12163 => 'ON', - 12164 => 'ON', - 12165 => 'ON', - 12166 => 'ON', - 12167 => 'ON', - 12168 => 'ON', - 12169 => 'ON', - 12170 => 'ON', - 12171 => 'ON', - 12172 => 'ON', - 12173 => 'ON', - 12174 => 'ON', - 12175 => 'ON', - 12176 => 'ON', - 12177 => 'ON', - 12178 => 'ON', - 12179 => 'ON', - 12180 => 'ON', - 12181 => 'ON', - 12182 => 'ON', - 12183 => 'ON', - 12184 => 'ON', - 12185 => 'ON', - 12186 => 'ON', - 12187 => 'ON', - 12188 => 'ON', - 12189 => 'ON', - 12190 => 'ON', - 12191 => 'ON', - 12192 => 'ON', - 12193 => 'ON', - 12194 => 'ON', - 12195 => 'ON', - 12196 => 'ON', - 12197 => 'ON', - 12198 => 'ON', - 12199 => 'ON', - 12200 => 'ON', - 12201 => 'ON', - 12202 => 'ON', - 12203 => 'ON', - 12204 => 'ON', - 12205 => 'ON', - 12206 => 'ON', - 12207 => 'ON', - 12208 => 'ON', - 12209 => 'ON', - 12210 => 'ON', - 12211 => 'ON', - 12212 => 'ON', - 12213 => 'ON', - 12214 => 'ON', - 12215 => 'ON', - 12216 => 'ON', - 12217 => 'ON', - 12218 => 'ON', - 12219 => 'ON', - 12220 => 'ON', - 12221 => 'ON', - 12222 => 'ON', - 12223 => 'ON', - 12224 => 'ON', - 12225 => 'ON', - 12226 => 'ON', - 12227 => 'ON', - 12228 => 'ON', - 12229 => 'ON', - 12230 => 'ON', - 12231 => 'ON', - 12232 => 'ON', - 12233 => 'ON', - 12234 => 'ON', - 12235 => 'ON', - 12236 => 'ON', - 12237 => 'ON', - 12238 => 'ON', - 12239 => 'ON', - 12240 => 'ON', - 12241 => 'ON', - 12242 => 'ON', - 12243 => 'ON', - 12244 => 'ON', - 12245 => 'ON', - 12272 => 'ON', - 12273 => 'ON', - 12274 => 'ON', - 12275 => 'ON', - 12276 => 'ON', - 12277 => 'ON', - 12278 => 'ON', - 12279 => 'ON', - 12280 => 'ON', - 12281 => 'ON', - 12282 => 'ON', - 12283 => 'ON', - 12288 => 'WS', - 12289 => 'ON', - 12290 => 'ON', - 12291 => 'ON', - 12292 => 'ON', - 12293 => 'L', - 12294 => 'L', - 12295 => 'L', - 12296 => 'ON', - 12297 => 'ON', - 12298 => 'ON', - 12299 => 'ON', - 12300 => 'ON', - 12301 => 'ON', - 12302 => 'ON', - 12303 => 'ON', - 12304 => 'ON', - 12305 => 'ON', - 12306 => 'ON', - 12307 => 'ON', - 12308 => 'ON', - 12309 => 'ON', - 12310 => 'ON', - 12311 => 'ON', - 12312 => 'ON', - 12313 => 'ON', - 12314 => 'ON', - 12315 => 'ON', - 12316 => 'ON', - 12317 => 'ON', - 12318 => 'ON', - 12319 => 'ON', - 12320 => 'ON', - 12321 => 'L', - 12322 => 'L', - 12323 => 'L', - 12324 => 'L', - 12325 => 'L', - 12326 => 'L', - 12327 => 'L', - 12328 => 'L', - 12329 => 'L', - 12330 => 'NSM', - 12331 => 'NSM', - 12332 => 'NSM', - 12333 => 'NSM', - 12334 => 'NSM', - 12335 => 'NSM', - 12336 => 'ON', - 12337 => 'L', - 12338 => 'L', - 12339 => 'L', - 12340 => 'L', - 12341 => 'L', - 12342 => 'ON', - 12343 => 'ON', - 12344 => 'L', - 12345 => 'L', - 12346 => 'L', - 12347 => 'L', - 12348 => 'L', - 12349 => 'ON', - 12350 => 'ON', - 12351 => 'ON', - 12353 => 'L', - 12354 => 'L', - 12355 => 'L', - 12356 => 'L', - 12357 => 'L', - 12358 => 'L', - 12359 => 'L', - 12360 => 'L', - 12361 => 'L', - 12362 => 'L', - 12363 => 'L', - 12364 => 'L', - 12365 => 'L', - 12366 => 'L', - 12367 => 'L', - 12368 => 'L', - 12369 => 'L', - 12370 => 'L', - 12371 => 'L', - 12372 => 'L', - 12373 => 'L', - 12374 => 'L', - 12375 => 'L', - 12376 => 'L', - 12377 => 'L', - 12378 => 'L', - 12379 => 'L', - 12380 => 'L', - 12381 => 'L', - 12382 => 'L', - 12383 => 'L', - 12384 => 'L', - 12385 => 'L', - 12386 => 'L', - 12387 => 'L', - 12388 => 'L', - 12389 => 'L', - 12390 => 'L', - 12391 => 'L', - 12392 => 'L', - 12393 => 'L', - 12394 => 'L', - 12395 => 'L', - 12396 => 'L', - 12397 => 'L', - 12398 => 'L', - 12399 => 'L', - 12400 => 'L', - 12401 => 'L', - 12402 => 'L', - 12403 => 'L', - 12404 => 'L', - 12405 => 'L', - 12406 => 'L', - 12407 => 'L', - 12408 => 'L', - 12409 => 'L', - 12410 => 'L', - 12411 => 'L', - 12412 => 'L', - 12413 => 'L', - 12414 => 'L', - 12415 => 'L', - 12416 => 'L', - 12417 => 'L', - 12418 => 'L', - 12419 => 'L', - 12420 => 'L', - 12421 => 'L', - 12422 => 'L', - 12423 => 'L', - 12424 => 'L', - 12425 => 'L', - 12426 => 'L', - 12427 => 'L', - 12428 => 'L', - 12429 => 'L', - 12430 => 'L', - 12431 => 'L', - 12432 => 'L', - 12433 => 'L', - 12434 => 'L', - 12435 => 'L', - 12436 => 'L', - 12437 => 'L', - 12438 => 'L', - 12441 => 'NSM', - 12442 => 'NSM', - 12443 => 'ON', - 12444 => 'ON', - 12445 => 'L', - 12446 => 'L', - 12447 => 'L', - 12448 => 'ON', - 12449 => 'L', - 12450 => 'L', - 12451 => 'L', - 12452 => 'L', - 12453 => 'L', - 12454 => 'L', - 12455 => 'L', - 12456 => 'L', - 12457 => 'L', - 12458 => 'L', - 12459 => 'L', - 12460 => 'L', - 12461 => 'L', - 12462 => 'L', - 12463 => 'L', - 12464 => 'L', - 12465 => 'L', - 12466 => 'L', - 12467 => 'L', - 12468 => 'L', - 12469 => 'L', - 12470 => 'L', - 12471 => 'L', - 12472 => 'L', - 12473 => 'L', - 12474 => 'L', - 12475 => 'L', - 12476 => 'L', - 12477 => 'L', - 12478 => 'L', - 12479 => 'L', - 12480 => 'L', - 12481 => 'L', - 12482 => 'L', - 12483 => 'L', - 12484 => 'L', - 12485 => 'L', - 12486 => 'L', - 12487 => 'L', - 12488 => 'L', - 12489 => 'L', - 12490 => 'L', - 12491 => 'L', - 12492 => 'L', - 12493 => 'L', - 12494 => 'L', - 12495 => 'L', - 12496 => 'L', - 12497 => 'L', - 12498 => 'L', - 12499 => 'L', - 12500 => 'L', - 12501 => 'L', - 12502 => 'L', - 12503 => 'L', - 12504 => 'L', - 12505 => 'L', - 12506 => 'L', - 12507 => 'L', - 12508 => 'L', - 12509 => 'L', - 12510 => 'L', - 12511 => 'L', - 12512 => 'L', - 12513 => 'L', - 12514 => 'L', - 12515 => 'L', - 12516 => 'L', - 12517 => 'L', - 12518 => 'L', - 12519 => 'L', - 12520 => 'L', - 12521 => 'L', - 12522 => 'L', - 12523 => 'L', - 12524 => 'L', - 12525 => 'L', - 12526 => 'L', - 12527 => 'L', - 12528 => 'L', - 12529 => 'L', - 12530 => 'L', - 12531 => 'L', - 12532 => 'L', - 12533 => 'L', - 12534 => 'L', - 12535 => 'L', - 12536 => 'L', - 12537 => 'L', - 12538 => 'L', - 12539 => 'ON', - 12540 => 'L', - 12541 => 'L', - 12542 => 'L', - 12543 => 'L', - 12549 => 'L', - 12550 => 'L', - 12551 => 'L', - 12552 => 'L', - 12553 => 'L', - 12554 => 'L', - 12555 => 'L', - 12556 => 'L', - 12557 => 'L', - 12558 => 'L', - 12559 => 'L', - 12560 => 'L', - 12561 => 'L', - 12562 => 'L', - 12563 => 'L', - 12564 => 'L', - 12565 => 'L', - 12566 => 'L', - 12567 => 'L', - 12568 => 'L', - 12569 => 'L', - 12570 => 'L', - 12571 => 'L', - 12572 => 'L', - 12573 => 'L', - 12574 => 'L', - 12575 => 'L', - 12576 => 'L', - 12577 => 'L', - 12578 => 'L', - 12579 => 'L', - 12580 => 'L', - 12581 => 'L', - 12582 => 'L', - 12583 => 'L', - 12584 => 'L', - 12585 => 'L', - 12586 => 'L', - 12587 => 'L', - 12588 => 'L', - 12593 => 'L', - 12594 => 'L', - 12595 => 'L', - 12596 => 'L', - 12597 => 'L', - 12598 => 'L', - 12599 => 'L', - 12600 => 'L', - 12601 => 'L', - 12602 => 'L', - 12603 => 'L', - 12604 => 'L', - 12605 => 'L', - 12606 => 'L', - 12607 => 'L', - 12608 => 'L', - 12609 => 'L', - 12610 => 'L', - 12611 => 'L', - 12612 => 'L', - 12613 => 'L', - 12614 => 'L', - 12615 => 'L', - 12616 => 'L', - 12617 => 'L', - 12618 => 'L', - 12619 => 'L', - 12620 => 'L', - 12621 => 'L', - 12622 => 'L', - 12623 => 'L', - 12624 => 'L', - 12625 => 'L', - 12626 => 'L', - 12627 => 'L', - 12628 => 'L', - 12629 => 'L', - 12630 => 'L', - 12631 => 'L', - 12632 => 'L', - 12633 => 'L', - 12634 => 'L', - 12635 => 'L', - 12636 => 'L', - 12637 => 'L', - 12638 => 'L', - 12639 => 'L', - 12640 => 'L', - 12641 => 'L', - 12642 => 'L', - 12643 => 'L', - 12644 => 'L', - 12645 => 'L', - 12646 => 'L', - 12647 => 'L', - 12648 => 'L', - 12649 => 'L', - 12650 => 'L', - 12651 => 'L', - 12652 => 'L', - 12653 => 'L', - 12654 => 'L', - 12655 => 'L', - 12656 => 'L', - 12657 => 'L', - 12658 => 'L', - 12659 => 'L', - 12660 => 'L', - 12661 => 'L', - 12662 => 'L', - 12663 => 'L', - 12664 => 'L', - 12665 => 'L', - 12666 => 'L', - 12667 => 'L', - 12668 => 'L', - 12669 => 'L', - 12670 => 'L', - 12671 => 'L', - 12672 => 'L', - 12673 => 'L', - 12674 => 'L', - 12675 => 'L', - 12676 => 'L', - 12677 => 'L', - 12678 => 'L', - 12679 => 'L', - 12680 => 'L', - 12681 => 'L', - 12682 => 'L', - 12683 => 'L', - 12684 => 'L', - 12685 => 'L', - 12686 => 'L', - 12688 => 'L', - 12689 => 'L', - 12690 => 'L', - 12691 => 'L', - 12692 => 'L', - 12693 => 'L', - 12694 => 'L', - 12695 => 'L', - 12696 => 'L', - 12697 => 'L', - 12698 => 'L', - 12699 => 'L', - 12700 => 'L', - 12701 => 'L', - 12702 => 'L', - 12703 => 'L', - 12704 => 'L', - 12705 => 'L', - 12706 => 'L', - 12707 => 'L', - 12708 => 'L', - 12709 => 'L', - 12710 => 'L', - 12711 => 'L', - 12712 => 'L', - 12713 => 'L', - 12714 => 'L', - 12715 => 'L', - 12716 => 'L', - 12717 => 'L', - 12718 => 'L', - 12719 => 'L', - 12720 => 'L', - 12721 => 'L', - 12722 => 'L', - 12723 => 'L', - 12724 => 'L', - 12725 => 'L', - 12726 => 'L', - 12727 => 'L', - 12736 => 'ON', - 12737 => 'ON', - 12738 => 'ON', - 12739 => 'ON', - 12740 => 'ON', - 12741 => 'ON', - 12742 => 'ON', - 12743 => 'ON', - 12744 => 'ON', - 12745 => 'ON', - 12746 => 'ON', - 12747 => 'ON', - 12748 => 'ON', - 12749 => 'ON', - 12750 => 'ON', - 12751 => 'ON', - 12784 => 'L', - 12785 => 'L', - 12786 => 'L', - 12787 => 'L', - 12788 => 'L', - 12789 => 'L', - 12790 => 'L', - 12791 => 'L', - 12792 => 'L', - 12793 => 'L', - 12794 => 'L', - 12795 => 'L', - 12796 => 'L', - 12797 => 'L', - 12798 => 'L', - 12799 => 'L', - 12800 => 'L', - 12801 => 'L', - 12802 => 'L', - 12803 => 'L', - 12804 => 'L', - 12805 => 'L', - 12806 => 'L', - 12807 => 'L', - 12808 => 'L', - 12809 => 'L', - 12810 => 'L', - 12811 => 'L', - 12812 => 'L', - 12813 => 'L', - 12814 => 'L', - 12815 => 'L', - 12816 => 'L', - 12817 => 'L', - 12818 => 'L', - 12819 => 'L', - 12820 => 'L', - 12821 => 'L', - 12822 => 'L', - 12823 => 'L', - 12824 => 'L', - 12825 => 'L', - 12826 => 'L', - 12827 => 'L', - 12828 => 'L', - 12829 => 'ON', - 12830 => 'ON', - 12832 => 'L', - 12833 => 'L', - 12834 => 'L', - 12835 => 'L', - 12836 => 'L', - 12837 => 'L', - 12838 => 'L', - 12839 => 'L', - 12840 => 'L', - 12841 => 'L', - 12842 => 'L', - 12843 => 'L', - 12844 => 'L', - 12845 => 'L', - 12846 => 'L', - 12847 => 'L', - 12848 => 'L', - 12849 => 'L', - 12850 => 'L', - 12851 => 'L', - 12852 => 'L', - 12853 => 'L', - 12854 => 'L', - 12855 => 'L', - 12856 => 'L', - 12857 => 'L', - 12858 => 'L', - 12859 => 'L', - 12860 => 'L', - 12861 => 'L', - 12862 => 'L', - 12863 => 'L', - 12864 => 'L', - 12865 => 'L', - 12866 => 'L', - 12867 => 'L', - 12880 => 'ON', - 12881 => 'ON', - 12882 => 'ON', - 12883 => 'ON', - 12884 => 'ON', - 12885 => 'ON', - 12886 => 'ON', - 12887 => 'ON', - 12888 => 'ON', - 12889 => 'ON', - 12890 => 'ON', - 12891 => 'ON', - 12892 => 'ON', - 12893 => 'ON', - 12894 => 'ON', - 12895 => 'ON', - 12896 => 'L', - 12897 => 'L', - 12898 => 'L', - 12899 => 'L', - 12900 => 'L', - 12901 => 'L', - 12902 => 'L', - 12903 => 'L', - 12904 => 'L', - 12905 => 'L', - 12906 => 'L', - 12907 => 'L', - 12908 => 'L', - 12909 => 'L', - 12910 => 'L', - 12911 => 'L', - 12912 => 'L', - 12913 => 'L', - 12914 => 'L', - 12915 => 'L', - 12916 => 'L', - 12917 => 'L', - 12918 => 'L', - 12919 => 'L', - 12920 => 'L', - 12921 => 'L', - 12922 => 'L', - 12923 => 'L', - 12924 => 'ON', - 12925 => 'ON', - 12926 => 'ON', - 12927 => 'L', - 12928 => 'L', - 12929 => 'L', - 12930 => 'L', - 12931 => 'L', - 12932 => 'L', - 12933 => 'L', - 12934 => 'L', - 12935 => 'L', - 12936 => 'L', - 12937 => 'L', - 12938 => 'L', - 12939 => 'L', - 12940 => 'L', - 12941 => 'L', - 12942 => 'L', - 12943 => 'L', - 12944 => 'L', - 12945 => 'L', - 12946 => 'L', - 12947 => 'L', - 12948 => 'L', - 12949 => 'L', - 12950 => 'L', - 12951 => 'L', - 12952 => 'L', - 12953 => 'L', - 12954 => 'L', - 12955 => 'L', - 12956 => 'L', - 12957 => 'L', - 12958 => 'L', - 12959 => 'L', - 12960 => 'L', - 12961 => 'L', - 12962 => 'L', - 12963 => 'L', - 12964 => 'L', - 12965 => 'L', - 12966 => 'L', - 12967 => 'L', - 12968 => 'L', - 12969 => 'L', - 12970 => 'L', - 12971 => 'L', - 12972 => 'L', - 12973 => 'L', - 12974 => 'L', - 12975 => 'L', - 12976 => 'L', - 12977 => 'ON', - 12978 => 'ON', - 12979 => 'ON', - 12980 => 'ON', - 12981 => 'ON', - 12982 => 'ON', - 12983 => 'ON', - 12984 => 'ON', - 12985 => 'ON', - 12986 => 'ON', - 12987 => 'ON', - 12988 => 'ON', - 12989 => 'ON', - 12990 => 'ON', - 12991 => 'ON', - 12992 => 'L', - 12993 => 'L', - 12994 => 'L', - 12995 => 'L', - 12996 => 'L', - 12997 => 'L', - 12998 => 'L', - 12999 => 'L', - 13000 => 'L', - 13001 => 'L', - 13002 => 'L', - 13003 => 'L', - 13004 => 'ON', - 13005 => 'ON', - 13006 => 'ON', - 13007 => 'ON', - 13008 => 'L', - 13009 => 'L', - 13010 => 'L', - 13011 => 'L', - 13012 => 'L', - 13013 => 'L', - 13014 => 'L', - 13015 => 'L', - 13016 => 'L', - 13017 => 'L', - 13018 => 'L', - 13019 => 'L', - 13020 => 'L', - 13021 => 'L', - 13022 => 'L', - 13023 => 'L', - 13024 => 'L', - 13025 => 'L', - 13026 => 'L', - 13027 => 'L', - 13028 => 'L', - 13029 => 'L', - 13030 => 'L', - 13031 => 'L', - 13032 => 'L', - 13033 => 'L', - 13034 => 'L', - 13035 => 'L', - 13036 => 'L', - 13037 => 'L', - 13038 => 'L', - 13039 => 'L', - 13040 => 'L', - 13041 => 'L', - 13042 => 'L', - 13043 => 'L', - 13044 => 'L', - 13045 => 'L', - 13046 => 'L', - 13047 => 'L', - 13048 => 'L', - 13049 => 'L', - 13050 => 'L', - 13051 => 'L', - 13052 => 'L', - 13053 => 'L', - 13054 => 'L', - 13056 => 'L', - 13057 => 'L', - 13058 => 'L', - 13059 => 'L', - 13060 => 'L', - 13061 => 'L', - 13062 => 'L', - 13063 => 'L', - 13064 => 'L', - 13065 => 'L', - 13066 => 'L', - 13067 => 'L', - 13068 => 'L', - 13069 => 'L', - 13070 => 'L', - 13071 => 'L', - 13072 => 'L', - 13073 => 'L', - 13074 => 'L', - 13075 => 'L', - 13076 => 'L', - 13077 => 'L', - 13078 => 'L', - 13079 => 'L', - 13080 => 'L', - 13081 => 'L', - 13082 => 'L', - 13083 => 'L', - 13084 => 'L', - 13085 => 'L', - 13086 => 'L', - 13087 => 'L', - 13088 => 'L', - 13089 => 'L', - 13090 => 'L', - 13091 => 'L', - 13092 => 'L', - 13093 => 'L', - 13094 => 'L', - 13095 => 'L', - 13096 => 'L', - 13097 => 'L', - 13098 => 'L', - 13099 => 'L', - 13100 => 'L', - 13101 => 'L', - 13102 => 'L', - 13103 => 'L', - 13104 => 'L', - 13105 => 'L', - 13106 => 'L', - 13107 => 'L', - 13108 => 'L', - 13109 => 'L', - 13110 => 'L', - 13111 => 'L', - 13112 => 'L', - 13113 => 'L', - 13114 => 'L', - 13115 => 'L', - 13116 => 'L', - 13117 => 'L', - 13118 => 'L', - 13119 => 'L', - 13120 => 'L', - 13121 => 'L', - 13122 => 'L', - 13123 => 'L', - 13124 => 'L', - 13125 => 'L', - 13126 => 'L', - 13127 => 'L', - 13128 => 'L', - 13129 => 'L', - 13130 => 'L', - 13131 => 'L', - 13132 => 'L', - 13133 => 'L', - 13134 => 'L', - 13135 => 'L', - 13136 => 'L', - 13137 => 'L', - 13138 => 'L', - 13139 => 'L', - 13140 => 'L', - 13141 => 'L', - 13142 => 'L', - 13143 => 'L', - 13144 => 'L', - 13145 => 'L', - 13146 => 'L', - 13147 => 'L', - 13148 => 'L', - 13149 => 'L', - 13150 => 'L', - 13151 => 'L', - 13152 => 'L', - 13153 => 'L', - 13154 => 'L', - 13155 => 'L', - 13156 => 'L', - 13157 => 'L', - 13158 => 'L', - 13159 => 'L', - 13160 => 'L', - 13161 => 'L', - 13162 => 'L', - 13163 => 'L', - 13164 => 'L', - 13165 => 'L', - 13166 => 'L', - 13167 => 'L', - 13168 => 'L', - 13169 => 'L', - 13170 => 'L', - 13171 => 'L', - 13172 => 'L', - 13173 => 'L', - 13174 => 'L', - 13175 => 'ON', - 13176 => 'ON', - 13177 => 'ON', - 13178 => 'ON', - 13179 => 'L', - 13180 => 'L', - 13181 => 'L', - 13182 => 'L', - 13183 => 'L', - 13184 => 'L', - 13185 => 'L', - 13186 => 'L', - 13187 => 'L', - 13188 => 'L', - 13189 => 'L', - 13190 => 'L', - 13191 => 'L', - 13192 => 'L', - 13193 => 'L', - 13194 => 'L', - 13195 => 'L', - 13196 => 'L', - 13197 => 'L', - 13198 => 'L', - 13199 => 'L', - 13200 => 'L', - 13201 => 'L', - 13202 => 'L', - 13203 => 'L', - 13204 => 'L', - 13205 => 'L', - 13206 => 'L', - 13207 => 'L', - 13208 => 'L', - 13209 => 'L', - 13210 => 'L', - 13211 => 'L', - 13212 => 'L', - 13213 => 'L', - 13214 => 'L', - 13215 => 'L', - 13216 => 'L', - 13217 => 'L', - 13218 => 'L', - 13219 => 'L', - 13220 => 'L', - 13221 => 'L', - 13222 => 'L', - 13223 => 'L', - 13224 => 'L', - 13225 => 'L', - 13226 => 'L', - 13227 => 'L', - 13228 => 'L', - 13229 => 'L', - 13230 => 'L', - 13231 => 'L', - 13232 => 'L', - 13233 => 'L', - 13234 => 'L', - 13235 => 'L', - 13236 => 'L', - 13237 => 'L', - 13238 => 'L', - 13239 => 'L', - 13240 => 'L', - 13241 => 'L', - 13242 => 'L', - 13243 => 'L', - 13244 => 'L', - 13245 => 'L', - 13246 => 'L', - 13247 => 'L', - 13248 => 'L', - 13249 => 'L', - 13250 => 'L', - 13251 => 'L', - 13252 => 'L', - 13253 => 'L', - 13254 => 'L', - 13255 => 'L', - 13256 => 'L', - 13257 => 'L', - 13258 => 'L', - 13259 => 'L', - 13260 => 'L', - 13261 => 'L', - 13262 => 'L', - 13263 => 'L', - 13264 => 'L', - 13265 => 'L', - 13266 => 'L', - 13267 => 'L', - 13268 => 'L', - 13269 => 'L', - 13270 => 'L', - 13271 => 'L', - 13272 => 'L', - 13273 => 'L', - 13274 => 'L', - 13275 => 'L', - 13276 => 'L', - 13277 => 'L', - 13278 => 'ON', - 13279 => 'ON', - 13280 => 'L', - 13281 => 'L', - 13282 => 'L', - 13283 => 'L', - 13284 => 'L', - 13285 => 'L', - 13286 => 'L', - 13287 => 'L', - 13288 => 'L', - 13289 => 'L', - 13290 => 'L', - 13291 => 'L', - 13292 => 'L', - 13293 => 'L', - 13294 => 'L', - 13295 => 'L', - 13296 => 'L', - 13297 => 'L', - 13298 => 'L', - 13299 => 'L', - 13300 => 'L', - 13301 => 'L', - 13302 => 'L', - 13303 => 'L', - 13304 => 'L', - 13305 => 'L', - 13306 => 'L', - 13307 => 'L', - 13308 => 'L', - 13309 => 'L', - 13310 => 'L', - 13311 => 'ON', - 13312 => 'L', - 19893 => 'L', - 19904 => 'ON', - 19905 => 'ON', - 19906 => 'ON', - 19907 => 'ON', - 19908 => 'ON', - 19909 => 'ON', - 19910 => 'ON', - 19911 => 'ON', - 19912 => 'ON', - 19913 => 'ON', - 19914 => 'ON', - 19915 => 'ON', - 19916 => 'ON', - 19917 => 'ON', - 19918 => 'ON', - 19919 => 'ON', - 19920 => 'ON', - 19921 => 'ON', - 19922 => 'ON', - 19923 => 'ON', - 19924 => 'ON', - 19925 => 'ON', - 19926 => 'ON', - 19927 => 'ON', - 19928 => 'ON', - 19929 => 'ON', - 19930 => 'ON', - 19931 => 'ON', - 19932 => 'ON', - 19933 => 'ON', - 19934 => 'ON', - 19935 => 'ON', - 19936 => 'ON', - 19937 => 'ON', - 19938 => 'ON', - 19939 => 'ON', - 19940 => 'ON', - 19941 => 'ON', - 19942 => 'ON', - 19943 => 'ON', - 19944 => 'ON', - 19945 => 'ON', - 19946 => 'ON', - 19947 => 'ON', - 19948 => 'ON', - 19949 => 'ON', - 19950 => 'ON', - 19951 => 'ON', - 19952 => 'ON', - 19953 => 'ON', - 19954 => 'ON', - 19955 => 'ON', - 19956 => 'ON', - 19957 => 'ON', - 19958 => 'ON', - 19959 => 'ON', - 19960 => 'ON', - 19961 => 'ON', - 19962 => 'ON', - 19963 => 'ON', - 19964 => 'ON', - 19965 => 'ON', - 19966 => 'ON', - 19967 => 'ON', - 19968 => 'L', - 40891 => 'L', - 40960 => 'L', - 40961 => 'L', - 40962 => 'L', - 40963 => 'L', - 40964 => 'L', - 40965 => 'L', - 40966 => 'L', - 40967 => 'L', - 40968 => 'L', - 40969 => 'L', - 40970 => 'L', - 40971 => 'L', - 40972 => 'L', - 40973 => 'L', - 40974 => 'L', - 40975 => 'L', - 40976 => 'L', - 40977 => 'L', - 40978 => 'L', - 40979 => 'L', - 40980 => 'L', - 40981 => 'L', - 40982 => 'L', - 40983 => 'L', - 40984 => 'L', - 40985 => 'L', - 40986 => 'L', - 40987 => 'L', - 40988 => 'L', - 40989 => 'L', - 40990 => 'L', - 40991 => 'L', - 40992 => 'L', - 40993 => 'L', - 40994 => 'L', - 40995 => 'L', - 40996 => 'L', - 40997 => 'L', - 40998 => 'L', - 40999 => 'L', - 41000 => 'L', - 41001 => 'L', - 41002 => 'L', - 41003 => 'L', - 41004 => 'L', - 41005 => 'L', - 41006 => 'L', - 41007 => 'L', - 41008 => 'L', - 41009 => 'L', - 41010 => 'L', - 41011 => 'L', - 41012 => 'L', - 41013 => 'L', - 41014 => 'L', - 41015 => 'L', - 41016 => 'L', - 41017 => 'L', - 41018 => 'L', - 41019 => 'L', - 41020 => 'L', - 41021 => 'L', - 41022 => 'L', - 41023 => 'L', - 41024 => 'L', - 41025 => 'L', - 41026 => 'L', - 41027 => 'L', - 41028 => 'L', - 41029 => 'L', - 41030 => 'L', - 41031 => 'L', - 41032 => 'L', - 41033 => 'L', - 41034 => 'L', - 41035 => 'L', - 41036 => 'L', - 41037 => 'L', - 41038 => 'L', - 41039 => 'L', - 41040 => 'L', - 41041 => 'L', - 41042 => 'L', - 41043 => 'L', - 41044 => 'L', - 41045 => 'L', - 41046 => 'L', - 41047 => 'L', - 41048 => 'L', - 41049 => 'L', - 41050 => 'L', - 41051 => 'L', - 41052 => 'L', - 41053 => 'L', - 41054 => 'L', - 41055 => 'L', - 41056 => 'L', - 41057 => 'L', - 41058 => 'L', - 41059 => 'L', - 41060 => 'L', - 41061 => 'L', - 41062 => 'L', - 41063 => 'L', - 41064 => 'L', - 41065 => 'L', - 41066 => 'L', - 41067 => 'L', - 41068 => 'L', - 41069 => 'L', - 41070 => 'L', - 41071 => 'L', - 41072 => 'L', - 41073 => 'L', - 41074 => 'L', - 41075 => 'L', - 41076 => 'L', - 41077 => 'L', - 41078 => 'L', - 41079 => 'L', - 41080 => 'L', - 41081 => 'L', - 41082 => 'L', - 41083 => 'L', - 41084 => 'L', - 41085 => 'L', - 41086 => 'L', - 41087 => 'L', - 41088 => 'L', - 41089 => 'L', - 41090 => 'L', - 41091 => 'L', - 41092 => 'L', - 41093 => 'L', - 41094 => 'L', - 41095 => 'L', - 41096 => 'L', - 41097 => 'L', - 41098 => 'L', - 41099 => 'L', - 41100 => 'L', - 41101 => 'L', - 41102 => 'L', - 41103 => 'L', - 41104 => 'L', - 41105 => 'L', - 41106 => 'L', - 41107 => 'L', - 41108 => 'L', - 41109 => 'L', - 41110 => 'L', - 41111 => 'L', - 41112 => 'L', - 41113 => 'L', - 41114 => 'L', - 41115 => 'L', - 41116 => 'L', - 41117 => 'L', - 41118 => 'L', - 41119 => 'L', - 41120 => 'L', - 41121 => 'L', - 41122 => 'L', - 41123 => 'L', - 41124 => 'L', - 41125 => 'L', - 41126 => 'L', - 41127 => 'L', - 41128 => 'L', - 41129 => 'L', - 41130 => 'L', - 41131 => 'L', - 41132 => 'L', - 41133 => 'L', - 41134 => 'L', - 41135 => 'L', - 41136 => 'L', - 41137 => 'L', - 41138 => 'L', - 41139 => 'L', - 41140 => 'L', - 41141 => 'L', - 41142 => 'L', - 41143 => 'L', - 41144 => 'L', - 41145 => 'L', - 41146 => 'L', - 41147 => 'L', - 41148 => 'L', - 41149 => 'L', - 41150 => 'L', - 41151 => 'L', - 41152 => 'L', - 41153 => 'L', - 41154 => 'L', - 41155 => 'L', - 41156 => 'L', - 41157 => 'L', - 41158 => 'L', - 41159 => 'L', - 41160 => 'L', - 41161 => 'L', - 41162 => 'L', - 41163 => 'L', - 41164 => 'L', - 41165 => 'L', - 41166 => 'L', - 41167 => 'L', - 41168 => 'L', - 41169 => 'L', - 41170 => 'L', - 41171 => 'L', - 41172 => 'L', - 41173 => 'L', - 41174 => 'L', - 41175 => 'L', - 41176 => 'L', - 41177 => 'L', - 41178 => 'L', - 41179 => 'L', - 41180 => 'L', - 41181 => 'L', - 41182 => 'L', - 41183 => 'L', - 41184 => 'L', - 41185 => 'L', - 41186 => 'L', - 41187 => 'L', - 41188 => 'L', - 41189 => 'L', - 41190 => 'L', - 41191 => 'L', - 41192 => 'L', - 41193 => 'L', - 41194 => 'L', - 41195 => 'L', - 41196 => 'L', - 41197 => 'L', - 41198 => 'L', - 41199 => 'L', - 41200 => 'L', - 41201 => 'L', - 41202 => 'L', - 41203 => 'L', - 41204 => 'L', - 41205 => 'L', - 41206 => 'L', - 41207 => 'L', - 41208 => 'L', - 41209 => 'L', - 41210 => 'L', - 41211 => 'L', - 41212 => 'L', - 41213 => 'L', - 41214 => 'L', - 41215 => 'L', - 41216 => 'L', - 41217 => 'L', - 41218 => 'L', - 41219 => 'L', - 41220 => 'L', - 41221 => 'L', - 41222 => 'L', - 41223 => 'L', - 41224 => 'L', - 41225 => 'L', - 41226 => 'L', - 41227 => 'L', - 41228 => 'L', - 41229 => 'L', - 41230 => 'L', - 41231 => 'L', - 41232 => 'L', - 41233 => 'L', - 41234 => 'L', - 41235 => 'L', - 41236 => 'L', - 41237 => 'L', - 41238 => 'L', - 41239 => 'L', - 41240 => 'L', - 41241 => 'L', - 41242 => 'L', - 41243 => 'L', - 41244 => 'L', - 41245 => 'L', - 41246 => 'L', - 41247 => 'L', - 41248 => 'L', - 41249 => 'L', - 41250 => 'L', - 41251 => 'L', - 41252 => 'L', - 41253 => 'L', - 41254 => 'L', - 41255 => 'L', - 41256 => 'L', - 41257 => 'L', - 41258 => 'L', - 41259 => 'L', - 41260 => 'L', - 41261 => 'L', - 41262 => 'L', - 41263 => 'L', - 41264 => 'L', - 41265 => 'L', - 41266 => 'L', - 41267 => 'L', - 41268 => 'L', - 41269 => 'L', - 41270 => 'L', - 41271 => 'L', - 41272 => 'L', - 41273 => 'L', - 41274 => 'L', - 41275 => 'L', - 41276 => 'L', - 41277 => 'L', - 41278 => 'L', - 41279 => 'L', - 41280 => 'L', - 41281 => 'L', - 41282 => 'L', - 41283 => 'L', - 41284 => 'L', - 41285 => 'L', - 41286 => 'L', - 41287 => 'L', - 41288 => 'L', - 41289 => 'L', - 41290 => 'L', - 41291 => 'L', - 41292 => 'L', - 41293 => 'L', - 41294 => 'L', - 41295 => 'L', - 41296 => 'L', - 41297 => 'L', - 41298 => 'L', - 41299 => 'L', - 41300 => 'L', - 41301 => 'L', - 41302 => 'L', - 41303 => 'L', - 41304 => 'L', - 41305 => 'L', - 41306 => 'L', - 41307 => 'L', - 41308 => 'L', - 41309 => 'L', - 41310 => 'L', - 41311 => 'L', - 41312 => 'L', - 41313 => 'L', - 41314 => 'L', - 41315 => 'L', - 41316 => 'L', - 41317 => 'L', - 41318 => 'L', - 41319 => 'L', - 41320 => 'L', - 41321 => 'L', - 41322 => 'L', - 41323 => 'L', - 41324 => 'L', - 41325 => 'L', - 41326 => 'L', - 41327 => 'L', - 41328 => 'L', - 41329 => 'L', - 41330 => 'L', - 41331 => 'L', - 41332 => 'L', - 41333 => 'L', - 41334 => 'L', - 41335 => 'L', - 41336 => 'L', - 41337 => 'L', - 41338 => 'L', - 41339 => 'L', - 41340 => 'L', - 41341 => 'L', - 41342 => 'L', - 41343 => 'L', - 41344 => 'L', - 41345 => 'L', - 41346 => 'L', - 41347 => 'L', - 41348 => 'L', - 41349 => 'L', - 41350 => 'L', - 41351 => 'L', - 41352 => 'L', - 41353 => 'L', - 41354 => 'L', - 41355 => 'L', - 41356 => 'L', - 41357 => 'L', - 41358 => 'L', - 41359 => 'L', - 41360 => 'L', - 41361 => 'L', - 41362 => 'L', - 41363 => 'L', - 41364 => 'L', - 41365 => 'L', - 41366 => 'L', - 41367 => 'L', - 41368 => 'L', - 41369 => 'L', - 41370 => 'L', - 41371 => 'L', - 41372 => 'L', - 41373 => 'L', - 41374 => 'L', - 41375 => 'L', - 41376 => 'L', - 41377 => 'L', - 41378 => 'L', - 41379 => 'L', - 41380 => 'L', - 41381 => 'L', - 41382 => 'L', - 41383 => 'L', - 41384 => 'L', - 41385 => 'L', - 41386 => 'L', - 41387 => 'L', - 41388 => 'L', - 41389 => 'L', - 41390 => 'L', - 41391 => 'L', - 41392 => 'L', - 41393 => 'L', - 41394 => 'L', - 41395 => 'L', - 41396 => 'L', - 41397 => 'L', - 41398 => 'L', - 41399 => 'L', - 41400 => 'L', - 41401 => 'L', - 41402 => 'L', - 41403 => 'L', - 41404 => 'L', - 41405 => 'L', - 41406 => 'L', - 41407 => 'L', - 41408 => 'L', - 41409 => 'L', - 41410 => 'L', - 41411 => 'L', - 41412 => 'L', - 41413 => 'L', - 41414 => 'L', - 41415 => 'L', - 41416 => 'L', - 41417 => 'L', - 41418 => 'L', - 41419 => 'L', - 41420 => 'L', - 41421 => 'L', - 41422 => 'L', - 41423 => 'L', - 41424 => 'L', - 41425 => 'L', - 41426 => 'L', - 41427 => 'L', - 41428 => 'L', - 41429 => 'L', - 41430 => 'L', - 41431 => 'L', - 41432 => 'L', - 41433 => 'L', - 41434 => 'L', - 41435 => 'L', - 41436 => 'L', - 41437 => 'L', - 41438 => 'L', - 41439 => 'L', - 41440 => 'L', - 41441 => 'L', - 41442 => 'L', - 41443 => 'L', - 41444 => 'L', - 41445 => 'L', - 41446 => 'L', - 41447 => 'L', - 41448 => 'L', - 41449 => 'L', - 41450 => 'L', - 41451 => 'L', - 41452 => 'L', - 41453 => 'L', - 41454 => 'L', - 41455 => 'L', - 41456 => 'L', - 41457 => 'L', - 41458 => 'L', - 41459 => 'L', - 41460 => 'L', - 41461 => 'L', - 41462 => 'L', - 41463 => 'L', - 41464 => 'L', - 41465 => 'L', - 41466 => 'L', - 41467 => 'L', - 41468 => 'L', - 41469 => 'L', - 41470 => 'L', - 41471 => 'L', - 41472 => 'L', - 41473 => 'L', - 41474 => 'L', - 41475 => 'L', - 41476 => 'L', - 41477 => 'L', - 41478 => 'L', - 41479 => 'L', - 41480 => 'L', - 41481 => 'L', - 41482 => 'L', - 41483 => 'L', - 41484 => 'L', - 41485 => 'L', - 41486 => 'L', - 41487 => 'L', - 41488 => 'L', - 41489 => 'L', - 41490 => 'L', - 41491 => 'L', - 41492 => 'L', - 41493 => 'L', - 41494 => 'L', - 41495 => 'L', - 41496 => 'L', - 41497 => 'L', - 41498 => 'L', - 41499 => 'L', - 41500 => 'L', - 41501 => 'L', - 41502 => 'L', - 41503 => 'L', - 41504 => 'L', - 41505 => 'L', - 41506 => 'L', - 41507 => 'L', - 41508 => 'L', - 41509 => 'L', - 41510 => 'L', - 41511 => 'L', - 41512 => 'L', - 41513 => 'L', - 41514 => 'L', - 41515 => 'L', - 41516 => 'L', - 41517 => 'L', - 41518 => 'L', - 41519 => 'L', - 41520 => 'L', - 41521 => 'L', - 41522 => 'L', - 41523 => 'L', - 41524 => 'L', - 41525 => 'L', - 41526 => 'L', - 41527 => 'L', - 41528 => 'L', - 41529 => 'L', - 41530 => 'L', - 41531 => 'L', - 41532 => 'L', - 41533 => 'L', - 41534 => 'L', - 41535 => 'L', - 41536 => 'L', - 41537 => 'L', - 41538 => 'L', - 41539 => 'L', - 41540 => 'L', - 41541 => 'L', - 41542 => 'L', - 41543 => 'L', - 41544 => 'L', - 41545 => 'L', - 41546 => 'L', - 41547 => 'L', - 41548 => 'L', - 41549 => 'L', - 41550 => 'L', - 41551 => 'L', - 41552 => 'L', - 41553 => 'L', - 41554 => 'L', - 41555 => 'L', - 41556 => 'L', - 41557 => 'L', - 41558 => 'L', - 41559 => 'L', - 41560 => 'L', - 41561 => 'L', - 41562 => 'L', - 41563 => 'L', - 41564 => 'L', - 41565 => 'L', - 41566 => 'L', - 41567 => 'L', - 41568 => 'L', - 41569 => 'L', - 41570 => 'L', - 41571 => 'L', - 41572 => 'L', - 41573 => 'L', - 41574 => 'L', - 41575 => 'L', - 41576 => 'L', - 41577 => 'L', - 41578 => 'L', - 41579 => 'L', - 41580 => 'L', - 41581 => 'L', - 41582 => 'L', - 41583 => 'L', - 41584 => 'L', - 41585 => 'L', - 41586 => 'L', - 41587 => 'L', - 41588 => 'L', - 41589 => 'L', - 41590 => 'L', - 41591 => 'L', - 41592 => 'L', - 41593 => 'L', - 41594 => 'L', - 41595 => 'L', - 41596 => 'L', - 41597 => 'L', - 41598 => 'L', - 41599 => 'L', - 41600 => 'L', - 41601 => 'L', - 41602 => 'L', - 41603 => 'L', - 41604 => 'L', - 41605 => 'L', - 41606 => 'L', - 41607 => 'L', - 41608 => 'L', - 41609 => 'L', - 41610 => 'L', - 41611 => 'L', - 41612 => 'L', - 41613 => 'L', - 41614 => 'L', - 41615 => 'L', - 41616 => 'L', - 41617 => 'L', - 41618 => 'L', - 41619 => 'L', - 41620 => 'L', - 41621 => 'L', - 41622 => 'L', - 41623 => 'L', - 41624 => 'L', - 41625 => 'L', - 41626 => 'L', - 41627 => 'L', - 41628 => 'L', - 41629 => 'L', - 41630 => 'L', - 41631 => 'L', - 41632 => 'L', - 41633 => 'L', - 41634 => 'L', - 41635 => 'L', - 41636 => 'L', - 41637 => 'L', - 41638 => 'L', - 41639 => 'L', - 41640 => 'L', - 41641 => 'L', - 41642 => 'L', - 41643 => 'L', - 41644 => 'L', - 41645 => 'L', - 41646 => 'L', - 41647 => 'L', - 41648 => 'L', - 41649 => 'L', - 41650 => 'L', - 41651 => 'L', - 41652 => 'L', - 41653 => 'L', - 41654 => 'L', - 41655 => 'L', - 41656 => 'L', - 41657 => 'L', - 41658 => 'L', - 41659 => 'L', - 41660 => 'L', - 41661 => 'L', - 41662 => 'L', - 41663 => 'L', - 41664 => 'L', - 41665 => 'L', - 41666 => 'L', - 41667 => 'L', - 41668 => 'L', - 41669 => 'L', - 41670 => 'L', - 41671 => 'L', - 41672 => 'L', - 41673 => 'L', - 41674 => 'L', - 41675 => 'L', - 41676 => 'L', - 41677 => 'L', - 41678 => 'L', - 41679 => 'L', - 41680 => 'L', - 41681 => 'L', - 41682 => 'L', - 41683 => 'L', - 41684 => 'L', - 41685 => 'L', - 41686 => 'L', - 41687 => 'L', - 41688 => 'L', - 41689 => 'L', - 41690 => 'L', - 41691 => 'L', - 41692 => 'L', - 41693 => 'L', - 41694 => 'L', - 41695 => 'L', - 41696 => 'L', - 41697 => 'L', - 41698 => 'L', - 41699 => 'L', - 41700 => 'L', - 41701 => 'L', - 41702 => 'L', - 41703 => 'L', - 41704 => 'L', - 41705 => 'L', - 41706 => 'L', - 41707 => 'L', - 41708 => 'L', - 41709 => 'L', - 41710 => 'L', - 41711 => 'L', - 41712 => 'L', - 41713 => 'L', - 41714 => 'L', - 41715 => 'L', - 41716 => 'L', - 41717 => 'L', - 41718 => 'L', - 41719 => 'L', - 41720 => 'L', - 41721 => 'L', - 41722 => 'L', - 41723 => 'L', - 41724 => 'L', - 41725 => 'L', - 41726 => 'L', - 41727 => 'L', - 41728 => 'L', - 41729 => 'L', - 41730 => 'L', - 41731 => 'L', - 41732 => 'L', - 41733 => 'L', - 41734 => 'L', - 41735 => 'L', - 41736 => 'L', - 41737 => 'L', - 41738 => 'L', - 41739 => 'L', - 41740 => 'L', - 41741 => 'L', - 41742 => 'L', - 41743 => 'L', - 41744 => 'L', - 41745 => 'L', - 41746 => 'L', - 41747 => 'L', - 41748 => 'L', - 41749 => 'L', - 41750 => 'L', - 41751 => 'L', - 41752 => 'L', - 41753 => 'L', - 41754 => 'L', - 41755 => 'L', - 41756 => 'L', - 41757 => 'L', - 41758 => 'L', - 41759 => 'L', - 41760 => 'L', - 41761 => 'L', - 41762 => 'L', - 41763 => 'L', - 41764 => 'L', - 41765 => 'L', - 41766 => 'L', - 41767 => 'L', - 41768 => 'L', - 41769 => 'L', - 41770 => 'L', - 41771 => 'L', - 41772 => 'L', - 41773 => 'L', - 41774 => 'L', - 41775 => 'L', - 41776 => 'L', - 41777 => 'L', - 41778 => 'L', - 41779 => 'L', - 41780 => 'L', - 41781 => 'L', - 41782 => 'L', - 41783 => 'L', - 41784 => 'L', - 41785 => 'L', - 41786 => 'L', - 41787 => 'L', - 41788 => 'L', - 41789 => 'L', - 41790 => 'L', - 41791 => 'L', - 41792 => 'L', - 41793 => 'L', - 41794 => 'L', - 41795 => 'L', - 41796 => 'L', - 41797 => 'L', - 41798 => 'L', - 41799 => 'L', - 41800 => 'L', - 41801 => 'L', - 41802 => 'L', - 41803 => 'L', - 41804 => 'L', - 41805 => 'L', - 41806 => 'L', - 41807 => 'L', - 41808 => 'L', - 41809 => 'L', - 41810 => 'L', - 41811 => 'L', - 41812 => 'L', - 41813 => 'L', - 41814 => 'L', - 41815 => 'L', - 41816 => 'L', - 41817 => 'L', - 41818 => 'L', - 41819 => 'L', - 41820 => 'L', - 41821 => 'L', - 41822 => 'L', - 41823 => 'L', - 41824 => 'L', - 41825 => 'L', - 41826 => 'L', - 41827 => 'L', - 41828 => 'L', - 41829 => 'L', - 41830 => 'L', - 41831 => 'L', - 41832 => 'L', - 41833 => 'L', - 41834 => 'L', - 41835 => 'L', - 41836 => 'L', - 41837 => 'L', - 41838 => 'L', - 41839 => 'L', - 41840 => 'L', - 41841 => 'L', - 41842 => 'L', - 41843 => 'L', - 41844 => 'L', - 41845 => 'L', - 41846 => 'L', - 41847 => 'L', - 41848 => 'L', - 41849 => 'L', - 41850 => 'L', - 41851 => 'L', - 41852 => 'L', - 41853 => 'L', - 41854 => 'L', - 41855 => 'L', - 41856 => 'L', - 41857 => 'L', - 41858 => 'L', - 41859 => 'L', - 41860 => 'L', - 41861 => 'L', - 41862 => 'L', - 41863 => 'L', - 41864 => 'L', - 41865 => 'L', - 41866 => 'L', - 41867 => 'L', - 41868 => 'L', - 41869 => 'L', - 41870 => 'L', - 41871 => 'L', - 41872 => 'L', - 41873 => 'L', - 41874 => 'L', - 41875 => 'L', - 41876 => 'L', - 41877 => 'L', - 41878 => 'L', - 41879 => 'L', - 41880 => 'L', - 41881 => 'L', - 41882 => 'L', - 41883 => 'L', - 41884 => 'L', - 41885 => 'L', - 41886 => 'L', - 41887 => 'L', - 41888 => 'L', - 41889 => 'L', - 41890 => 'L', - 41891 => 'L', - 41892 => 'L', - 41893 => 'L', - 41894 => 'L', - 41895 => 'L', - 41896 => 'L', - 41897 => 'L', - 41898 => 'L', - 41899 => 'L', - 41900 => 'L', - 41901 => 'L', - 41902 => 'L', - 41903 => 'L', - 41904 => 'L', - 41905 => 'L', - 41906 => 'L', - 41907 => 'L', - 41908 => 'L', - 41909 => 'L', - 41910 => 'L', - 41911 => 'L', - 41912 => 'L', - 41913 => 'L', - 41914 => 'L', - 41915 => 'L', - 41916 => 'L', - 41917 => 'L', - 41918 => 'L', - 41919 => 'L', - 41920 => 'L', - 41921 => 'L', - 41922 => 'L', - 41923 => 'L', - 41924 => 'L', - 41925 => 'L', - 41926 => 'L', - 41927 => 'L', - 41928 => 'L', - 41929 => 'L', - 41930 => 'L', - 41931 => 'L', - 41932 => 'L', - 41933 => 'L', - 41934 => 'L', - 41935 => 'L', - 41936 => 'L', - 41937 => 'L', - 41938 => 'L', - 41939 => 'L', - 41940 => 'L', - 41941 => 'L', - 41942 => 'L', - 41943 => 'L', - 41944 => 'L', - 41945 => 'L', - 41946 => 'L', - 41947 => 'L', - 41948 => 'L', - 41949 => 'L', - 41950 => 'L', - 41951 => 'L', - 41952 => 'L', - 41953 => 'L', - 41954 => 'L', - 41955 => 'L', - 41956 => 'L', - 41957 => 'L', - 41958 => 'L', - 41959 => 'L', - 41960 => 'L', - 41961 => 'L', - 41962 => 'L', - 41963 => 'L', - 41964 => 'L', - 41965 => 'L', - 41966 => 'L', - 41967 => 'L', - 41968 => 'L', - 41969 => 'L', - 41970 => 'L', - 41971 => 'L', - 41972 => 'L', - 41973 => 'L', - 41974 => 'L', - 41975 => 'L', - 41976 => 'L', - 41977 => 'L', - 41978 => 'L', - 41979 => 'L', - 41980 => 'L', - 41981 => 'L', - 41982 => 'L', - 41983 => 'L', - 41984 => 'L', - 41985 => 'L', - 41986 => 'L', - 41987 => 'L', - 41988 => 'L', - 41989 => 'L', - 41990 => 'L', - 41991 => 'L', - 41992 => 'L', - 41993 => 'L', - 41994 => 'L', - 41995 => 'L', - 41996 => 'L', - 41997 => 'L', - 41998 => 'L', - 41999 => 'L', - 42000 => 'L', - 42001 => 'L', - 42002 => 'L', - 42003 => 'L', - 42004 => 'L', - 42005 => 'L', - 42006 => 'L', - 42007 => 'L', - 42008 => 'L', - 42009 => 'L', - 42010 => 'L', - 42011 => 'L', - 42012 => 'L', - 42013 => 'L', - 42014 => 'L', - 42015 => 'L', - 42016 => 'L', - 42017 => 'L', - 42018 => 'L', - 42019 => 'L', - 42020 => 'L', - 42021 => 'L', - 42022 => 'L', - 42023 => 'L', - 42024 => 'L', - 42025 => 'L', - 42026 => 'L', - 42027 => 'L', - 42028 => 'L', - 42029 => 'L', - 42030 => 'L', - 42031 => 'L', - 42032 => 'L', - 42033 => 'L', - 42034 => 'L', - 42035 => 'L', - 42036 => 'L', - 42037 => 'L', - 42038 => 'L', - 42039 => 'L', - 42040 => 'L', - 42041 => 'L', - 42042 => 'L', - 42043 => 'L', - 42044 => 'L', - 42045 => 'L', - 42046 => 'L', - 42047 => 'L', - 42048 => 'L', - 42049 => 'L', - 42050 => 'L', - 42051 => 'L', - 42052 => 'L', - 42053 => 'L', - 42054 => 'L', - 42055 => 'L', - 42056 => 'L', - 42057 => 'L', - 42058 => 'L', - 42059 => 'L', - 42060 => 'L', - 42061 => 'L', - 42062 => 'L', - 42063 => 'L', - 42064 => 'L', - 42065 => 'L', - 42066 => 'L', - 42067 => 'L', - 42068 => 'L', - 42069 => 'L', - 42070 => 'L', - 42071 => 'L', - 42072 => 'L', - 42073 => 'L', - 42074 => 'L', - 42075 => 'L', - 42076 => 'L', - 42077 => 'L', - 42078 => 'L', - 42079 => 'L', - 42080 => 'L', - 42081 => 'L', - 42082 => 'L', - 42083 => 'L', - 42084 => 'L', - 42085 => 'L', - 42086 => 'L', - 42087 => 'L', - 42088 => 'L', - 42089 => 'L', - 42090 => 'L', - 42091 => 'L', - 42092 => 'L', - 42093 => 'L', - 42094 => 'L', - 42095 => 'L', - 42096 => 'L', - 42097 => 'L', - 42098 => 'L', - 42099 => 'L', - 42100 => 'L', - 42101 => 'L', - 42102 => 'L', - 42103 => 'L', - 42104 => 'L', - 42105 => 'L', - 42106 => 'L', - 42107 => 'L', - 42108 => 'L', - 42109 => 'L', - 42110 => 'L', - 42111 => 'L', - 42112 => 'L', - 42113 => 'L', - 42114 => 'L', - 42115 => 'L', - 42116 => 'L', - 42117 => 'L', - 42118 => 'L', - 42119 => 'L', - 42120 => 'L', - 42121 => 'L', - 42122 => 'L', - 42123 => 'L', - 42124 => 'L', - 42128 => 'ON', - 42129 => 'ON', - 42130 => 'ON', - 42131 => 'ON', - 42132 => 'ON', - 42133 => 'ON', - 42134 => 'ON', - 42135 => 'ON', - 42136 => 'ON', - 42137 => 'ON', - 42138 => 'ON', - 42139 => 'ON', - 42140 => 'ON', - 42141 => 'ON', - 42142 => 'ON', - 42143 => 'ON', - 42144 => 'ON', - 42145 => 'ON', - 42146 => 'ON', - 42147 => 'ON', - 42148 => 'ON', - 42149 => 'ON', - 42150 => 'ON', - 42151 => 'ON', - 42152 => 'ON', - 42153 => 'ON', - 42154 => 'ON', - 42155 => 'ON', - 42156 => 'ON', - 42157 => 'ON', - 42158 => 'ON', - 42159 => 'ON', - 42160 => 'ON', - 42161 => 'ON', - 42162 => 'ON', - 42163 => 'ON', - 42164 => 'ON', - 42165 => 'ON', - 42166 => 'ON', - 42167 => 'ON', - 42168 => 'ON', - 42169 => 'ON', - 42170 => 'ON', - 42171 => 'ON', - 42172 => 'ON', - 42173 => 'ON', - 42174 => 'ON', - 42175 => 'ON', - 42176 => 'ON', - 42177 => 'ON', - 42178 => 'ON', - 42179 => 'ON', - 42180 => 'ON', - 42181 => 'ON', - 42182 => 'ON', - 42752 => 'ON', - 42753 => 'ON', - 42754 => 'ON', - 42755 => 'ON', - 42756 => 'ON', - 42757 => 'ON', - 42758 => 'ON', - 42759 => 'ON', - 42760 => 'ON', - 42761 => 'ON', - 42762 => 'ON', - 42763 => 'ON', - 42764 => 'ON', - 42765 => 'ON', - 42766 => 'ON', - 42767 => 'ON', - 42768 => 'ON', - 42769 => 'ON', - 42770 => 'ON', - 42771 => 'ON', - 42772 => 'ON', - 42773 => 'ON', - 42774 => 'ON', - 42775 => 'ON', - 42776 => 'ON', - 42777 => 'ON', - 42778 => 'ON', - 42784 => 'ON', - 42785 => 'ON', - 43008 => 'L', - 43009 => 'L', - 43010 => 'NSM', - 43011 => 'L', - 43012 => 'L', - 43013 => 'L', - 43014 => 'NSM', - 43015 => 'L', - 43016 => 'L', - 43017 => 'L', - 43018 => 'L', - 43019 => 'NSM', - 43020 => 'L', - 43021 => 'L', - 43022 => 'L', - 43023 => 'L', - 43024 => 'L', - 43025 => 'L', - 43026 => 'L', - 43027 => 'L', - 43028 => 'L', - 43029 => 'L', - 43030 => 'L', - 43031 => 'L', - 43032 => 'L', - 43033 => 'L', - 43034 => 'L', - 43035 => 'L', - 43036 => 'L', - 43037 => 'L', - 43038 => 'L', - 43039 => 'L', - 43040 => 'L', - 43041 => 'L', - 43042 => 'L', - 43043 => 'L', - 43044 => 'L', - 43045 => 'NSM', - 43046 => 'NSM', - 43047 => 'L', - 43048 => 'ON', - 43049 => 'ON', - 43050 => 'ON', - 43051 => 'ON', - 43072 => 'L', - 43073 => 'L', - 43074 => 'L', - 43075 => 'L', - 43076 => 'L', - 43077 => 'L', - 43078 => 'L', - 43079 => 'L', - 43080 => 'L', - 43081 => 'L', - 43082 => 'L', - 43083 => 'L', - 43084 => 'L', - 43085 => 'L', - 43086 => 'L', - 43087 => 'L', - 43088 => 'L', - 43089 => 'L', - 43090 => 'L', - 43091 => 'L', - 43092 => 'L', - 43093 => 'L', - 43094 => 'L', - 43095 => 'L', - 43096 => 'L', - 43097 => 'L', - 43098 => 'L', - 43099 => 'L', - 43100 => 'L', - 43101 => 'L', - 43102 => 'L', - 43103 => 'L', - 43104 => 'L', - 43105 => 'L', - 43106 => 'L', - 43107 => 'L', - 43108 => 'L', - 43109 => 'L', - 43110 => 'L', - 43111 => 'L', - 43112 => 'L', - 43113 => 'L', - 43114 => 'L', - 43115 => 'L', - 43116 => 'L', - 43117 => 'L', - 43118 => 'L', - 43119 => 'L', - 43120 => 'L', - 43121 => 'L', - 43122 => 'L', - 43123 => 'L', - 43124 => 'ON', - 43125 => 'ON', - 43126 => 'ON', - 43127 => 'ON', - 44032 => 'L', - 55203 => 'L', - 55296 => 'L', - 56191 => 'L', - 56192 => 'L', - 56319 => 'L', - 56320 => 'L', - 57343 => 'L', - 57344 => 'L', - 63743 => 'L', - 63744 => 'L', - 63745 => 'L', - 63746 => 'L', - 63747 => 'L', - 63748 => 'L', - 63749 => 'L', - 63750 => 'L', - 63751 => 'L', - 63752 => 'L', - 63753 => 'L', - 63754 => 'L', - 63755 => 'L', - 63756 => 'L', - 63757 => 'L', - 63758 => 'L', - 63759 => 'L', - 63760 => 'L', - 63761 => 'L', - 63762 => 'L', - 63763 => 'L', - 63764 => 'L', - 63765 => 'L', - 63766 => 'L', - 63767 => 'L', - 63768 => 'L', - 63769 => 'L', - 63770 => 'L', - 63771 => 'L', - 63772 => 'L', - 63773 => 'L', - 63774 => 'L', - 63775 => 'L', - 63776 => 'L', - 63777 => 'L', - 63778 => 'L', - 63779 => 'L', - 63780 => 'L', - 63781 => 'L', - 63782 => 'L', - 63783 => 'L', - 63784 => 'L', - 63785 => 'L', - 63786 => 'L', - 63787 => 'L', - 63788 => 'L', - 63789 => 'L', - 63790 => 'L', - 63791 => 'L', - 63792 => 'L', - 63793 => 'L', - 63794 => 'L', - 63795 => 'L', - 63796 => 'L', - 63797 => 'L', - 63798 => 'L', - 63799 => 'L', - 63800 => 'L', - 63801 => 'L', - 63802 => 'L', - 63803 => 'L', - 63804 => 'L', - 63805 => 'L', - 63806 => 'L', - 63807 => 'L', - 63808 => 'L', - 63809 => 'L', - 63810 => 'L', - 63811 => 'L', - 63812 => 'L', - 63813 => 'L', - 63814 => 'L', - 63815 => 'L', - 63816 => 'L', - 63817 => 'L', - 63818 => 'L', - 63819 => 'L', - 63820 => 'L', - 63821 => 'L', - 63822 => 'L', - 63823 => 'L', - 63824 => 'L', - 63825 => 'L', - 63826 => 'L', - 63827 => 'L', - 63828 => 'L', - 63829 => 'L', - 63830 => 'L', - 63831 => 'L', - 63832 => 'L', - 63833 => 'L', - 63834 => 'L', - 63835 => 'L', - 63836 => 'L', - 63837 => 'L', - 63838 => 'L', - 63839 => 'L', - 63840 => 'L', - 63841 => 'L', - 63842 => 'L', - 63843 => 'L', - 63844 => 'L', - 63845 => 'L', - 63846 => 'L', - 63847 => 'L', - 63848 => 'L', - 63849 => 'L', - 63850 => 'L', - 63851 => 'L', - 63852 => 'L', - 63853 => 'L', - 63854 => 'L', - 63855 => 'L', - 63856 => 'L', - 63857 => 'L', - 63858 => 'L', - 63859 => 'L', - 63860 => 'L', - 63861 => 'L', - 63862 => 'L', - 63863 => 'L', - 63864 => 'L', - 63865 => 'L', - 63866 => 'L', - 63867 => 'L', - 63868 => 'L', - 63869 => 'L', - 63870 => 'L', - 63871 => 'L', - 63872 => 'L', - 63873 => 'L', - 63874 => 'L', - 63875 => 'L', - 63876 => 'L', - 63877 => 'L', - 63878 => 'L', - 63879 => 'L', - 63880 => 'L', - 63881 => 'L', - 63882 => 'L', - 63883 => 'L', - 63884 => 'L', - 63885 => 'L', - 63886 => 'L', - 63887 => 'L', - 63888 => 'L', - 63889 => 'L', - 63890 => 'L', - 63891 => 'L', - 63892 => 'L', - 63893 => 'L', - 63894 => 'L', - 63895 => 'L', - 63896 => 'L', - 63897 => 'L', - 63898 => 'L', - 63899 => 'L', - 63900 => 'L', - 63901 => 'L', - 63902 => 'L', - 63903 => 'L', - 63904 => 'L', - 63905 => 'L', - 63906 => 'L', - 63907 => 'L', - 63908 => 'L', - 63909 => 'L', - 63910 => 'L', - 63911 => 'L', - 63912 => 'L', - 63913 => 'L', - 63914 => 'L', - 63915 => 'L', - 63916 => 'L', - 63917 => 'L', - 63918 => 'L', - 63919 => 'L', - 63920 => 'L', - 63921 => 'L', - 63922 => 'L', - 63923 => 'L', - 63924 => 'L', - 63925 => 'L', - 63926 => 'L', - 63927 => 'L', - 63928 => 'L', - 63929 => 'L', - 63930 => 'L', - 63931 => 'L', - 63932 => 'L', - 63933 => 'L', - 63934 => 'L', - 63935 => 'L', - 63936 => 'L', - 63937 => 'L', - 63938 => 'L', - 63939 => 'L', - 63940 => 'L', - 63941 => 'L', - 63942 => 'L', - 63943 => 'L', - 63944 => 'L', - 63945 => 'L', - 63946 => 'L', - 63947 => 'L', - 63948 => 'L', - 63949 => 'L', - 63950 => 'L', - 63951 => 'L', - 63952 => 'L', - 63953 => 'L', - 63954 => 'L', - 63955 => 'L', - 63956 => 'L', - 63957 => 'L', - 63958 => 'L', - 63959 => 'L', - 63960 => 'L', - 63961 => 'L', - 63962 => 'L', - 63963 => 'L', - 63964 => 'L', - 63965 => 'L', - 63966 => 'L', - 63967 => 'L', - 63968 => 'L', - 63969 => 'L', - 63970 => 'L', - 63971 => 'L', - 63972 => 'L', - 63973 => 'L', - 63974 => 'L', - 63975 => 'L', - 63976 => 'L', - 63977 => 'L', - 63978 => 'L', - 63979 => 'L', - 63980 => 'L', - 63981 => 'L', - 63982 => 'L', - 63983 => 'L', - 63984 => 'L', - 63985 => 'L', - 63986 => 'L', - 63987 => 'L', - 63988 => 'L', - 63989 => 'L', - 63990 => 'L', - 63991 => 'L', - 63992 => 'L', - 63993 => 'L', - 63994 => 'L', - 63995 => 'L', - 63996 => 'L', - 63997 => 'L', - 63998 => 'L', - 63999 => 'L', - 64000 => 'L', - 64001 => 'L', - 64002 => 'L', - 64003 => 'L', - 64004 => 'L', - 64005 => 'L', - 64006 => 'L', - 64007 => 'L', - 64008 => 'L', - 64009 => 'L', - 64010 => 'L', - 64011 => 'L', - 64012 => 'L', - 64013 => 'L', - 64014 => 'L', - 64015 => 'L', - 64016 => 'L', - 64017 => 'L', - 64018 => 'L', - 64019 => 'L', - 64020 => 'L', - 64021 => 'L', - 64022 => 'L', - 64023 => 'L', - 64024 => 'L', - 64025 => 'L', - 64026 => 'L', - 64027 => 'L', - 64028 => 'L', - 64029 => 'L', - 64030 => 'L', - 64031 => 'L', - 64032 => 'L', - 64033 => 'L', - 64034 => 'L', - 64035 => 'L', - 64036 => 'L', - 64037 => 'L', - 64038 => 'L', - 64039 => 'L', - 64040 => 'L', - 64041 => 'L', - 64042 => 'L', - 64043 => 'L', - 64044 => 'L', - 64045 => 'L', - 64048 => 'L', - 64049 => 'L', - 64050 => 'L', - 64051 => 'L', - 64052 => 'L', - 64053 => 'L', - 64054 => 'L', - 64055 => 'L', - 64056 => 'L', - 64057 => 'L', - 64058 => 'L', - 64059 => 'L', - 64060 => 'L', - 64061 => 'L', - 64062 => 'L', - 64063 => 'L', - 64064 => 'L', - 64065 => 'L', - 64066 => 'L', - 64067 => 'L', - 64068 => 'L', - 64069 => 'L', - 64070 => 'L', - 64071 => 'L', - 64072 => 'L', - 64073 => 'L', - 64074 => 'L', - 64075 => 'L', - 64076 => 'L', - 64077 => 'L', - 64078 => 'L', - 64079 => 'L', - 64080 => 'L', - 64081 => 'L', - 64082 => 'L', - 64083 => 'L', - 64084 => 'L', - 64085 => 'L', - 64086 => 'L', - 64087 => 'L', - 64088 => 'L', - 64089 => 'L', - 64090 => 'L', - 64091 => 'L', - 64092 => 'L', - 64093 => 'L', - 64094 => 'L', - 64095 => 'L', - 64096 => 'L', - 64097 => 'L', - 64098 => 'L', - 64099 => 'L', - 64100 => 'L', - 64101 => 'L', - 64102 => 'L', - 64103 => 'L', - 64104 => 'L', - 64105 => 'L', - 64106 => 'L', - 64112 => 'L', - 64113 => 'L', - 64114 => 'L', - 64115 => 'L', - 64116 => 'L', - 64117 => 'L', - 64118 => 'L', - 64119 => 'L', - 64120 => 'L', - 64121 => 'L', - 64122 => 'L', - 64123 => 'L', - 64124 => 'L', - 64125 => 'L', - 64126 => 'L', - 64127 => 'L', - 64128 => 'L', - 64129 => 'L', - 64130 => 'L', - 64131 => 'L', - 64132 => 'L', - 64133 => 'L', - 64134 => 'L', - 64135 => 'L', - 64136 => 'L', - 64137 => 'L', - 64138 => 'L', - 64139 => 'L', - 64140 => 'L', - 64141 => 'L', - 64142 => 'L', - 64143 => 'L', - 64144 => 'L', - 64145 => 'L', - 64146 => 'L', - 64147 => 'L', - 64148 => 'L', - 64149 => 'L', - 64150 => 'L', - 64151 => 'L', - 64152 => 'L', - 64153 => 'L', - 64154 => 'L', - 64155 => 'L', - 64156 => 'L', - 64157 => 'L', - 64158 => 'L', - 64159 => 'L', - 64160 => 'L', - 64161 => 'L', - 64162 => 'L', - 64163 => 'L', - 64164 => 'L', - 64165 => 'L', - 64166 => 'L', - 64167 => 'L', - 64168 => 'L', - 64169 => 'L', - 64170 => 'L', - 64171 => 'L', - 64172 => 'L', - 64173 => 'L', - 64174 => 'L', - 64175 => 'L', - 64176 => 'L', - 64177 => 'L', - 64178 => 'L', - 64179 => 'L', - 64180 => 'L', - 64181 => 'L', - 64182 => 'L', - 64183 => 'L', - 64184 => 'L', - 64185 => 'L', - 64186 => 'L', - 64187 => 'L', - 64188 => 'L', - 64189 => 'L', - 64190 => 'L', - 64191 => 'L', - 64192 => 'L', - 64193 => 'L', - 64194 => 'L', - 64195 => 'L', - 64196 => 'L', - 64197 => 'L', - 64198 => 'L', - 64199 => 'L', - 64200 => 'L', - 64201 => 'L', - 64202 => 'L', - 64203 => 'L', - 64204 => 'L', - 64205 => 'L', - 64206 => 'L', - 64207 => 'L', - 64208 => 'L', - 64209 => 'L', - 64210 => 'L', - 64211 => 'L', - 64212 => 'L', - 64213 => 'L', - 64214 => 'L', - 64215 => 'L', - 64216 => 'L', - 64217 => 'L', - 64256 => 'L', - 64257 => 'L', - 64258 => 'L', - 64259 => 'L', - 64260 => 'L', - 64261 => 'L', - 64262 => 'L', - 64275 => 'L', - 64276 => 'L', - 64277 => 'L', - 64278 => 'L', - 64279 => 'L', - 64285 => 'R', - 64286 => 'NSM', - 64287 => 'R', - 64288 => 'R', - 64289 => 'R', - 64290 => 'R', - 64291 => 'R', - 64292 => 'R', - 64293 => 'R', - 64294 => 'R', - 64295 => 'R', - 64296 => 'R', - 64297 => 'ES', - 64298 => 'R', - 64299 => 'R', - 64300 => 'R', - 64301 => 'R', - 64302 => 'R', - 64303 => 'R', - 64304 => 'R', - 64305 => 'R', - 64306 => 'R', - 64307 => 'R', - 64308 => 'R', - 64309 => 'R', - 64310 => 'R', - 64312 => 'R', - 64313 => 'R', - 64314 => 'R', - 64315 => 'R', - 64316 => 'R', - 64318 => 'R', - 64320 => 'R', - 64321 => 'R', - 64323 => 'R', - 64324 => 'R', - 64326 => 'R', - 64327 => 'R', - 64328 => 'R', - 64329 => 'R', - 64330 => 'R', - 64331 => 'R', - 64332 => 'R', - 64333 => 'R', - 64334 => 'R', - 64335 => 'R', - 64336 => 'AL', - 64337 => 'AL', - 64338 => 'AL', - 64339 => 'AL', - 64340 => 'AL', - 64341 => 'AL', - 64342 => 'AL', - 64343 => 'AL', - 64344 => 'AL', - 64345 => 'AL', - 64346 => 'AL', - 64347 => 'AL', - 64348 => 'AL', - 64349 => 'AL', - 64350 => 'AL', - 64351 => 'AL', - 64352 => 'AL', - 64353 => 'AL', - 64354 => 'AL', - 64355 => 'AL', - 64356 => 'AL', - 64357 => 'AL', - 64358 => 'AL', - 64359 => 'AL', - 64360 => 'AL', - 64361 => 'AL', - 64362 => 'AL', - 64363 => 'AL', - 64364 => 'AL', - 64365 => 'AL', - 64366 => 'AL', - 64367 => 'AL', - 64368 => 'AL', - 64369 => 'AL', - 64370 => 'AL', - 64371 => 'AL', - 64372 => 'AL', - 64373 => 'AL', - 64374 => 'AL', - 64375 => 'AL', - 64376 => 'AL', - 64377 => 'AL', - 64378 => 'AL', - 64379 => 'AL', - 64380 => 'AL', - 64381 => 'AL', - 64382 => 'AL', - 64383 => 'AL', - 64384 => 'AL', - 64385 => 'AL', - 64386 => 'AL', - 64387 => 'AL', - 64388 => 'AL', - 64389 => 'AL', - 64390 => 'AL', - 64391 => 'AL', - 64392 => 'AL', - 64393 => 'AL', - 64394 => 'AL', - 64395 => 'AL', - 64396 => 'AL', - 64397 => 'AL', - 64398 => 'AL', - 64399 => 'AL', - 64400 => 'AL', - 64401 => 'AL', - 64402 => 'AL', - 64403 => 'AL', - 64404 => 'AL', - 64405 => 'AL', - 64406 => 'AL', - 64407 => 'AL', - 64408 => 'AL', - 64409 => 'AL', - 64410 => 'AL', - 64411 => 'AL', - 64412 => 'AL', - 64413 => 'AL', - 64414 => 'AL', - 64415 => 'AL', - 64416 => 'AL', - 64417 => 'AL', - 64418 => 'AL', - 64419 => 'AL', - 64420 => 'AL', - 64421 => 'AL', - 64422 => 'AL', - 64423 => 'AL', - 64424 => 'AL', - 64425 => 'AL', - 64426 => 'AL', - 64427 => 'AL', - 64428 => 'AL', - 64429 => 'AL', - 64430 => 'AL', - 64431 => 'AL', - 64432 => 'AL', - 64433 => 'AL', - 64467 => 'AL', - 64468 => 'AL', - 64469 => 'AL', - 64470 => 'AL', - 64471 => 'AL', - 64472 => 'AL', - 64473 => 'AL', - 64474 => 'AL', - 64475 => 'AL', - 64476 => 'AL', - 64477 => 'AL', - 64478 => 'AL', - 64479 => 'AL', - 64480 => 'AL', - 64481 => 'AL', - 64482 => 'AL', - 64483 => 'AL', - 64484 => 'AL', - 64485 => 'AL', - 64486 => 'AL', - 64487 => 'AL', - 64488 => 'AL', - 64489 => 'AL', - 64490 => 'AL', - 64491 => 'AL', - 64492 => 'AL', - 64493 => 'AL', - 64494 => 'AL', - 64495 => 'AL', - 64496 => 'AL', - 64497 => 'AL', - 64498 => 'AL', - 64499 => 'AL', - 64500 => 'AL', - 64501 => 'AL', - 64502 => 'AL', - 64503 => 'AL', - 64504 => 'AL', - 64505 => 'AL', - 64506 => 'AL', - 64507 => 'AL', - 64508 => 'AL', - 64509 => 'AL', - 64510 => 'AL', - 64511 => 'AL', - 64512 => 'AL', - 64513 => 'AL', - 64514 => 'AL', - 64515 => 'AL', - 64516 => 'AL', - 64517 => 'AL', - 64518 => 'AL', - 64519 => 'AL', - 64520 => 'AL', - 64521 => 'AL', - 64522 => 'AL', - 64523 => 'AL', - 64524 => 'AL', - 64525 => 'AL', - 64526 => 'AL', - 64527 => 'AL', - 64528 => 'AL', - 64529 => 'AL', - 64530 => 'AL', - 64531 => 'AL', - 64532 => 'AL', - 64533 => 'AL', - 64534 => 'AL', - 64535 => 'AL', - 64536 => 'AL', - 64537 => 'AL', - 64538 => 'AL', - 64539 => 'AL', - 64540 => 'AL', - 64541 => 'AL', - 64542 => 'AL', - 64543 => 'AL', - 64544 => 'AL', - 64545 => 'AL', - 64546 => 'AL', - 64547 => 'AL', - 64548 => 'AL', - 64549 => 'AL', - 64550 => 'AL', - 64551 => 'AL', - 64552 => 'AL', - 64553 => 'AL', - 64554 => 'AL', - 64555 => 'AL', - 64556 => 'AL', - 64557 => 'AL', - 64558 => 'AL', - 64559 => 'AL', - 64560 => 'AL', - 64561 => 'AL', - 64562 => 'AL', - 64563 => 'AL', - 64564 => 'AL', - 64565 => 'AL', - 64566 => 'AL', - 64567 => 'AL', - 64568 => 'AL', - 64569 => 'AL', - 64570 => 'AL', - 64571 => 'AL', - 64572 => 'AL', - 64573 => 'AL', - 64574 => 'AL', - 64575 => 'AL', - 64576 => 'AL', - 64577 => 'AL', - 64578 => 'AL', - 64579 => 'AL', - 64580 => 'AL', - 64581 => 'AL', - 64582 => 'AL', - 64583 => 'AL', - 64584 => 'AL', - 64585 => 'AL', - 64586 => 'AL', - 64587 => 'AL', - 64588 => 'AL', - 64589 => 'AL', - 64590 => 'AL', - 64591 => 'AL', - 64592 => 'AL', - 64593 => 'AL', - 64594 => 'AL', - 64595 => 'AL', - 64596 => 'AL', - 64597 => 'AL', - 64598 => 'AL', - 64599 => 'AL', - 64600 => 'AL', - 64601 => 'AL', - 64602 => 'AL', - 64603 => 'AL', - 64604 => 'AL', - 64605 => 'AL', - 64606 => 'AL', - 64607 => 'AL', - 64608 => 'AL', - 64609 => 'AL', - 64610 => 'AL', - 64611 => 'AL', - 64612 => 'AL', - 64613 => 'AL', - 64614 => 'AL', - 64615 => 'AL', - 64616 => 'AL', - 64617 => 'AL', - 64618 => 'AL', - 64619 => 'AL', - 64620 => 'AL', - 64621 => 'AL', - 64622 => 'AL', - 64623 => 'AL', - 64624 => 'AL', - 64625 => 'AL', - 64626 => 'AL', - 64627 => 'AL', - 64628 => 'AL', - 64629 => 'AL', - 64630 => 'AL', - 64631 => 'AL', - 64632 => 'AL', - 64633 => 'AL', - 64634 => 'AL', - 64635 => 'AL', - 64636 => 'AL', - 64637 => 'AL', - 64638 => 'AL', - 64639 => 'AL', - 64640 => 'AL', - 64641 => 'AL', - 64642 => 'AL', - 64643 => 'AL', - 64644 => 'AL', - 64645 => 'AL', - 64646 => 'AL', - 64647 => 'AL', - 64648 => 'AL', - 64649 => 'AL', - 64650 => 'AL', - 64651 => 'AL', - 64652 => 'AL', - 64653 => 'AL', - 64654 => 'AL', - 64655 => 'AL', - 64656 => 'AL', - 64657 => 'AL', - 64658 => 'AL', - 64659 => 'AL', - 64660 => 'AL', - 64661 => 'AL', - 64662 => 'AL', - 64663 => 'AL', - 64664 => 'AL', - 64665 => 'AL', - 64666 => 'AL', - 64667 => 'AL', - 64668 => 'AL', - 64669 => 'AL', - 64670 => 'AL', - 64671 => 'AL', - 64672 => 'AL', - 64673 => 'AL', - 64674 => 'AL', - 64675 => 'AL', - 64676 => 'AL', - 64677 => 'AL', - 64678 => 'AL', - 64679 => 'AL', - 64680 => 'AL', - 64681 => 'AL', - 64682 => 'AL', - 64683 => 'AL', - 64684 => 'AL', - 64685 => 'AL', - 64686 => 'AL', - 64687 => 'AL', - 64688 => 'AL', - 64689 => 'AL', - 64690 => 'AL', - 64691 => 'AL', - 64692 => 'AL', - 64693 => 'AL', - 64694 => 'AL', - 64695 => 'AL', - 64696 => 'AL', - 64697 => 'AL', - 64698 => 'AL', - 64699 => 'AL', - 64700 => 'AL', - 64701 => 'AL', - 64702 => 'AL', - 64703 => 'AL', - 64704 => 'AL', - 64705 => 'AL', - 64706 => 'AL', - 64707 => 'AL', - 64708 => 'AL', - 64709 => 'AL', - 64710 => 'AL', - 64711 => 'AL', - 64712 => 'AL', - 64713 => 'AL', - 64714 => 'AL', - 64715 => 'AL', - 64716 => 'AL', - 64717 => 'AL', - 64718 => 'AL', - 64719 => 'AL', - 64720 => 'AL', - 64721 => 'AL', - 64722 => 'AL', - 64723 => 'AL', - 64724 => 'AL', - 64725 => 'AL', - 64726 => 'AL', - 64727 => 'AL', - 64728 => 'AL', - 64729 => 'AL', - 64730 => 'AL', - 64731 => 'AL', - 64732 => 'AL', - 64733 => 'AL', - 64734 => 'AL', - 64735 => 'AL', - 64736 => 'AL', - 64737 => 'AL', - 64738 => 'AL', - 64739 => 'AL', - 64740 => 'AL', - 64741 => 'AL', - 64742 => 'AL', - 64743 => 'AL', - 64744 => 'AL', - 64745 => 'AL', - 64746 => 'AL', - 64747 => 'AL', - 64748 => 'AL', - 64749 => 'AL', - 64750 => 'AL', - 64751 => 'AL', - 64752 => 'AL', - 64753 => 'AL', - 64754 => 'AL', - 64755 => 'AL', - 64756 => 'AL', - 64757 => 'AL', - 64758 => 'AL', - 64759 => 'AL', - 64760 => 'AL', - 64761 => 'AL', - 64762 => 'AL', - 64763 => 'AL', - 64764 => 'AL', - 64765 => 'AL', - 64766 => 'AL', - 64767 => 'AL', - 64768 => 'AL', - 64769 => 'AL', - 64770 => 'AL', - 64771 => 'AL', - 64772 => 'AL', - 64773 => 'AL', - 64774 => 'AL', - 64775 => 'AL', - 64776 => 'AL', - 64777 => 'AL', - 64778 => 'AL', - 64779 => 'AL', - 64780 => 'AL', - 64781 => 'AL', - 64782 => 'AL', - 64783 => 'AL', - 64784 => 'AL', - 64785 => 'AL', - 64786 => 'AL', - 64787 => 'AL', - 64788 => 'AL', - 64789 => 'AL', - 64790 => 'AL', - 64791 => 'AL', - 64792 => 'AL', - 64793 => 'AL', - 64794 => 'AL', - 64795 => 'AL', - 64796 => 'AL', - 64797 => 'AL', - 64798 => 'AL', - 64799 => 'AL', - 64800 => 'AL', - 64801 => 'AL', - 64802 => 'AL', - 64803 => 'AL', - 64804 => 'AL', - 64805 => 'AL', - 64806 => 'AL', - 64807 => 'AL', - 64808 => 'AL', - 64809 => 'AL', - 64810 => 'AL', - 64811 => 'AL', - 64812 => 'AL', - 64813 => 'AL', - 64814 => 'AL', - 64815 => 'AL', - 64816 => 'AL', - 64817 => 'AL', - 64818 => 'AL', - 64819 => 'AL', - 64820 => 'AL', - 64821 => 'AL', - 64822 => 'AL', - 64823 => 'AL', - 64824 => 'AL', - 64825 => 'AL', - 64826 => 'AL', - 64827 => 'AL', - 64828 => 'AL', - 64829 => 'AL', - 64830 => 'ON', - 64831 => 'ON', - 64848 => 'AL', - 64849 => 'AL', - 64850 => 'AL', - 64851 => 'AL', - 64852 => 'AL', - 64853 => 'AL', - 64854 => 'AL', - 64855 => 'AL', - 64856 => 'AL', - 64857 => 'AL', - 64858 => 'AL', - 64859 => 'AL', - 64860 => 'AL', - 64861 => 'AL', - 64862 => 'AL', - 64863 => 'AL', - 64864 => 'AL', - 64865 => 'AL', - 64866 => 'AL', - 64867 => 'AL', - 64868 => 'AL', - 64869 => 'AL', - 64870 => 'AL', - 64871 => 'AL', - 64872 => 'AL', - 64873 => 'AL', - 64874 => 'AL', - 64875 => 'AL', - 64876 => 'AL', - 64877 => 'AL', - 64878 => 'AL', - 64879 => 'AL', - 64880 => 'AL', - 64881 => 'AL', - 64882 => 'AL', - 64883 => 'AL', - 64884 => 'AL', - 64885 => 'AL', - 64886 => 'AL', - 64887 => 'AL', - 64888 => 'AL', - 64889 => 'AL', - 64890 => 'AL', - 64891 => 'AL', - 64892 => 'AL', - 64893 => 'AL', - 64894 => 'AL', - 64895 => 'AL', - 64896 => 'AL', - 64897 => 'AL', - 64898 => 'AL', - 64899 => 'AL', - 64900 => 'AL', - 64901 => 'AL', - 64902 => 'AL', - 64903 => 'AL', - 64904 => 'AL', - 64905 => 'AL', - 64906 => 'AL', - 64907 => 'AL', - 64908 => 'AL', - 64909 => 'AL', - 64910 => 'AL', - 64911 => 'AL', - 64914 => 'AL', - 64915 => 'AL', - 64916 => 'AL', - 64917 => 'AL', - 64918 => 'AL', - 64919 => 'AL', - 64920 => 'AL', - 64921 => 'AL', - 64922 => 'AL', - 64923 => 'AL', - 64924 => 'AL', - 64925 => 'AL', - 64926 => 'AL', - 64927 => 'AL', - 64928 => 'AL', - 64929 => 'AL', - 64930 => 'AL', - 64931 => 'AL', - 64932 => 'AL', - 64933 => 'AL', - 64934 => 'AL', - 64935 => 'AL', - 64936 => 'AL', - 64937 => 'AL', - 64938 => 'AL', - 64939 => 'AL', - 64940 => 'AL', - 64941 => 'AL', - 64942 => 'AL', - 64943 => 'AL', - 64944 => 'AL', - 64945 => 'AL', - 64946 => 'AL', - 64947 => 'AL', - 64948 => 'AL', - 64949 => 'AL', - 64950 => 'AL', - 64951 => 'AL', - 64952 => 'AL', - 64953 => 'AL', - 64954 => 'AL', - 64955 => 'AL', - 64956 => 'AL', - 64957 => 'AL', - 64958 => 'AL', - 64959 => 'AL', - 64960 => 'AL', - 64961 => 'AL', - 64962 => 'AL', - 64963 => 'AL', - 64964 => 'AL', - 64965 => 'AL', - 64966 => 'AL', - 64967 => 'AL', - 65008 => 'AL', - 65009 => 'AL', - 65010 => 'AL', - 65011 => 'AL', - 65012 => 'AL', - 65013 => 'AL', - 65014 => 'AL', - 65015 => 'AL', - 65016 => 'AL', - 65017 => 'AL', - 65018 => 'AL', - 65019 => 'AL', - 65020 => 'AL', - 65021 => 'ON', - 65024 => 'NSM', - 65025 => 'NSM', - 65026 => 'NSM', - 65027 => 'NSM', - 65028 => 'NSM', - 65029 => 'NSM', - 65030 => 'NSM', - 65031 => 'NSM', - 65032 => 'NSM', - 65033 => 'NSM', - 65034 => 'NSM', - 65035 => 'NSM', - 65036 => 'NSM', - 65037 => 'NSM', - 65038 => 'NSM', - 65039 => 'NSM', - 65040 => 'ON', - 65041 => 'ON', - 65042 => 'ON', - 65043 => 'ON', - 65044 => 'ON', - 65045 => 'ON', - 65046 => 'ON', - 65047 => 'ON', - 65048 => 'ON', - 65049 => 'ON', - 65056 => 'NSM', - 65057 => 'NSM', - 65058 => 'NSM', - 65059 => 'NSM', - 65072 => 'ON', - 65073 => 'ON', - 65074 => 'ON', - 65075 => 'ON', - 65076 => 'ON', - 65077 => 'ON', - 65078 => 'ON', - 65079 => 'ON', - 65080 => 'ON', - 65081 => 'ON', - 65082 => 'ON', - 65083 => 'ON', - 65084 => 'ON', - 65085 => 'ON', - 65086 => 'ON', - 65087 => 'ON', - 65088 => 'ON', - 65089 => 'ON', - 65090 => 'ON', - 65091 => 'ON', - 65092 => 'ON', - 65093 => 'ON', - 65094 => 'ON', - 65095 => 'ON', - 65096 => 'ON', - 65097 => 'ON', - 65098 => 'ON', - 65099 => 'ON', - 65100 => 'ON', - 65101 => 'ON', - 65102 => 'ON', - 65103 => 'ON', - 65104 => 'CS', - 65105 => 'ON', - 65106 => 'CS', - 65108 => 'ON', - 65109 => 'CS', - 65110 => 'ON', - 65111 => 'ON', - 65112 => 'ON', - 65113 => 'ON', - 65114 => 'ON', - 65115 => 'ON', - 65116 => 'ON', - 65117 => 'ON', - 65118 => 'ON', - 65119 => 'ET', - 65120 => 'ON', - 65121 => 'ON', - 65122 => 'ES', - 65123 => 'ES', - 65124 => 'ON', - 65125 => 'ON', - 65126 => 'ON', - 65128 => 'ON', - 65129 => 'ET', - 65130 => 'ET', - 65131 => 'ON', - 65136 => 'AL', - 65137 => 'AL', - 65138 => 'AL', - 65139 => 'AL', - 65140 => 'AL', - 65142 => 'AL', - 65143 => 'AL', - 65144 => 'AL', - 65145 => 'AL', - 65146 => 'AL', - 65147 => 'AL', - 65148 => 'AL', - 65149 => 'AL', - 65150 => 'AL', - 65151 => 'AL', - 65152 => 'AL', - 65153 => 'AL', - 65154 => 'AL', - 65155 => 'AL', - 65156 => 'AL', - 65157 => 'AL', - 65158 => 'AL', - 65159 => 'AL', - 65160 => 'AL', - 65161 => 'AL', - 65162 => 'AL', - 65163 => 'AL', - 65164 => 'AL', - 65165 => 'AL', - 65166 => 'AL', - 65167 => 'AL', - 65168 => 'AL', - 65169 => 'AL', - 65170 => 'AL', - 65171 => 'AL', - 65172 => 'AL', - 65173 => 'AL', - 65174 => 'AL', - 65175 => 'AL', - 65176 => 'AL', - 65177 => 'AL', - 65178 => 'AL', - 65179 => 'AL', - 65180 => 'AL', - 65181 => 'AL', - 65182 => 'AL', - 65183 => 'AL', - 65184 => 'AL', - 65185 => 'AL', - 65186 => 'AL', - 65187 => 'AL', - 65188 => 'AL', - 65189 => 'AL', - 65190 => 'AL', - 65191 => 'AL', - 65192 => 'AL', - 65193 => 'AL', - 65194 => 'AL', - 65195 => 'AL', - 65196 => 'AL', - 65197 => 'AL', - 65198 => 'AL', - 65199 => 'AL', - 65200 => 'AL', - 65201 => 'AL', - 65202 => 'AL', - 65203 => 'AL', - 65204 => 'AL', - 65205 => 'AL', - 65206 => 'AL', - 65207 => 'AL', - 65208 => 'AL', - 65209 => 'AL', - 65210 => 'AL', - 65211 => 'AL', - 65212 => 'AL', - 65213 => 'AL', - 65214 => 'AL', - 65215 => 'AL', - 65216 => 'AL', - 65217 => 'AL', - 65218 => 'AL', - 65219 => 'AL', - 65220 => 'AL', - 65221 => 'AL', - 65222 => 'AL', - 65223 => 'AL', - 65224 => 'AL', - 65225 => 'AL', - 65226 => 'AL', - 65227 => 'AL', - 65228 => 'AL', - 65229 => 'AL', - 65230 => 'AL', - 65231 => 'AL', - 65232 => 'AL', - 65233 => 'AL', - 65234 => 'AL', - 65235 => 'AL', - 65236 => 'AL', - 65237 => 'AL', - 65238 => 'AL', - 65239 => 'AL', - 65240 => 'AL', - 65241 => 'AL', - 65242 => 'AL', - 65243 => 'AL', - 65244 => 'AL', - 65245 => 'AL', - 65246 => 'AL', - 65247 => 'AL', - 65248 => 'AL', - 65249 => 'AL', - 65250 => 'AL', - 65251 => 'AL', - 65252 => 'AL', - 65253 => 'AL', - 65254 => 'AL', - 65255 => 'AL', - 65256 => 'AL', - 65257 => 'AL', - 65258 => 'AL', - 65259 => 'AL', - 65260 => 'AL', - 65261 => 'AL', - 65262 => 'AL', - 65263 => 'AL', - 65264 => 'AL', - 65265 => 'AL', - 65266 => 'AL', - 65267 => 'AL', - 65268 => 'AL', - 65269 => 'AL', - 65270 => 'AL', - 65271 => 'AL', - 65272 => 'AL', - 65273 => 'AL', - 65274 => 'AL', - 65275 => 'AL', - 65276 => 'AL', - 65279 => 'BN', - 65281 => 'ON', - 65282 => 'ON', - 65283 => 'ET', - 65284 => 'ET', - 65285 => 'ET', - 65286 => 'ON', - 65287 => 'ON', - 65288 => 'ON', - 65289 => 'ON', - 65290 => 'ON', - 65291 => 'ES', - 65292 => 'CS', - 65293 => 'ES', - 65294 => 'CS', - 65295 => 'CS', - 65296 => 'EN', - 65297 => 'EN', - 65298 => 'EN', - 65299 => 'EN', - 65300 => 'EN', - 65301 => 'EN', - 65302 => 'EN', - 65303 => 'EN', - 65304 => 'EN', - 65305 => 'EN', - 65306 => 'CS', - 65307 => 'ON', - 65308 => 'ON', - 65309 => 'ON', - 65310 => 'ON', - 65311 => 'ON', - 65312 => 'ON', - 65313 => 'L', - 65314 => 'L', - 65315 => 'L', - 65316 => 'L', - 65317 => 'L', - 65318 => 'L', - 65319 => 'L', - 65320 => 'L', - 65321 => 'L', - 65322 => 'L', - 65323 => 'L', - 65324 => 'L', - 65325 => 'L', - 65326 => 'L', - 65327 => 'L', - 65328 => 'L', - 65329 => 'L', - 65330 => 'L', - 65331 => 'L', - 65332 => 'L', - 65333 => 'L', - 65334 => 'L', - 65335 => 'L', - 65336 => 'L', - 65337 => 'L', - 65338 => 'L', - 65339 => 'ON', - 65340 => 'ON', - 65341 => 'ON', - 65342 => 'ON', - 65343 => 'ON', - 65344 => 'ON', - 65345 => 'L', - 65346 => 'L', - 65347 => 'L', - 65348 => 'L', - 65349 => 'L', - 65350 => 'L', - 65351 => 'L', - 65352 => 'L', - 65353 => 'L', - 65354 => 'L', - 65355 => 'L', - 65356 => 'L', - 65357 => 'L', - 65358 => 'L', - 65359 => 'L', - 65360 => 'L', - 65361 => 'L', - 65362 => 'L', - 65363 => 'L', - 65364 => 'L', - 65365 => 'L', - 65366 => 'L', - 65367 => 'L', - 65368 => 'L', - 65369 => 'L', - 65370 => 'L', - 65371 => 'ON', - 65372 => 'ON', - 65373 => 'ON', - 65374 => 'ON', - 65375 => 'ON', - 65376 => 'ON', - 65377 => 'ON', - 65378 => 'ON', - 65379 => 'ON', - 65380 => 'ON', - 65381 => 'ON', - 65382 => 'L', - 65383 => 'L', - 65384 => 'L', - 65385 => 'L', - 65386 => 'L', - 65387 => 'L', - 65388 => 'L', - 65389 => 'L', - 65390 => 'L', - 65391 => 'L', - 65392 => 'L', - 65393 => 'L', - 65394 => 'L', - 65395 => 'L', - 65396 => 'L', - 65397 => 'L', - 65398 => 'L', - 65399 => 'L', - 65400 => 'L', - 65401 => 'L', - 65402 => 'L', - 65403 => 'L', - 65404 => 'L', - 65405 => 'L', - 65406 => 'L', - 65407 => 'L', - 65408 => 'L', - 65409 => 'L', - 65410 => 'L', - 65411 => 'L', - 65412 => 'L', - 65413 => 'L', - 65414 => 'L', - 65415 => 'L', - 65416 => 'L', - 65417 => 'L', - 65418 => 'L', - 65419 => 'L', - 65420 => 'L', - 65421 => 'L', - 65422 => 'L', - 65423 => 'L', - 65424 => 'L', - 65425 => 'L', - 65426 => 'L', - 65427 => 'L', - 65428 => 'L', - 65429 => 'L', - 65430 => 'L', - 65431 => 'L', - 65432 => 'L', - 65433 => 'L', - 65434 => 'L', - 65435 => 'L', - 65436 => 'L', - 65437 => 'L', - 65438 => 'L', - 65439 => 'L', - 65440 => 'L', - 65441 => 'L', - 65442 => 'L', - 65443 => 'L', - 65444 => 'L', - 65445 => 'L', - 65446 => 'L', - 65447 => 'L', - 65448 => 'L', - 65449 => 'L', - 65450 => 'L', - 65451 => 'L', - 65452 => 'L', - 65453 => 'L', - 65454 => 'L', - 65455 => 'L', - 65456 => 'L', - 65457 => 'L', - 65458 => 'L', - 65459 => 'L', - 65460 => 'L', - 65461 => 'L', - 65462 => 'L', - 65463 => 'L', - 65464 => 'L', - 65465 => 'L', - 65466 => 'L', - 65467 => 'L', - 65468 => 'L', - 65469 => 'L', - 65470 => 'L', - 65474 => 'L', - 65475 => 'L', - 65476 => 'L', - 65477 => 'L', - 65478 => 'L', - 65479 => 'L', - 65482 => 'L', - 65483 => 'L', - 65484 => 'L', - 65485 => 'L', - 65486 => 'L', - 65487 => 'L', - 65490 => 'L', - 65491 => 'L', - 65492 => 'L', - 65493 => 'L', - 65494 => 'L', - 65495 => 'L', - 65498 => 'L', - 65499 => 'L', - 65500 => 'L', - 65504 => 'ET', - 65505 => 'ET', - 65506 => 'ON', - 65507 => 'ON', - 65508 => 'ON', - 65509 => 'ET', - 65510 => 'ET', - 65512 => 'ON', - 65513 => 'ON', - 65514 => 'ON', - 65515 => 'ON', - 65516 => 'ON', - 65517 => 'ON', - 65518 => 'ON', - 65529 => 'ON', - 65530 => 'ON', - 65531 => 'ON', - 65532 => 'ON', - 65533 => 'ON', - 65536 => 'L', - 65537 => 'L', - 65538 => 'L', - 65539 => 'L', - 65540 => 'L', - 65541 => 'L', - 65542 => 'L', - 65543 => 'L', - 65544 => 'L', - 65545 => 'L', - 65546 => 'L', - 65547 => 'L', - 65549 => 'L', - 65550 => 'L', - 65551 => 'L', - 65552 => 'L', - 65553 => 'L', - 65554 => 'L', - 65555 => 'L', - 65556 => 'L', - 65557 => 'L', - 65558 => 'L', - 65559 => 'L', - 65560 => 'L', - 65561 => 'L', - 65562 => 'L', - 65563 => 'L', - 65564 => 'L', - 65565 => 'L', - 65566 => 'L', - 65567 => 'L', - 65568 => 'L', - 65569 => 'L', - 65570 => 'L', - 65571 => 'L', - 65572 => 'L', - 65573 => 'L', - 65574 => 'L', - 65576 => 'L', - 65577 => 'L', - 65578 => 'L', - 65579 => 'L', - 65580 => 'L', - 65581 => 'L', - 65582 => 'L', - 65583 => 'L', - 65584 => 'L', - 65585 => 'L', - 65586 => 'L', - 65587 => 'L', - 65588 => 'L', - 65589 => 'L', - 65590 => 'L', - 65591 => 'L', - 65592 => 'L', - 65593 => 'L', - 65594 => 'L', - 65596 => 'L', - 65597 => 'L', - 65599 => 'L', - 65600 => 'L', - 65601 => 'L', - 65602 => 'L', - 65603 => 'L', - 65604 => 'L', - 65605 => 'L', - 65606 => 'L', - 65607 => 'L', - 65608 => 'L', - 65609 => 'L', - 65610 => 'L', - 65611 => 'L', - 65612 => 'L', - 65613 => 'L', - 65616 => 'L', - 65617 => 'L', - 65618 => 'L', - 65619 => 'L', - 65620 => 'L', - 65621 => 'L', - 65622 => 'L', - 65623 => 'L', - 65624 => 'L', - 65625 => 'L', - 65626 => 'L', - 65627 => 'L', - 65628 => 'L', - 65629 => 'L', - 65664 => 'L', - 65665 => 'L', - 65666 => 'L', - 65667 => 'L', - 65668 => 'L', - 65669 => 'L', - 65670 => 'L', - 65671 => 'L', - 65672 => 'L', - 65673 => 'L', - 65674 => 'L', - 65675 => 'L', - 65676 => 'L', - 65677 => 'L', - 65678 => 'L', - 65679 => 'L', - 65680 => 'L', - 65681 => 'L', - 65682 => 'L', - 65683 => 'L', - 65684 => 'L', - 65685 => 'L', - 65686 => 'L', - 65687 => 'L', - 65688 => 'L', - 65689 => 'L', - 65690 => 'L', - 65691 => 'L', - 65692 => 'L', - 65693 => 'L', - 65694 => 'L', - 65695 => 'L', - 65696 => 'L', - 65697 => 'L', - 65698 => 'L', - 65699 => 'L', - 65700 => 'L', - 65701 => 'L', - 65702 => 'L', - 65703 => 'L', - 65704 => 'L', - 65705 => 'L', - 65706 => 'L', - 65707 => 'L', - 65708 => 'L', - 65709 => 'L', - 65710 => 'L', - 65711 => 'L', - 65712 => 'L', - 65713 => 'L', - 65714 => 'L', - 65715 => 'L', - 65716 => 'L', - 65717 => 'L', - 65718 => 'L', - 65719 => 'L', - 65720 => 'L', - 65721 => 'L', - 65722 => 'L', - 65723 => 'L', - 65724 => 'L', - 65725 => 'L', - 65726 => 'L', - 65727 => 'L', - 65728 => 'L', - 65729 => 'L', - 65730 => 'L', - 65731 => 'L', - 65732 => 'L', - 65733 => 'L', - 65734 => 'L', - 65735 => 'L', - 65736 => 'L', - 65737 => 'L', - 65738 => 'L', - 65739 => 'L', - 65740 => 'L', - 65741 => 'L', - 65742 => 'L', - 65743 => 'L', - 65744 => 'L', - 65745 => 'L', - 65746 => 'L', - 65747 => 'L', - 65748 => 'L', - 65749 => 'L', - 65750 => 'L', - 65751 => 'L', - 65752 => 'L', - 65753 => 'L', - 65754 => 'L', - 65755 => 'L', - 65756 => 'L', - 65757 => 'L', - 65758 => 'L', - 65759 => 'L', - 65760 => 'L', - 65761 => 'L', - 65762 => 'L', - 65763 => 'L', - 65764 => 'L', - 65765 => 'L', - 65766 => 'L', - 65767 => 'L', - 65768 => 'L', - 65769 => 'L', - 65770 => 'L', - 65771 => 'L', - 65772 => 'L', - 65773 => 'L', - 65774 => 'L', - 65775 => 'L', - 65776 => 'L', - 65777 => 'L', - 65778 => 'L', - 65779 => 'L', - 65780 => 'L', - 65781 => 'L', - 65782 => 'L', - 65783 => 'L', - 65784 => 'L', - 65785 => 'L', - 65786 => 'L', - 65792 => 'L', - 65793 => 'ON', - 65794 => 'L', - 65799 => 'L', - 65800 => 'L', - 65801 => 'L', - 65802 => 'L', - 65803 => 'L', - 65804 => 'L', - 65805 => 'L', - 65806 => 'L', - 65807 => 'L', - 65808 => 'L', - 65809 => 'L', - 65810 => 'L', - 65811 => 'L', - 65812 => 'L', - 65813 => 'L', - 65814 => 'L', - 65815 => 'L', - 65816 => 'L', - 65817 => 'L', - 65818 => 'L', - 65819 => 'L', - 65820 => 'L', - 65821 => 'L', - 65822 => 'L', - 65823 => 'L', - 65824 => 'L', - 65825 => 'L', - 65826 => 'L', - 65827 => 'L', - 65828 => 'L', - 65829 => 'L', - 65830 => 'L', - 65831 => 'L', - 65832 => 'L', - 65833 => 'L', - 65834 => 'L', - 65835 => 'L', - 65836 => 'L', - 65837 => 'L', - 65838 => 'L', - 65839 => 'L', - 65840 => 'L', - 65841 => 'L', - 65842 => 'L', - 65843 => 'L', - 65847 => 'L', - 65848 => 'L', - 65849 => 'L', - 65850 => 'L', - 65851 => 'L', - 65852 => 'L', - 65853 => 'L', - 65854 => 'L', - 65855 => 'L', - 65856 => 'ON', - 65857 => 'ON', - 65858 => 'ON', - 65859 => 'ON', - 65860 => 'ON', - 65861 => 'ON', - 65862 => 'ON', - 65863 => 'ON', - 65864 => 'ON', - 65865 => 'ON', - 65866 => 'ON', - 65867 => 'ON', - 65868 => 'ON', - 65869 => 'ON', - 65870 => 'ON', - 65871 => 'ON', - 65872 => 'ON', - 65873 => 'ON', - 65874 => 'ON', - 65875 => 'ON', - 65876 => 'ON', - 65877 => 'ON', - 65878 => 'ON', - 65879 => 'ON', - 65880 => 'ON', - 65881 => 'ON', - 65882 => 'ON', - 65883 => 'ON', - 65884 => 'ON', - 65885 => 'ON', - 65886 => 'ON', - 65887 => 'ON', - 65888 => 'ON', - 65889 => 'ON', - 65890 => 'ON', - 65891 => 'ON', - 65892 => 'ON', - 65893 => 'ON', - 65894 => 'ON', - 65895 => 'ON', - 65896 => 'ON', - 65897 => 'ON', - 65898 => 'ON', - 65899 => 'ON', - 65900 => 'ON', - 65901 => 'ON', - 65902 => 'ON', - 65903 => 'ON', - 65904 => 'ON', - 65905 => 'ON', - 65906 => 'ON', - 65907 => 'ON', - 65908 => 'ON', - 65909 => 'ON', - 65910 => 'ON', - 65911 => 'ON', - 65912 => 'ON', - 65913 => 'ON', - 65914 => 'ON', - 65915 => 'ON', - 65916 => 'ON', - 65917 => 'ON', - 65918 => 'ON', - 65919 => 'ON', - 65920 => 'ON', - 65921 => 'ON', - 65922 => 'ON', - 65923 => 'ON', - 65924 => 'ON', - 65925 => 'ON', - 65926 => 'ON', - 65927 => 'ON', - 65928 => 'ON', - 65929 => 'ON', - 65930 => 'ON', - 66304 => 'L', - 66305 => 'L', - 66306 => 'L', - 66307 => 'L', - 66308 => 'L', - 66309 => 'L', - 66310 => 'L', - 66311 => 'L', - 66312 => 'L', - 66313 => 'L', - 66314 => 'L', - 66315 => 'L', - 66316 => 'L', - 66317 => 'L', - 66318 => 'L', - 66319 => 'L', - 66320 => 'L', - 66321 => 'L', - 66322 => 'L', - 66323 => 'L', - 66324 => 'L', - 66325 => 'L', - 66326 => 'L', - 66327 => 'L', - 66328 => 'L', - 66329 => 'L', - 66330 => 'L', - 66331 => 'L', - 66332 => 'L', - 66333 => 'L', - 66334 => 'L', - 66336 => 'L', - 66337 => 'L', - 66338 => 'L', - 66339 => 'L', - 66352 => 'L', - 66353 => 'L', - 66354 => 'L', - 66355 => 'L', - 66356 => 'L', - 66357 => 'L', - 66358 => 'L', - 66359 => 'L', - 66360 => 'L', - 66361 => 'L', - 66362 => 'L', - 66363 => 'L', - 66364 => 'L', - 66365 => 'L', - 66366 => 'L', - 66367 => 'L', - 66368 => 'L', - 66369 => 'L', - 66370 => 'L', - 66371 => 'L', - 66372 => 'L', - 66373 => 'L', - 66374 => 'L', - 66375 => 'L', - 66376 => 'L', - 66377 => 'L', - 66378 => 'L', - 66432 => 'L', - 66433 => 'L', - 66434 => 'L', - 66435 => 'L', - 66436 => 'L', - 66437 => 'L', - 66438 => 'L', - 66439 => 'L', - 66440 => 'L', - 66441 => 'L', - 66442 => 'L', - 66443 => 'L', - 66444 => 'L', - 66445 => 'L', - 66446 => 'L', - 66447 => 'L', - 66448 => 'L', - 66449 => 'L', - 66450 => 'L', - 66451 => 'L', - 66452 => 'L', - 66453 => 'L', - 66454 => 'L', - 66455 => 'L', - 66456 => 'L', - 66457 => 'L', - 66458 => 'L', - 66459 => 'L', - 66460 => 'L', - 66461 => 'L', - 66463 => 'L', - 66464 => 'L', - 66465 => 'L', - 66466 => 'L', - 66467 => 'L', - 66468 => 'L', - 66469 => 'L', - 66470 => 'L', - 66471 => 'L', - 66472 => 'L', - 66473 => 'L', - 66474 => 'L', - 66475 => 'L', - 66476 => 'L', - 66477 => 'L', - 66478 => 'L', - 66479 => 'L', - 66480 => 'L', - 66481 => 'L', - 66482 => 'L', - 66483 => 'L', - 66484 => 'L', - 66485 => 'L', - 66486 => 'L', - 66487 => 'L', - 66488 => 'L', - 66489 => 'L', - 66490 => 'L', - 66491 => 'L', - 66492 => 'L', - 66493 => 'L', - 66494 => 'L', - 66495 => 'L', - 66496 => 'L', - 66497 => 'L', - 66498 => 'L', - 66499 => 'L', - 66504 => 'L', - 66505 => 'L', - 66506 => 'L', - 66507 => 'L', - 66508 => 'L', - 66509 => 'L', - 66510 => 'L', - 66511 => 'L', - 66512 => 'L', - 66513 => 'L', - 66514 => 'L', - 66515 => 'L', - 66516 => 'L', - 66517 => 'L', - 66560 => 'L', - 66561 => 'L', - 66562 => 'L', - 66563 => 'L', - 66564 => 'L', - 66565 => 'L', - 66566 => 'L', - 66567 => 'L', - 66568 => 'L', - 66569 => 'L', - 66570 => 'L', - 66571 => 'L', - 66572 => 'L', - 66573 => 'L', - 66574 => 'L', - 66575 => 'L', - 66576 => 'L', - 66577 => 'L', - 66578 => 'L', - 66579 => 'L', - 66580 => 'L', - 66581 => 'L', - 66582 => 'L', - 66583 => 'L', - 66584 => 'L', - 66585 => 'L', - 66586 => 'L', - 66587 => 'L', - 66588 => 'L', - 66589 => 'L', - 66590 => 'L', - 66591 => 'L', - 66592 => 'L', - 66593 => 'L', - 66594 => 'L', - 66595 => 'L', - 66596 => 'L', - 66597 => 'L', - 66598 => 'L', - 66599 => 'L', - 66600 => 'L', - 66601 => 'L', - 66602 => 'L', - 66603 => 'L', - 66604 => 'L', - 66605 => 'L', - 66606 => 'L', - 66607 => 'L', - 66608 => 'L', - 66609 => 'L', - 66610 => 'L', - 66611 => 'L', - 66612 => 'L', - 66613 => 'L', - 66614 => 'L', - 66615 => 'L', - 66616 => 'L', - 66617 => 'L', - 66618 => 'L', - 66619 => 'L', - 66620 => 'L', - 66621 => 'L', - 66622 => 'L', - 66623 => 'L', - 66624 => 'L', - 66625 => 'L', - 66626 => 'L', - 66627 => 'L', - 66628 => 'L', - 66629 => 'L', - 66630 => 'L', - 66631 => 'L', - 66632 => 'L', - 66633 => 'L', - 66634 => 'L', - 66635 => 'L', - 66636 => 'L', - 66637 => 'L', - 66638 => 'L', - 66639 => 'L', - 66640 => 'L', - 66641 => 'L', - 66642 => 'L', - 66643 => 'L', - 66644 => 'L', - 66645 => 'L', - 66646 => 'L', - 66647 => 'L', - 66648 => 'L', - 66649 => 'L', - 66650 => 'L', - 66651 => 'L', - 66652 => 'L', - 66653 => 'L', - 66654 => 'L', - 66655 => 'L', - 66656 => 'L', - 66657 => 'L', - 66658 => 'L', - 66659 => 'L', - 66660 => 'L', - 66661 => 'L', - 66662 => 'L', - 66663 => 'L', - 66664 => 'L', - 66665 => 'L', - 66666 => 'L', - 66667 => 'L', - 66668 => 'L', - 66669 => 'L', - 66670 => 'L', - 66671 => 'L', - 66672 => 'L', - 66673 => 'L', - 66674 => 'L', - 66675 => 'L', - 66676 => 'L', - 66677 => 'L', - 66678 => 'L', - 66679 => 'L', - 66680 => 'L', - 66681 => 'L', - 66682 => 'L', - 66683 => 'L', - 66684 => 'L', - 66685 => 'L', - 66686 => 'L', - 66687 => 'L', - 66688 => 'L', - 66689 => 'L', - 66690 => 'L', - 66691 => 'L', - 66692 => 'L', - 66693 => 'L', - 66694 => 'L', - 66695 => 'L', - 66696 => 'L', - 66697 => 'L', - 66698 => 'L', - 66699 => 'L', - 66700 => 'L', - 66701 => 'L', - 66702 => 'L', - 66703 => 'L', - 66704 => 'L', - 66705 => 'L', - 66706 => 'L', - 66707 => 'L', - 66708 => 'L', - 66709 => 'L', - 66710 => 'L', - 66711 => 'L', - 66712 => 'L', - 66713 => 'L', - 66714 => 'L', - 66715 => 'L', - 66716 => 'L', - 66717 => 'L', - 66720 => 'L', - 66721 => 'L', - 66722 => 'L', - 66723 => 'L', - 66724 => 'L', - 66725 => 'L', - 66726 => 'L', - 66727 => 'L', - 66728 => 'L', - 66729 => 'L', - 67584 => 'R', - 67585 => 'R', - 67586 => 'R', - 67587 => 'R', - 67588 => 'R', - 67589 => 'R', - 67592 => 'R', - 67594 => 'R', - 67595 => 'R', - 67596 => 'R', - 67597 => 'R', - 67598 => 'R', - 67599 => 'R', - 67600 => 'R', - 67601 => 'R', - 67602 => 'R', - 67603 => 'R', - 67604 => 'R', - 67605 => 'R', - 67606 => 'R', - 67607 => 'R', - 67608 => 'R', - 67609 => 'R', - 67610 => 'R', - 67611 => 'R', - 67612 => 'R', - 67613 => 'R', - 67614 => 'R', - 67615 => 'R', - 67616 => 'R', - 67617 => 'R', - 67618 => 'R', - 67619 => 'R', - 67620 => 'R', - 67621 => 'R', - 67622 => 'R', - 67623 => 'R', - 67624 => 'R', - 67625 => 'R', - 67626 => 'R', - 67627 => 'R', - 67628 => 'R', - 67629 => 'R', - 67630 => 'R', - 67631 => 'R', - 67632 => 'R', - 67633 => 'R', - 67634 => 'R', - 67635 => 'R', - 67636 => 'R', - 67637 => 'R', - 67639 => 'R', - 67640 => 'R', - 67644 => 'R', - 67647 => 'R', - 67840 => 'R', - 67841 => 'R', - 67842 => 'R', - 67843 => 'R', - 67844 => 'R', - 67845 => 'R', - 67846 => 'R', - 67847 => 'R', - 67848 => 'R', - 67849 => 'R', - 67850 => 'R', - 67851 => 'R', - 67852 => 'R', - 67853 => 'R', - 67854 => 'R', - 67855 => 'R', - 67856 => 'R', - 67857 => 'R', - 67858 => 'R', - 67859 => 'R', - 67860 => 'R', - 67861 => 'R', - 67862 => 'R', - 67863 => 'R', - 67864 => 'R', - 67865 => 'R', - 67871 => 'ON', - 68096 => 'R', - 68097 => 'NSM', - 68098 => 'NSM', - 68099 => 'NSM', - 68101 => 'NSM', - 68102 => 'NSM', - 68108 => 'NSM', - 68109 => 'NSM', - 68110 => 'NSM', - 68111 => 'NSM', - 68112 => 'R', - 68113 => 'R', - 68114 => 'R', - 68115 => 'R', - 68117 => 'R', - 68118 => 'R', - 68119 => 'R', - 68121 => 'R', - 68122 => 'R', - 68123 => 'R', - 68124 => 'R', - 68125 => 'R', - 68126 => 'R', - 68127 => 'R', - 68128 => 'R', - 68129 => 'R', - 68130 => 'R', - 68131 => 'R', - 68132 => 'R', - 68133 => 'R', - 68134 => 'R', - 68135 => 'R', - 68136 => 'R', - 68137 => 'R', - 68138 => 'R', - 68139 => 'R', - 68140 => 'R', - 68141 => 'R', - 68142 => 'R', - 68143 => 'R', - 68144 => 'R', - 68145 => 'R', - 68146 => 'R', - 68147 => 'R', - 68152 => 'NSM', - 68153 => 'NSM', - 68154 => 'NSM', - 68159 => 'NSM', - 68160 => 'R', - 68161 => 'R', - 68162 => 'R', - 68163 => 'R', - 68164 => 'R', - 68165 => 'R', - 68166 => 'R', - 68167 => 'R', - 68176 => 'R', - 68177 => 'R', - 68178 => 'R', - 68179 => 'R', - 68180 => 'R', - 68181 => 'R', - 68182 => 'R', - 68183 => 'R', - 68184 => 'R', - 73728 => 'L', - 73729 => 'L', - 73730 => 'L', - 73731 => 'L', - 73732 => 'L', - 73733 => 'L', - 73734 => 'L', - 73735 => 'L', - 73736 => 'L', - 73737 => 'L', - 73738 => 'L', - 73739 => 'L', - 73740 => 'L', - 73741 => 'L', - 73742 => 'L', - 73743 => 'L', - 73744 => 'L', - 73745 => 'L', - 73746 => 'L', - 73747 => 'L', - 73748 => 'L', - 73749 => 'L', - 73750 => 'L', - 73751 => 'L', - 73752 => 'L', - 73753 => 'L', - 73754 => 'L', - 73755 => 'L', - 73756 => 'L', - 73757 => 'L', - 73758 => 'L', - 73759 => 'L', - 73760 => 'L', - 73761 => 'L', - 73762 => 'L', - 73763 => 'L', - 73764 => 'L', - 73765 => 'L', - 73766 => 'L', - 73767 => 'L', - 73768 => 'L', - 73769 => 'L', - 73770 => 'L', - 73771 => 'L', - 73772 => 'L', - 73773 => 'L', - 73774 => 'L', - 73775 => 'L', - 73776 => 'L', - 73777 => 'L', - 73778 => 'L', - 73779 => 'L', - 73780 => 'L', - 73781 => 'L', - 73782 => 'L', - 73783 => 'L', - 73784 => 'L', - 73785 => 'L', - 73786 => 'L', - 73787 => 'L', - 73788 => 'L', - 73789 => 'L', - 73790 => 'L', - 73791 => 'L', - 73792 => 'L', - 73793 => 'L', - 73794 => 'L', - 73795 => 'L', - 73796 => 'L', - 73797 => 'L', - 73798 => 'L', - 73799 => 'L', - 73800 => 'L', - 73801 => 'L', - 73802 => 'L', - 73803 => 'L', - 73804 => 'L', - 73805 => 'L', - 73806 => 'L', - 73807 => 'L', - 73808 => 'L', - 73809 => 'L', - 73810 => 'L', - 73811 => 'L', - 73812 => 'L', - 73813 => 'L', - 73814 => 'L', - 73815 => 'L', - 73816 => 'L', - 73817 => 'L', - 73818 => 'L', - 73819 => 'L', - 73820 => 'L', - 73821 => 'L', - 73822 => 'L', - 73823 => 'L', - 73824 => 'L', - 73825 => 'L', - 73826 => 'L', - 73827 => 'L', - 73828 => 'L', - 73829 => 'L', - 73830 => 'L', - 73831 => 'L', - 73832 => 'L', - 73833 => 'L', - 73834 => 'L', - 73835 => 'L', - 73836 => 'L', - 73837 => 'L', - 73838 => 'L', - 73839 => 'L', - 73840 => 'L', - 73841 => 'L', - 73842 => 'L', - 73843 => 'L', - 73844 => 'L', - 73845 => 'L', - 73846 => 'L', - 73847 => 'L', - 73848 => 'L', - 73849 => 'L', - 73850 => 'L', - 73851 => 'L', - 73852 => 'L', - 73853 => 'L', - 73854 => 'L', - 73855 => 'L', - 73856 => 'L', - 73857 => 'L', - 73858 => 'L', - 73859 => 'L', - 73860 => 'L', - 73861 => 'L', - 73862 => 'L', - 73863 => 'L', - 73864 => 'L', - 73865 => 'L', - 73866 => 'L', - 73867 => 'L', - 73868 => 'L', - 73869 => 'L', - 73870 => 'L', - 73871 => 'L', - 73872 => 'L', - 73873 => 'L', - 73874 => 'L', - 73875 => 'L', - 73876 => 'L', - 73877 => 'L', - 73878 => 'L', - 73879 => 'L', - 73880 => 'L', - 73881 => 'L', - 73882 => 'L', - 73883 => 'L', - 73884 => 'L', - 73885 => 'L', - 73886 => 'L', - 73887 => 'L', - 73888 => 'L', - 73889 => 'L', - 73890 => 'L', - 73891 => 'L', - 73892 => 'L', - 73893 => 'L', - 73894 => 'L', - 73895 => 'L', - 73896 => 'L', - 73897 => 'L', - 73898 => 'L', - 73899 => 'L', - 73900 => 'L', - 73901 => 'L', - 73902 => 'L', - 73903 => 'L', - 73904 => 'L', - 73905 => 'L', - 73906 => 'L', - 73907 => 'L', - 73908 => 'L', - 73909 => 'L', - 73910 => 'L', - 73911 => 'L', - 73912 => 'L', - 73913 => 'L', - 73914 => 'L', - 73915 => 'L', - 73916 => 'L', - 73917 => 'L', - 73918 => 'L', - 73919 => 'L', - 73920 => 'L', - 73921 => 'L', - 73922 => 'L', - 73923 => 'L', - 73924 => 'L', - 73925 => 'L', - 73926 => 'L', - 73927 => 'L', - 73928 => 'L', - 73929 => 'L', - 73930 => 'L', - 73931 => 'L', - 73932 => 'L', - 73933 => 'L', - 73934 => 'L', - 73935 => 'L', - 73936 => 'L', - 73937 => 'L', - 73938 => 'L', - 73939 => 'L', - 73940 => 'L', - 73941 => 'L', - 73942 => 'L', - 73943 => 'L', - 73944 => 'L', - 73945 => 'L', - 73946 => 'L', - 73947 => 'L', - 73948 => 'L', - 73949 => 'L', - 73950 => 'L', - 73951 => 'L', - 73952 => 'L', - 73953 => 'L', - 73954 => 'L', - 73955 => 'L', - 73956 => 'L', - 73957 => 'L', - 73958 => 'L', - 73959 => 'L', - 73960 => 'L', - 73961 => 'L', - 73962 => 'L', - 73963 => 'L', - 73964 => 'L', - 73965 => 'L', - 73966 => 'L', - 73967 => 'L', - 73968 => 'L', - 73969 => 'L', - 73970 => 'L', - 73971 => 'L', - 73972 => 'L', - 73973 => 'L', - 73974 => 'L', - 73975 => 'L', - 73976 => 'L', - 73977 => 'L', - 73978 => 'L', - 73979 => 'L', - 73980 => 'L', - 73981 => 'L', - 73982 => 'L', - 73983 => 'L', - 73984 => 'L', - 73985 => 'L', - 73986 => 'L', - 73987 => 'L', - 73988 => 'L', - 73989 => 'L', - 73990 => 'L', - 73991 => 'L', - 73992 => 'L', - 73993 => 'L', - 73994 => 'L', - 73995 => 'L', - 73996 => 'L', - 73997 => 'L', - 73998 => 'L', - 73999 => 'L', - 74000 => 'L', - 74001 => 'L', - 74002 => 'L', - 74003 => 'L', - 74004 => 'L', - 74005 => 'L', - 74006 => 'L', - 74007 => 'L', - 74008 => 'L', - 74009 => 'L', - 74010 => 'L', - 74011 => 'L', - 74012 => 'L', - 74013 => 'L', - 74014 => 'L', - 74015 => 'L', - 74016 => 'L', - 74017 => 'L', - 74018 => 'L', - 74019 => 'L', - 74020 => 'L', - 74021 => 'L', - 74022 => 'L', - 74023 => 'L', - 74024 => 'L', - 74025 => 'L', - 74026 => 'L', - 74027 => 'L', - 74028 => 'L', - 74029 => 'L', - 74030 => 'L', - 74031 => 'L', - 74032 => 'L', - 74033 => 'L', - 74034 => 'L', - 74035 => 'L', - 74036 => 'L', - 74037 => 'L', - 74038 => 'L', - 74039 => 'L', - 74040 => 'L', - 74041 => 'L', - 74042 => 'L', - 74043 => 'L', - 74044 => 'L', - 74045 => 'L', - 74046 => 'L', - 74047 => 'L', - 74048 => 'L', - 74049 => 'L', - 74050 => 'L', - 74051 => 'L', - 74052 => 'L', - 74053 => 'L', - 74054 => 'L', - 74055 => 'L', - 74056 => 'L', - 74057 => 'L', - 74058 => 'L', - 74059 => 'L', - 74060 => 'L', - 74061 => 'L', - 74062 => 'L', - 74063 => 'L', - 74064 => 'L', - 74065 => 'L', - 74066 => 'L', - 74067 => 'L', - 74068 => 'L', - 74069 => 'L', - 74070 => 'L', - 74071 => 'L', - 74072 => 'L', - 74073 => 'L', - 74074 => 'L', - 74075 => 'L', - 74076 => 'L', - 74077 => 'L', - 74078 => 'L', - 74079 => 'L', - 74080 => 'L', - 74081 => 'L', - 74082 => 'L', - 74083 => 'L', - 74084 => 'L', - 74085 => 'L', - 74086 => 'L', - 74087 => 'L', - 74088 => 'L', - 74089 => 'L', - 74090 => 'L', - 74091 => 'L', - 74092 => 'L', - 74093 => 'L', - 74094 => 'L', - 74095 => 'L', - 74096 => 'L', - 74097 => 'L', - 74098 => 'L', - 74099 => 'L', - 74100 => 'L', - 74101 => 'L', - 74102 => 'L', - 74103 => 'L', - 74104 => 'L', - 74105 => 'L', - 74106 => 'L', - 74107 => 'L', - 74108 => 'L', - 74109 => 'L', - 74110 => 'L', - 74111 => 'L', - 74112 => 'L', - 74113 => 'L', - 74114 => 'L', - 74115 => 'L', - 74116 => 'L', - 74117 => 'L', - 74118 => 'L', - 74119 => 'L', - 74120 => 'L', - 74121 => 'L', - 74122 => 'L', - 74123 => 'L', - 74124 => 'L', - 74125 => 'L', - 74126 => 'L', - 74127 => 'L', - 74128 => 'L', - 74129 => 'L', - 74130 => 'L', - 74131 => 'L', - 74132 => 'L', - 74133 => 'L', - 74134 => 'L', - 74135 => 'L', - 74136 => 'L', - 74137 => 'L', - 74138 => 'L', - 74139 => 'L', - 74140 => 'L', - 74141 => 'L', - 74142 => 'L', - 74143 => 'L', - 74144 => 'L', - 74145 => 'L', - 74146 => 'L', - 74147 => 'L', - 74148 => 'L', - 74149 => 'L', - 74150 => 'L', - 74151 => 'L', - 74152 => 'L', - 74153 => 'L', - 74154 => 'L', - 74155 => 'L', - 74156 => 'L', - 74157 => 'L', - 74158 => 'L', - 74159 => 'L', - 74160 => 'L', - 74161 => 'L', - 74162 => 'L', - 74163 => 'L', - 74164 => 'L', - 74165 => 'L', - 74166 => 'L', - 74167 => 'L', - 74168 => 'L', - 74169 => 'L', - 74170 => 'L', - 74171 => 'L', - 74172 => 'L', - 74173 => 'L', - 74174 => 'L', - 74175 => 'L', - 74176 => 'L', - 74177 => 'L', - 74178 => 'L', - 74179 => 'L', - 74180 => 'L', - 74181 => 'L', - 74182 => 'L', - 74183 => 'L', - 74184 => 'L', - 74185 => 'L', - 74186 => 'L', - 74187 => 'L', - 74188 => 'L', - 74189 => 'L', - 74190 => 'L', - 74191 => 'L', - 74192 => 'L', - 74193 => 'L', - 74194 => 'L', - 74195 => 'L', - 74196 => 'L', - 74197 => 'L', - 74198 => 'L', - 74199 => 'L', - 74200 => 'L', - 74201 => 'L', - 74202 => 'L', - 74203 => 'L', - 74204 => 'L', - 74205 => 'L', - 74206 => 'L', - 74207 => 'L', - 74208 => 'L', - 74209 => 'L', - 74210 => 'L', - 74211 => 'L', - 74212 => 'L', - 74213 => 'L', - 74214 => 'L', - 74215 => 'L', - 74216 => 'L', - 74217 => 'L', - 74218 => 'L', - 74219 => 'L', - 74220 => 'L', - 74221 => 'L', - 74222 => 'L', - 74223 => 'L', - 74224 => 'L', - 74225 => 'L', - 74226 => 'L', - 74227 => 'L', - 74228 => 'L', - 74229 => 'L', - 74230 => 'L', - 74231 => 'L', - 74232 => 'L', - 74233 => 'L', - 74234 => 'L', - 74235 => 'L', - 74236 => 'L', - 74237 => 'L', - 74238 => 'L', - 74239 => 'L', - 74240 => 'L', - 74241 => 'L', - 74242 => 'L', - 74243 => 'L', - 74244 => 'L', - 74245 => 'L', - 74246 => 'L', - 74247 => 'L', - 74248 => 'L', - 74249 => 'L', - 74250 => 'L', - 74251 => 'L', - 74252 => 'L', - 74253 => 'L', - 74254 => 'L', - 74255 => 'L', - 74256 => 'L', - 74257 => 'L', - 74258 => 'L', - 74259 => 'L', - 74260 => 'L', - 74261 => 'L', - 74262 => 'L', - 74263 => 'L', - 74264 => 'L', - 74265 => 'L', - 74266 => 'L', - 74267 => 'L', - 74268 => 'L', - 74269 => 'L', - 74270 => 'L', - 74271 => 'L', - 74272 => 'L', - 74273 => 'L', - 74274 => 'L', - 74275 => 'L', - 74276 => 'L', - 74277 => 'L', - 74278 => 'L', - 74279 => 'L', - 74280 => 'L', - 74281 => 'L', - 74282 => 'L', - 74283 => 'L', - 74284 => 'L', - 74285 => 'L', - 74286 => 'L', - 74287 => 'L', - 74288 => 'L', - 74289 => 'L', - 74290 => 'L', - 74291 => 'L', - 74292 => 'L', - 74293 => 'L', - 74294 => 'L', - 74295 => 'L', - 74296 => 'L', - 74297 => 'L', - 74298 => 'L', - 74299 => 'L', - 74300 => 'L', - 74301 => 'L', - 74302 => 'L', - 74303 => 'L', - 74304 => 'L', - 74305 => 'L', - 74306 => 'L', - 74307 => 'L', - 74308 => 'L', - 74309 => 'L', - 74310 => 'L', - 74311 => 'L', - 74312 => 'L', - 74313 => 'L', - 74314 => 'L', - 74315 => 'L', - 74316 => 'L', - 74317 => 'L', - 74318 => 'L', - 74319 => 'L', - 74320 => 'L', - 74321 => 'L', - 74322 => 'L', - 74323 => 'L', - 74324 => 'L', - 74325 => 'L', - 74326 => 'L', - 74327 => 'L', - 74328 => 'L', - 74329 => 'L', - 74330 => 'L', - 74331 => 'L', - 74332 => 'L', - 74333 => 'L', - 74334 => 'L', - 74335 => 'L', - 74336 => 'L', - 74337 => 'L', - 74338 => 'L', - 74339 => 'L', - 74340 => 'L', - 74341 => 'L', - 74342 => 'L', - 74343 => 'L', - 74344 => 'L', - 74345 => 'L', - 74346 => 'L', - 74347 => 'L', - 74348 => 'L', - 74349 => 'L', - 74350 => 'L', - 74351 => 'L', - 74352 => 'L', - 74353 => 'L', - 74354 => 'L', - 74355 => 'L', - 74356 => 'L', - 74357 => 'L', - 74358 => 'L', - 74359 => 'L', - 74360 => 'L', - 74361 => 'L', - 74362 => 'L', - 74363 => 'L', - 74364 => 'L', - 74365 => 'L', - 74366 => 'L', - 74367 => 'L', - 74368 => 'L', - 74369 => 'L', - 74370 => 'L', - 74371 => 'L', - 74372 => 'L', - 74373 => 'L', - 74374 => 'L', - 74375 => 'L', - 74376 => 'L', - 74377 => 'L', - 74378 => 'L', - 74379 => 'L', - 74380 => 'L', - 74381 => 'L', - 74382 => 'L', - 74383 => 'L', - 74384 => 'L', - 74385 => 'L', - 74386 => 'L', - 74387 => 'L', - 74388 => 'L', - 74389 => 'L', - 74390 => 'L', - 74391 => 'L', - 74392 => 'L', - 74393 => 'L', - 74394 => 'L', - 74395 => 'L', - 74396 => 'L', - 74397 => 'L', - 74398 => 'L', - 74399 => 'L', - 74400 => 'L', - 74401 => 'L', - 74402 => 'L', - 74403 => 'L', - 74404 => 'L', - 74405 => 'L', - 74406 => 'L', - 74407 => 'L', - 74408 => 'L', - 74409 => 'L', - 74410 => 'L', - 74411 => 'L', - 74412 => 'L', - 74413 => 'L', - 74414 => 'L', - 74415 => 'L', - 74416 => 'L', - 74417 => 'L', - 74418 => 'L', - 74419 => 'L', - 74420 => 'L', - 74421 => 'L', - 74422 => 'L', - 74423 => 'L', - 74424 => 'L', - 74425 => 'L', - 74426 => 'L', - 74427 => 'L', - 74428 => 'L', - 74429 => 'L', - 74430 => 'L', - 74431 => 'L', - 74432 => 'L', - 74433 => 'L', - 74434 => 'L', - 74435 => 'L', - 74436 => 'L', - 74437 => 'L', - 74438 => 'L', - 74439 => 'L', - 74440 => 'L', - 74441 => 'L', - 74442 => 'L', - 74443 => 'L', - 74444 => 'L', - 74445 => 'L', - 74446 => 'L', - 74447 => 'L', - 74448 => 'L', - 74449 => 'L', - 74450 => 'L', - 74451 => 'L', - 74452 => 'L', - 74453 => 'L', - 74454 => 'L', - 74455 => 'L', - 74456 => 'L', - 74457 => 'L', - 74458 => 'L', - 74459 => 'L', - 74460 => 'L', - 74461 => 'L', - 74462 => 'L', - 74463 => 'L', - 74464 => 'L', - 74465 => 'L', - 74466 => 'L', - 74467 => 'L', - 74468 => 'L', - 74469 => 'L', - 74470 => 'L', - 74471 => 'L', - 74472 => 'L', - 74473 => 'L', - 74474 => 'L', - 74475 => 'L', - 74476 => 'L', - 74477 => 'L', - 74478 => 'L', - 74479 => 'L', - 74480 => 'L', - 74481 => 'L', - 74482 => 'L', - 74483 => 'L', - 74484 => 'L', - 74485 => 'L', - 74486 => 'L', - 74487 => 'L', - 74488 => 'L', - 74489 => 'L', - 74490 => 'L', - 74491 => 'L', - 74492 => 'L', - 74493 => 'L', - 74494 => 'L', - 74495 => 'L', - 74496 => 'L', - 74497 => 'L', - 74498 => 'L', - 74499 => 'L', - 74500 => 'L', - 74501 => 'L', - 74502 => 'L', - 74503 => 'L', - 74504 => 'L', - 74505 => 'L', - 74506 => 'L', - 74507 => 'L', - 74508 => 'L', - 74509 => 'L', - 74510 => 'L', - 74511 => 'L', - 74512 => 'L', - 74513 => 'L', - 74514 => 'L', - 74515 => 'L', - 74516 => 'L', - 74517 => 'L', - 74518 => 'L', - 74519 => 'L', - 74520 => 'L', - 74521 => 'L', - 74522 => 'L', - 74523 => 'L', - 74524 => 'L', - 74525 => 'L', - 74526 => 'L', - 74527 => 'L', - 74528 => 'L', - 74529 => 'L', - 74530 => 'L', - 74531 => 'L', - 74532 => 'L', - 74533 => 'L', - 74534 => 'L', - 74535 => 'L', - 74536 => 'L', - 74537 => 'L', - 74538 => 'L', - 74539 => 'L', - 74540 => 'L', - 74541 => 'L', - 74542 => 'L', - 74543 => 'L', - 74544 => 'L', - 74545 => 'L', - 74546 => 'L', - 74547 => 'L', - 74548 => 'L', - 74549 => 'L', - 74550 => 'L', - 74551 => 'L', - 74552 => 'L', - 74553 => 'L', - 74554 => 'L', - 74555 => 'L', - 74556 => 'L', - 74557 => 'L', - 74558 => 'L', - 74559 => 'L', - 74560 => 'L', - 74561 => 'L', - 74562 => 'L', - 74563 => 'L', - 74564 => 'L', - 74565 => 'L', - 74566 => 'L', - 74567 => 'L', - 74568 => 'L', - 74569 => 'L', - 74570 => 'L', - 74571 => 'L', - 74572 => 'L', - 74573 => 'L', - 74574 => 'L', - 74575 => 'L', - 74576 => 'L', - 74577 => 'L', - 74578 => 'L', - 74579 => 'L', - 74580 => 'L', - 74581 => 'L', - 74582 => 'L', - 74583 => 'L', - 74584 => 'L', - 74585 => 'L', - 74586 => 'L', - 74587 => 'L', - 74588 => 'L', - 74589 => 'L', - 74590 => 'L', - 74591 => 'L', - 74592 => 'L', - 74593 => 'L', - 74594 => 'L', - 74595 => 'L', - 74596 => 'L', - 74597 => 'L', - 74598 => 'L', - 74599 => 'L', - 74600 => 'L', - 74601 => 'L', - 74602 => 'L', - 74603 => 'L', - 74604 => 'L', - 74605 => 'L', - 74606 => 'L', - 74752 => 'L', - 74753 => 'L', - 74754 => 'L', - 74755 => 'L', - 74756 => 'L', - 74757 => 'L', - 74758 => 'L', - 74759 => 'L', - 74760 => 'L', - 74761 => 'L', - 74762 => 'L', - 74763 => 'L', - 74764 => 'L', - 74765 => 'L', - 74766 => 'L', - 74767 => 'L', - 74768 => 'L', - 74769 => 'L', - 74770 => 'L', - 74771 => 'L', - 74772 => 'L', - 74773 => 'L', - 74774 => 'L', - 74775 => 'L', - 74776 => 'L', - 74777 => 'L', - 74778 => 'L', - 74779 => 'L', - 74780 => 'L', - 74781 => 'L', - 74782 => 'L', - 74783 => 'L', - 74784 => 'L', - 74785 => 'L', - 74786 => 'L', - 74787 => 'L', - 74788 => 'L', - 74789 => 'L', - 74790 => 'L', - 74791 => 'L', - 74792 => 'L', - 74793 => 'L', - 74794 => 'L', - 74795 => 'L', - 74796 => 'L', - 74797 => 'L', - 74798 => 'L', - 74799 => 'L', - 74800 => 'L', - 74801 => 'L', - 74802 => 'L', - 74803 => 'L', - 74804 => 'L', - 74805 => 'L', - 74806 => 'L', - 74807 => 'L', - 74808 => 'L', - 74809 => 'L', - 74810 => 'L', - 74811 => 'L', - 74812 => 'L', - 74813 => 'L', - 74814 => 'L', - 74815 => 'L', - 74816 => 'L', - 74817 => 'L', - 74818 => 'L', - 74819 => 'L', - 74820 => 'L', - 74821 => 'L', - 74822 => 'L', - 74823 => 'L', - 74824 => 'L', - 74825 => 'L', - 74826 => 'L', - 74827 => 'L', - 74828 => 'L', - 74829 => 'L', - 74830 => 'L', - 74831 => 'L', - 74832 => 'L', - 74833 => 'L', - 74834 => 'L', - 74835 => 'L', - 74836 => 'L', - 74837 => 'L', - 74838 => 'L', - 74839 => 'L', - 74840 => 'L', - 74841 => 'L', - 74842 => 'L', - 74843 => 'L', - 74844 => 'L', - 74845 => 'L', - 74846 => 'L', - 74847 => 'L', - 74848 => 'L', - 74849 => 'L', - 74850 => 'L', - 74864 => 'L', - 74865 => 'L', - 74866 => 'L', - 74867 => 'L', - 118784 => 'L', - 118785 => 'L', - 118786 => 'L', - 118787 => 'L', - 118788 => 'L', - 118789 => 'L', - 118790 => 'L', - 118791 => 'L', - 118792 => 'L', - 118793 => 'L', - 118794 => 'L', - 118795 => 'L', - 118796 => 'L', - 118797 => 'L', - 118798 => 'L', - 118799 => 'L', - 118800 => 'L', - 118801 => 'L', - 118802 => 'L', - 118803 => 'L', - 118804 => 'L', - 118805 => 'L', - 118806 => 'L', - 118807 => 'L', - 118808 => 'L', - 118809 => 'L', - 118810 => 'L', - 118811 => 'L', - 118812 => 'L', - 118813 => 'L', - 118814 => 'L', - 118815 => 'L', - 118816 => 'L', - 118817 => 'L', - 118818 => 'L', - 118819 => 'L', - 118820 => 'L', - 118821 => 'L', - 118822 => 'L', - 118823 => 'L', - 118824 => 'L', - 118825 => 'L', - 118826 => 'L', - 118827 => 'L', - 118828 => 'L', - 118829 => 'L', - 118830 => 'L', - 118831 => 'L', - 118832 => 'L', - 118833 => 'L', - 118834 => 'L', - 118835 => 'L', - 118836 => 'L', - 118837 => 'L', - 118838 => 'L', - 118839 => 'L', - 118840 => 'L', - 118841 => 'L', - 118842 => 'L', - 118843 => 'L', - 118844 => 'L', - 118845 => 'L', - 118846 => 'L', - 118847 => 'L', - 118848 => 'L', - 118849 => 'L', - 118850 => 'L', - 118851 => 'L', - 118852 => 'L', - 118853 => 'L', - 118854 => 'L', - 118855 => 'L', - 118856 => 'L', - 118857 => 'L', - 118858 => 'L', - 118859 => 'L', - 118860 => 'L', - 118861 => 'L', - 118862 => 'L', - 118863 => 'L', - 118864 => 'L', - 118865 => 'L', - 118866 => 'L', - 118867 => 'L', - 118868 => 'L', - 118869 => 'L', - 118870 => 'L', - 118871 => 'L', - 118872 => 'L', - 118873 => 'L', - 118874 => 'L', - 118875 => 'L', - 118876 => 'L', - 118877 => 'L', - 118878 => 'L', - 118879 => 'L', - 118880 => 'L', - 118881 => 'L', - 118882 => 'L', - 118883 => 'L', - 118884 => 'L', - 118885 => 'L', - 118886 => 'L', - 118887 => 'L', - 118888 => 'L', - 118889 => 'L', - 118890 => 'L', - 118891 => 'L', - 118892 => 'L', - 118893 => 'L', - 118894 => 'L', - 118895 => 'L', - 118896 => 'L', - 118897 => 'L', - 118898 => 'L', - 118899 => 'L', - 118900 => 'L', - 118901 => 'L', - 118902 => 'L', - 118903 => 'L', - 118904 => 'L', - 118905 => 'L', - 118906 => 'L', - 118907 => 'L', - 118908 => 'L', - 118909 => 'L', - 118910 => 'L', - 118911 => 'L', - 118912 => 'L', - 118913 => 'L', - 118914 => 'L', - 118915 => 'L', - 118916 => 'L', - 118917 => 'L', - 118918 => 'L', - 118919 => 'L', - 118920 => 'L', - 118921 => 'L', - 118922 => 'L', - 118923 => 'L', - 118924 => 'L', - 118925 => 'L', - 118926 => 'L', - 118927 => 'L', - 118928 => 'L', - 118929 => 'L', - 118930 => 'L', - 118931 => 'L', - 118932 => 'L', - 118933 => 'L', - 118934 => 'L', - 118935 => 'L', - 118936 => 'L', - 118937 => 'L', - 118938 => 'L', - 118939 => 'L', - 118940 => 'L', - 118941 => 'L', - 118942 => 'L', - 118943 => 'L', - 118944 => 'L', - 118945 => 'L', - 118946 => 'L', - 118947 => 'L', - 118948 => 'L', - 118949 => 'L', - 118950 => 'L', - 118951 => 'L', - 118952 => 'L', - 118953 => 'L', - 118954 => 'L', - 118955 => 'L', - 118956 => 'L', - 118957 => 'L', - 118958 => 'L', - 118959 => 'L', - 118960 => 'L', - 118961 => 'L', - 118962 => 'L', - 118963 => 'L', - 118964 => 'L', - 118965 => 'L', - 118966 => 'L', - 118967 => 'L', - 118968 => 'L', - 118969 => 'L', - 118970 => 'L', - 118971 => 'L', - 118972 => 'L', - 118973 => 'L', - 118974 => 'L', - 118975 => 'L', - 118976 => 'L', - 118977 => 'L', - 118978 => 'L', - 118979 => 'L', - 118980 => 'L', - 118981 => 'L', - 118982 => 'L', - 118983 => 'L', - 118984 => 'L', - 118985 => 'L', - 118986 => 'L', - 118987 => 'L', - 118988 => 'L', - 118989 => 'L', - 118990 => 'L', - 118991 => 'L', - 118992 => 'L', - 118993 => 'L', - 118994 => 'L', - 118995 => 'L', - 118996 => 'L', - 118997 => 'L', - 118998 => 'L', - 118999 => 'L', - 119000 => 'L', - 119001 => 'L', - 119002 => 'L', - 119003 => 'L', - 119004 => 'L', - 119005 => 'L', - 119006 => 'L', - 119007 => 'L', - 119008 => 'L', - 119009 => 'L', - 119010 => 'L', - 119011 => 'L', - 119012 => 'L', - 119013 => 'L', - 119014 => 'L', - 119015 => 'L', - 119016 => 'L', - 119017 => 'L', - 119018 => 'L', - 119019 => 'L', - 119020 => 'L', - 119021 => 'L', - 119022 => 'L', - 119023 => 'L', - 119024 => 'L', - 119025 => 'L', - 119026 => 'L', - 119027 => 'L', - 119028 => 'L', - 119029 => 'L', - 119040 => 'L', - 119041 => 'L', - 119042 => 'L', - 119043 => 'L', - 119044 => 'L', - 119045 => 'L', - 119046 => 'L', - 119047 => 'L', - 119048 => 'L', - 119049 => 'L', - 119050 => 'L', - 119051 => 'L', - 119052 => 'L', - 119053 => 'L', - 119054 => 'L', - 119055 => 'L', - 119056 => 'L', - 119057 => 'L', - 119058 => 'L', - 119059 => 'L', - 119060 => 'L', - 119061 => 'L', - 119062 => 'L', - 119063 => 'L', - 119064 => 'L', - 119065 => 'L', - 119066 => 'L', - 119067 => 'L', - 119068 => 'L', - 119069 => 'L', - 119070 => 'L', - 119071 => 'L', - 119072 => 'L', - 119073 => 'L', - 119074 => 'L', - 119075 => 'L', - 119076 => 'L', - 119077 => 'L', - 119078 => 'L', - 119082 => 'L', - 119083 => 'L', - 119084 => 'L', - 119085 => 'L', - 119086 => 'L', - 119087 => 'L', - 119088 => 'L', - 119089 => 'L', - 119090 => 'L', - 119091 => 'L', - 119092 => 'L', - 119093 => 'L', - 119094 => 'L', - 119095 => 'L', - 119096 => 'L', - 119097 => 'L', - 119098 => 'L', - 119099 => 'L', - 119100 => 'L', - 119101 => 'L', - 119102 => 'L', - 119103 => 'L', - 119104 => 'L', - 119105 => 'L', - 119106 => 'L', - 119107 => 'L', - 119108 => 'L', - 119109 => 'L', - 119110 => 'L', - 119111 => 'L', - 119112 => 'L', - 119113 => 'L', - 119114 => 'L', - 119115 => 'L', - 119116 => 'L', - 119117 => 'L', - 119118 => 'L', - 119119 => 'L', - 119120 => 'L', - 119121 => 'L', - 119122 => 'L', - 119123 => 'L', - 119124 => 'L', - 119125 => 'L', - 119126 => 'L', - 119127 => 'L', - 119128 => 'L', - 119129 => 'L', - 119130 => 'L', - 119131 => 'L', - 119132 => 'L', - 119133 => 'L', - 119134 => 'L', - 119135 => 'L', - 119136 => 'L', - 119137 => 'L', - 119138 => 'L', - 119139 => 'L', - 119140 => 'L', - 119141 => 'L', - 119142 => 'L', - 119143 => 'NSM', - 119144 => 'NSM', - 119145 => 'NSM', - 119146 => 'L', - 119147 => 'L', - 119148 => 'L', - 119149 => 'L', - 119150 => 'L', - 119151 => 'L', - 119152 => 'L', - 119153 => 'L', - 119154 => 'L', - 119155 => 'BN', - 119156 => 'BN', - 119157 => 'BN', - 119158 => 'BN', - 119159 => 'BN', - 119160 => 'BN', - 119161 => 'BN', - 119162 => 'BN', - 119163 => 'NSM', - 119164 => 'NSM', - 119165 => 'NSM', - 119166 => 'NSM', - 119167 => 'NSM', - 119168 => 'NSM', - 119169 => 'NSM', - 119170 => 'NSM', - 119171 => 'L', - 119172 => 'L', - 119173 => 'NSM', - 119174 => 'NSM', - 119175 => 'NSM', - 119176 => 'NSM', - 119177 => 'NSM', - 119178 => 'NSM', - 119179 => 'NSM', - 119180 => 'L', - 119181 => 'L', - 119182 => 'L', - 119183 => 'L', - 119184 => 'L', - 119185 => 'L', - 119186 => 'L', - 119187 => 'L', - 119188 => 'L', - 119189 => 'L', - 119190 => 'L', - 119191 => 'L', - 119192 => 'L', - 119193 => 'L', - 119194 => 'L', - 119195 => 'L', - 119196 => 'L', - 119197 => 'L', - 119198 => 'L', - 119199 => 'L', - 119200 => 'L', - 119201 => 'L', - 119202 => 'L', - 119203 => 'L', - 119204 => 'L', - 119205 => 'L', - 119206 => 'L', - 119207 => 'L', - 119208 => 'L', - 119209 => 'L', - 119210 => 'NSM', - 119211 => 'NSM', - 119212 => 'NSM', - 119213 => 'NSM', - 119214 => 'L', - 119215 => 'L', - 119216 => 'L', - 119217 => 'L', - 119218 => 'L', - 119219 => 'L', - 119220 => 'L', - 119221 => 'L', - 119222 => 'L', - 119223 => 'L', - 119224 => 'L', - 119225 => 'L', - 119226 => 'L', - 119227 => 'L', - 119228 => 'L', - 119229 => 'L', - 119230 => 'L', - 119231 => 'L', - 119232 => 'L', - 119233 => 'L', - 119234 => 'L', - 119235 => 'L', - 119236 => 'L', - 119237 => 'L', - 119238 => 'L', - 119239 => 'L', - 119240 => 'L', - 119241 => 'L', - 119242 => 'L', - 119243 => 'L', - 119244 => 'L', - 119245 => 'L', - 119246 => 'L', - 119247 => 'L', - 119248 => 'L', - 119249 => 'L', - 119250 => 'L', - 119251 => 'L', - 119252 => 'L', - 119253 => 'L', - 119254 => 'L', - 119255 => 'L', - 119256 => 'L', - 119257 => 'L', - 119258 => 'L', - 119259 => 'L', - 119260 => 'L', - 119261 => 'L', - 119296 => 'ON', - 119297 => 'ON', - 119298 => 'ON', - 119299 => 'ON', - 119300 => 'ON', - 119301 => 'ON', - 119302 => 'ON', - 119303 => 'ON', - 119304 => 'ON', - 119305 => 'ON', - 119306 => 'ON', - 119307 => 'ON', - 119308 => 'ON', - 119309 => 'ON', - 119310 => 'ON', - 119311 => 'ON', - 119312 => 'ON', - 119313 => 'ON', - 119314 => 'ON', - 119315 => 'ON', - 119316 => 'ON', - 119317 => 'ON', - 119318 => 'ON', - 119319 => 'ON', - 119320 => 'ON', - 119321 => 'ON', - 119322 => 'ON', - 119323 => 'ON', - 119324 => 'ON', - 119325 => 'ON', - 119326 => 'ON', - 119327 => 'ON', - 119328 => 'ON', - 119329 => 'ON', - 119330 => 'ON', - 119331 => 'ON', - 119332 => 'ON', - 119333 => 'ON', - 119334 => 'ON', - 119335 => 'ON', - 119336 => 'ON', - 119337 => 'ON', - 119338 => 'ON', - 119339 => 'ON', - 119340 => 'ON', - 119341 => 'ON', - 119342 => 'ON', - 119343 => 'ON', - 119344 => 'ON', - 119345 => 'ON', - 119346 => 'ON', - 119347 => 'ON', - 119348 => 'ON', - 119349 => 'ON', - 119350 => 'ON', - 119351 => 'ON', - 119352 => 'ON', - 119353 => 'ON', - 119354 => 'ON', - 119355 => 'ON', - 119356 => 'ON', - 119357 => 'ON', - 119358 => 'ON', - 119359 => 'ON', - 119360 => 'ON', - 119361 => 'ON', - 119362 => 'NSM', - 119363 => 'NSM', - 119364 => 'NSM', - 119365 => 'ON', - 119552 => 'ON', - 119553 => 'ON', - 119554 => 'ON', - 119555 => 'ON', - 119556 => 'ON', - 119557 => 'ON', - 119558 => 'ON', - 119559 => 'ON', - 119560 => 'ON', - 119561 => 'ON', - 119562 => 'ON', - 119563 => 'ON', - 119564 => 'ON', - 119565 => 'ON', - 119566 => 'ON', - 119567 => 'ON', - 119568 => 'ON', - 119569 => 'ON', - 119570 => 'ON', - 119571 => 'ON', - 119572 => 'ON', - 119573 => 'ON', - 119574 => 'ON', - 119575 => 'ON', - 119576 => 'ON', - 119577 => 'ON', - 119578 => 'ON', - 119579 => 'ON', - 119580 => 'ON', - 119581 => 'ON', - 119582 => 'ON', - 119583 => 'ON', - 119584 => 'ON', - 119585 => 'ON', - 119586 => 'ON', - 119587 => 'ON', - 119588 => 'ON', - 119589 => 'ON', - 119590 => 'ON', - 119591 => 'ON', - 119592 => 'ON', - 119593 => 'ON', - 119594 => 'ON', - 119595 => 'ON', - 119596 => 'ON', - 119597 => 'ON', - 119598 => 'ON', - 119599 => 'ON', - 119600 => 'ON', - 119601 => 'ON', - 119602 => 'ON', - 119603 => 'ON', - 119604 => 'ON', - 119605 => 'ON', - 119606 => 'ON', - 119607 => 'ON', - 119608 => 'ON', - 119609 => 'ON', - 119610 => 'ON', - 119611 => 'ON', - 119612 => 'ON', - 119613 => 'ON', - 119614 => 'ON', - 119615 => 'ON', - 119616 => 'ON', - 119617 => 'ON', - 119618 => 'ON', - 119619 => 'ON', - 119620 => 'ON', - 119621 => 'ON', - 119622 => 'ON', - 119623 => 'ON', - 119624 => 'ON', - 119625 => 'ON', - 119626 => 'ON', - 119627 => 'ON', - 119628 => 'ON', - 119629 => 'ON', - 119630 => 'ON', - 119631 => 'ON', - 119632 => 'ON', - 119633 => 'ON', - 119634 => 'ON', - 119635 => 'ON', - 119636 => 'ON', - 119637 => 'ON', - 119638 => 'ON', - 119648 => 'L', - 119649 => 'L', - 119650 => 'L', - 119651 => 'L', - 119652 => 'L', - 119653 => 'L', - 119654 => 'L', - 119655 => 'L', - 119656 => 'L', - 119657 => 'L', - 119658 => 'L', - 119659 => 'L', - 119660 => 'L', - 119661 => 'L', - 119662 => 'L', - 119663 => 'L', - 119664 => 'L', - 119665 => 'L', - 119808 => 'L', - 119809 => 'L', - 119810 => 'L', - 119811 => 'L', - 119812 => 'L', - 119813 => 'L', - 119814 => 'L', - 119815 => 'L', - 119816 => 'L', - 119817 => 'L', - 119818 => 'L', - 119819 => 'L', - 119820 => 'L', - 119821 => 'L', - 119822 => 'L', - 119823 => 'L', - 119824 => 'L', - 119825 => 'L', - 119826 => 'L', - 119827 => 'L', - 119828 => 'L', - 119829 => 'L', - 119830 => 'L', - 119831 => 'L', - 119832 => 'L', - 119833 => 'L', - 119834 => 'L', - 119835 => 'L', - 119836 => 'L', - 119837 => 'L', - 119838 => 'L', - 119839 => 'L', - 119840 => 'L', - 119841 => 'L', - 119842 => 'L', - 119843 => 'L', - 119844 => 'L', - 119845 => 'L', - 119846 => 'L', - 119847 => 'L', - 119848 => 'L', - 119849 => 'L', - 119850 => 'L', - 119851 => 'L', - 119852 => 'L', - 119853 => 'L', - 119854 => 'L', - 119855 => 'L', - 119856 => 'L', - 119857 => 'L', - 119858 => 'L', - 119859 => 'L', - 119860 => 'L', - 119861 => 'L', - 119862 => 'L', - 119863 => 'L', - 119864 => 'L', - 119865 => 'L', - 119866 => 'L', - 119867 => 'L', - 119868 => 'L', - 119869 => 'L', - 119870 => 'L', - 119871 => 'L', - 119872 => 'L', - 119873 => 'L', - 119874 => 'L', - 119875 => 'L', - 119876 => 'L', - 119877 => 'L', - 119878 => 'L', - 119879 => 'L', - 119880 => 'L', - 119881 => 'L', - 119882 => 'L', - 119883 => 'L', - 119884 => 'L', - 119885 => 'L', - 119886 => 'L', - 119887 => 'L', - 119888 => 'L', - 119889 => 'L', - 119890 => 'L', - 119891 => 'L', - 119892 => 'L', - 119894 => 'L', - 119895 => 'L', - 119896 => 'L', - 119897 => 'L', - 119898 => 'L', - 119899 => 'L', - 119900 => 'L', - 119901 => 'L', - 119902 => 'L', - 119903 => 'L', - 119904 => 'L', - 119905 => 'L', - 119906 => 'L', - 119907 => 'L', - 119908 => 'L', - 119909 => 'L', - 119910 => 'L', - 119911 => 'L', - 119912 => 'L', - 119913 => 'L', - 119914 => 'L', - 119915 => 'L', - 119916 => 'L', - 119917 => 'L', - 119918 => 'L', - 119919 => 'L', - 119920 => 'L', - 119921 => 'L', - 119922 => 'L', - 119923 => 'L', - 119924 => 'L', - 119925 => 'L', - 119926 => 'L', - 119927 => 'L', - 119928 => 'L', - 119929 => 'L', - 119930 => 'L', - 119931 => 'L', - 119932 => 'L', - 119933 => 'L', - 119934 => 'L', - 119935 => 'L', - 119936 => 'L', - 119937 => 'L', - 119938 => 'L', - 119939 => 'L', - 119940 => 'L', - 119941 => 'L', - 119942 => 'L', - 119943 => 'L', - 119944 => 'L', - 119945 => 'L', - 119946 => 'L', - 119947 => 'L', - 119948 => 'L', - 119949 => 'L', - 119950 => 'L', - 119951 => 'L', - 119952 => 'L', - 119953 => 'L', - 119954 => 'L', - 119955 => 'L', - 119956 => 'L', - 119957 => 'L', - 119958 => 'L', - 119959 => 'L', - 119960 => 'L', - 119961 => 'L', - 119962 => 'L', - 119963 => 'L', - 119964 => 'L', - 119966 => 'L', - 119967 => 'L', - 119970 => 'L', - 119973 => 'L', - 119974 => 'L', - 119977 => 'L', - 119978 => 'L', - 119979 => 'L', - 119980 => 'L', - 119982 => 'L', - 119983 => 'L', - 119984 => 'L', - 119985 => 'L', - 119986 => 'L', - 119987 => 'L', - 119988 => 'L', - 119989 => 'L', - 119990 => 'L', - 119991 => 'L', - 119992 => 'L', - 119993 => 'L', - 119995 => 'L', - 119997 => 'L', - 119998 => 'L', - 119999 => 'L', - 120000 => 'L', - 120001 => 'L', - 120002 => 'L', - 120003 => 'L', - 120005 => 'L', - 120006 => 'L', - 120007 => 'L', - 120008 => 'L', - 120009 => 'L', - 120010 => 'L', - 120011 => 'L', - 120012 => 'L', - 120013 => 'L', - 120014 => 'L', - 120015 => 'L', - 120016 => 'L', - 120017 => 'L', - 120018 => 'L', - 120019 => 'L', - 120020 => 'L', - 120021 => 'L', - 120022 => 'L', - 120023 => 'L', - 120024 => 'L', - 120025 => 'L', - 120026 => 'L', - 120027 => 'L', - 120028 => 'L', - 120029 => 'L', - 120030 => 'L', - 120031 => 'L', - 120032 => 'L', - 120033 => 'L', - 120034 => 'L', - 120035 => 'L', - 120036 => 'L', - 120037 => 'L', - 120038 => 'L', - 120039 => 'L', - 120040 => 'L', - 120041 => 'L', - 120042 => 'L', - 120043 => 'L', - 120044 => 'L', - 120045 => 'L', - 120046 => 'L', - 120047 => 'L', - 120048 => 'L', - 120049 => 'L', - 120050 => 'L', - 120051 => 'L', - 120052 => 'L', - 120053 => 'L', - 120054 => 'L', - 120055 => 'L', - 120056 => 'L', - 120057 => 'L', - 120058 => 'L', - 120059 => 'L', - 120060 => 'L', - 120061 => 'L', - 120062 => 'L', - 120063 => 'L', - 120064 => 'L', - 120065 => 'L', - 120066 => 'L', - 120067 => 'L', - 120068 => 'L', - 120069 => 'L', - 120071 => 'L', - 120072 => 'L', - 120073 => 'L', - 120074 => 'L', - 120077 => 'L', - 120078 => 'L', - 120079 => 'L', - 120080 => 'L', - 120081 => 'L', - 120082 => 'L', - 120083 => 'L', - 120084 => 'L', - 120086 => 'L', - 120087 => 'L', - 120088 => 'L', - 120089 => 'L', - 120090 => 'L', - 120091 => 'L', - 120092 => 'L', - 120094 => 'L', - 120095 => 'L', - 120096 => 'L', - 120097 => 'L', - 120098 => 'L', - 120099 => 'L', - 120100 => 'L', - 120101 => 'L', - 120102 => 'L', - 120103 => 'L', - 120104 => 'L', - 120105 => 'L', - 120106 => 'L', - 120107 => 'L', - 120108 => 'L', - 120109 => 'L', - 120110 => 'L', - 120111 => 'L', - 120112 => 'L', - 120113 => 'L', - 120114 => 'L', - 120115 => 'L', - 120116 => 'L', - 120117 => 'L', - 120118 => 'L', - 120119 => 'L', - 120120 => 'L', - 120121 => 'L', - 120123 => 'L', - 120124 => 'L', - 120125 => 'L', - 120126 => 'L', - 120128 => 'L', - 120129 => 'L', - 120130 => 'L', - 120131 => 'L', - 120132 => 'L', - 120134 => 'L', - 120138 => 'L', - 120139 => 'L', - 120140 => 'L', - 120141 => 'L', - 120142 => 'L', - 120143 => 'L', - 120144 => 'L', - 120146 => 'L', - 120147 => 'L', - 120148 => 'L', - 120149 => 'L', - 120150 => 'L', - 120151 => 'L', - 120152 => 'L', - 120153 => 'L', - 120154 => 'L', - 120155 => 'L', - 120156 => 'L', - 120157 => 'L', - 120158 => 'L', - 120159 => 'L', - 120160 => 'L', - 120161 => 'L', - 120162 => 'L', - 120163 => 'L', - 120164 => 'L', - 120165 => 'L', - 120166 => 'L', - 120167 => 'L', - 120168 => 'L', - 120169 => 'L', - 120170 => 'L', - 120171 => 'L', - 120172 => 'L', - 120173 => 'L', - 120174 => 'L', - 120175 => 'L', - 120176 => 'L', - 120177 => 'L', - 120178 => 'L', - 120179 => 'L', - 120180 => 'L', - 120181 => 'L', - 120182 => 'L', - 120183 => 'L', - 120184 => 'L', - 120185 => 'L', - 120186 => 'L', - 120187 => 'L', - 120188 => 'L', - 120189 => 'L', - 120190 => 'L', - 120191 => 'L', - 120192 => 'L', - 120193 => 'L', - 120194 => 'L', - 120195 => 'L', - 120196 => 'L', - 120197 => 'L', - 120198 => 'L', - 120199 => 'L', - 120200 => 'L', - 120201 => 'L', - 120202 => 'L', - 120203 => 'L', - 120204 => 'L', - 120205 => 'L', - 120206 => 'L', - 120207 => 'L', - 120208 => 'L', - 120209 => 'L', - 120210 => 'L', - 120211 => 'L', - 120212 => 'L', - 120213 => 'L', - 120214 => 'L', - 120215 => 'L', - 120216 => 'L', - 120217 => 'L', - 120218 => 'L', - 120219 => 'L', - 120220 => 'L', - 120221 => 'L', - 120222 => 'L', - 120223 => 'L', - 120224 => 'L', - 120225 => 'L', - 120226 => 'L', - 120227 => 'L', - 120228 => 'L', - 120229 => 'L', - 120230 => 'L', - 120231 => 'L', - 120232 => 'L', - 120233 => 'L', - 120234 => 'L', - 120235 => 'L', - 120236 => 'L', - 120237 => 'L', - 120238 => 'L', - 120239 => 'L', - 120240 => 'L', - 120241 => 'L', - 120242 => 'L', - 120243 => 'L', - 120244 => 'L', - 120245 => 'L', - 120246 => 'L', - 120247 => 'L', - 120248 => 'L', - 120249 => 'L', - 120250 => 'L', - 120251 => 'L', - 120252 => 'L', - 120253 => 'L', - 120254 => 'L', - 120255 => 'L', - 120256 => 'L', - 120257 => 'L', - 120258 => 'L', - 120259 => 'L', - 120260 => 'L', - 120261 => 'L', - 120262 => 'L', - 120263 => 'L', - 120264 => 'L', - 120265 => 'L', - 120266 => 'L', - 120267 => 'L', - 120268 => 'L', - 120269 => 'L', - 120270 => 'L', - 120271 => 'L', - 120272 => 'L', - 120273 => 'L', - 120274 => 'L', - 120275 => 'L', - 120276 => 'L', - 120277 => 'L', - 120278 => 'L', - 120279 => 'L', - 120280 => 'L', - 120281 => 'L', - 120282 => 'L', - 120283 => 'L', - 120284 => 'L', - 120285 => 'L', - 120286 => 'L', - 120287 => 'L', - 120288 => 'L', - 120289 => 'L', - 120290 => 'L', - 120291 => 'L', - 120292 => 'L', - 120293 => 'L', - 120294 => 'L', - 120295 => 'L', - 120296 => 'L', - 120297 => 'L', - 120298 => 'L', - 120299 => 'L', - 120300 => 'L', - 120301 => 'L', - 120302 => 'L', - 120303 => 'L', - 120304 => 'L', - 120305 => 'L', - 120306 => 'L', - 120307 => 'L', - 120308 => 'L', - 120309 => 'L', - 120310 => 'L', - 120311 => 'L', - 120312 => 'L', - 120313 => 'L', - 120314 => 'L', - 120315 => 'L', - 120316 => 'L', - 120317 => 'L', - 120318 => 'L', - 120319 => 'L', - 120320 => 'L', - 120321 => 'L', - 120322 => 'L', - 120323 => 'L', - 120324 => 'L', - 120325 => 'L', - 120326 => 'L', - 120327 => 'L', - 120328 => 'L', - 120329 => 'L', - 120330 => 'L', - 120331 => 'L', - 120332 => 'L', - 120333 => 'L', - 120334 => 'L', - 120335 => 'L', - 120336 => 'L', - 120337 => 'L', - 120338 => 'L', - 120339 => 'L', - 120340 => 'L', - 120341 => 'L', - 120342 => 'L', - 120343 => 'L', - 120344 => 'L', - 120345 => 'L', - 120346 => 'L', - 120347 => 'L', - 120348 => 'L', - 120349 => 'L', - 120350 => 'L', - 120351 => 'L', - 120352 => 'L', - 120353 => 'L', - 120354 => 'L', - 120355 => 'L', - 120356 => 'L', - 120357 => 'L', - 120358 => 'L', - 120359 => 'L', - 120360 => 'L', - 120361 => 'L', - 120362 => 'L', - 120363 => 'L', - 120364 => 'L', - 120365 => 'L', - 120366 => 'L', - 120367 => 'L', - 120368 => 'L', - 120369 => 'L', - 120370 => 'L', - 120371 => 'L', - 120372 => 'L', - 120373 => 'L', - 120374 => 'L', - 120375 => 'L', - 120376 => 'L', - 120377 => 'L', - 120378 => 'L', - 120379 => 'L', - 120380 => 'L', - 120381 => 'L', - 120382 => 'L', - 120383 => 'L', - 120384 => 'L', - 120385 => 'L', - 120386 => 'L', - 120387 => 'L', - 120388 => 'L', - 120389 => 'L', - 120390 => 'L', - 120391 => 'L', - 120392 => 'L', - 120393 => 'L', - 120394 => 'L', - 120395 => 'L', - 120396 => 'L', - 120397 => 'L', - 120398 => 'L', - 120399 => 'L', - 120400 => 'L', - 120401 => 'L', - 120402 => 'L', - 120403 => 'L', - 120404 => 'L', - 120405 => 'L', - 120406 => 'L', - 120407 => 'L', - 120408 => 'L', - 120409 => 'L', - 120410 => 'L', - 120411 => 'L', - 120412 => 'L', - 120413 => 'L', - 120414 => 'L', - 120415 => 'L', - 120416 => 'L', - 120417 => 'L', - 120418 => 'L', - 120419 => 'L', - 120420 => 'L', - 120421 => 'L', - 120422 => 'L', - 120423 => 'L', - 120424 => 'L', - 120425 => 'L', - 120426 => 'L', - 120427 => 'L', - 120428 => 'L', - 120429 => 'L', - 120430 => 'L', - 120431 => 'L', - 120432 => 'L', - 120433 => 'L', - 120434 => 'L', - 120435 => 'L', - 120436 => 'L', - 120437 => 'L', - 120438 => 'L', - 120439 => 'L', - 120440 => 'L', - 120441 => 'L', - 120442 => 'L', - 120443 => 'L', - 120444 => 'L', - 120445 => 'L', - 120446 => 'L', - 120447 => 'L', - 120448 => 'L', - 120449 => 'L', - 120450 => 'L', - 120451 => 'L', - 120452 => 'L', - 120453 => 'L', - 120454 => 'L', - 120455 => 'L', - 120456 => 'L', - 120457 => 'L', - 120458 => 'L', - 120459 => 'L', - 120460 => 'L', - 120461 => 'L', - 120462 => 'L', - 120463 => 'L', - 120464 => 'L', - 120465 => 'L', - 120466 => 'L', - 120467 => 'L', - 120468 => 'L', - 120469 => 'L', - 120470 => 'L', - 120471 => 'L', - 120472 => 'L', - 120473 => 'L', - 120474 => 'L', - 120475 => 'L', - 120476 => 'L', - 120477 => 'L', - 120478 => 'L', - 120479 => 'L', - 120480 => 'L', - 120481 => 'L', - 120482 => 'L', - 120483 => 'L', - 120484 => 'L', - 120485 => 'L', - 120488 => 'L', - 120489 => 'L', - 120490 => 'L', - 120491 => 'L', - 120492 => 'L', - 120493 => 'L', - 120494 => 'L', - 120495 => 'L', - 120496 => 'L', - 120497 => 'L', - 120498 => 'L', - 120499 => 'L', - 120500 => 'L', - 120501 => 'L', - 120502 => 'L', - 120503 => 'L', - 120504 => 'L', - 120505 => 'L', - 120506 => 'L', - 120507 => 'L', - 120508 => 'L', - 120509 => 'L', - 120510 => 'L', - 120511 => 'L', - 120512 => 'L', - 120513 => 'L', - 120514 => 'L', - 120515 => 'L', - 120516 => 'L', - 120517 => 'L', - 120518 => 'L', - 120519 => 'L', - 120520 => 'L', - 120521 => 'L', - 120522 => 'L', - 120523 => 'L', - 120524 => 'L', - 120525 => 'L', - 120526 => 'L', - 120527 => 'L', - 120528 => 'L', - 120529 => 'L', - 120530 => 'L', - 120531 => 'L', - 120532 => 'L', - 120533 => 'L', - 120534 => 'L', - 120535 => 'L', - 120536 => 'L', - 120537 => 'L', - 120538 => 'L', - 120539 => 'L', - 120540 => 'L', - 120541 => 'L', - 120542 => 'L', - 120543 => 'L', - 120544 => 'L', - 120545 => 'L', - 120546 => 'L', - 120547 => 'L', - 120548 => 'L', - 120549 => 'L', - 120550 => 'L', - 120551 => 'L', - 120552 => 'L', - 120553 => 'L', - 120554 => 'L', - 120555 => 'L', - 120556 => 'L', - 120557 => 'L', - 120558 => 'L', - 120559 => 'L', - 120560 => 'L', - 120561 => 'L', - 120562 => 'L', - 120563 => 'L', - 120564 => 'L', - 120565 => 'L', - 120566 => 'L', - 120567 => 'L', - 120568 => 'L', - 120569 => 'L', - 120570 => 'L', - 120571 => 'L', - 120572 => 'L', - 120573 => 'L', - 120574 => 'L', - 120575 => 'L', - 120576 => 'L', - 120577 => 'L', - 120578 => 'L', - 120579 => 'L', - 120580 => 'L', - 120581 => 'L', - 120582 => 'L', - 120583 => 'L', - 120584 => 'L', - 120585 => 'L', - 120586 => 'L', - 120587 => 'L', - 120588 => 'L', - 120589 => 'L', - 120590 => 'L', - 120591 => 'L', - 120592 => 'L', - 120593 => 'L', - 120594 => 'L', - 120595 => 'L', - 120596 => 'L', - 120597 => 'L', - 120598 => 'L', - 120599 => 'L', - 120600 => 'L', - 120601 => 'L', - 120602 => 'L', - 120603 => 'L', - 120604 => 'L', - 120605 => 'L', - 120606 => 'L', - 120607 => 'L', - 120608 => 'L', - 120609 => 'L', - 120610 => 'L', - 120611 => 'L', - 120612 => 'L', - 120613 => 'L', - 120614 => 'L', - 120615 => 'L', - 120616 => 'L', - 120617 => 'L', - 120618 => 'L', - 120619 => 'L', - 120620 => 'L', - 120621 => 'L', - 120622 => 'L', - 120623 => 'L', - 120624 => 'L', - 120625 => 'L', - 120626 => 'L', - 120627 => 'L', - 120628 => 'L', - 120629 => 'L', - 120630 => 'L', - 120631 => 'L', - 120632 => 'L', - 120633 => 'L', - 120634 => 'L', - 120635 => 'L', - 120636 => 'L', - 120637 => 'L', - 120638 => 'L', - 120639 => 'L', - 120640 => 'L', - 120641 => 'L', - 120642 => 'L', - 120643 => 'L', - 120644 => 'L', - 120645 => 'L', - 120646 => 'L', - 120647 => 'L', - 120648 => 'L', - 120649 => 'L', - 120650 => 'L', - 120651 => 'L', - 120652 => 'L', - 120653 => 'L', - 120654 => 'L', - 120655 => 'L', - 120656 => 'L', - 120657 => 'L', - 120658 => 'L', - 120659 => 'L', - 120660 => 'L', - 120661 => 'L', - 120662 => 'L', - 120663 => 'L', - 120664 => 'L', - 120665 => 'L', - 120666 => 'L', - 120667 => 'L', - 120668 => 'L', - 120669 => 'L', - 120670 => 'L', - 120671 => 'L', - 120672 => 'L', - 120673 => 'L', - 120674 => 'L', - 120675 => 'L', - 120676 => 'L', - 120677 => 'L', - 120678 => 'L', - 120679 => 'L', - 120680 => 'L', - 120681 => 'L', - 120682 => 'L', - 120683 => 'L', - 120684 => 'L', - 120685 => 'L', - 120686 => 'L', - 120687 => 'L', - 120688 => 'L', - 120689 => 'L', - 120690 => 'L', - 120691 => 'L', - 120692 => 'L', - 120693 => 'L', - 120694 => 'L', - 120695 => 'L', - 120696 => 'L', - 120697 => 'L', - 120698 => 'L', - 120699 => 'L', - 120700 => 'L', - 120701 => 'L', - 120702 => 'L', - 120703 => 'L', - 120704 => 'L', - 120705 => 'L', - 120706 => 'L', - 120707 => 'L', - 120708 => 'L', - 120709 => 'L', - 120710 => 'L', - 120711 => 'L', - 120712 => 'L', - 120713 => 'L', - 120714 => 'L', - 120715 => 'L', - 120716 => 'L', - 120717 => 'L', - 120718 => 'L', - 120719 => 'L', - 120720 => 'L', - 120721 => 'L', - 120722 => 'L', - 120723 => 'L', - 120724 => 'L', - 120725 => 'L', - 120726 => 'L', - 120727 => 'L', - 120728 => 'L', - 120729 => 'L', - 120730 => 'L', - 120731 => 'L', - 120732 => 'L', - 120733 => 'L', - 120734 => 'L', - 120735 => 'L', - 120736 => 'L', - 120737 => 'L', - 120738 => 'L', - 120739 => 'L', - 120740 => 'L', - 120741 => 'L', - 120742 => 'L', - 120743 => 'L', - 120744 => 'L', - 120745 => 'L', - 120746 => 'L', - 120747 => 'L', - 120748 => 'L', - 120749 => 'L', - 120750 => 'L', - 120751 => 'L', - 120752 => 'L', - 120753 => 'L', - 120754 => 'L', - 120755 => 'L', - 120756 => 'L', - 120757 => 'L', - 120758 => 'L', - 120759 => 'L', - 120760 => 'L', - 120761 => 'L', - 120762 => 'L', - 120763 => 'L', - 120764 => 'L', - 120765 => 'L', - 120766 => 'L', - 120767 => 'L', - 120768 => 'L', - 120769 => 'L', - 120770 => 'L', - 120771 => 'L', - 120772 => 'L', - 120773 => 'L', - 120774 => 'L', - 120775 => 'L', - 120776 => 'L', - 120777 => 'L', - 120778 => 'L', - 120779 => 'L', - 120782 => 'EN', - 120783 => 'EN', - 120784 => 'EN', - 120785 => 'EN', - 120786 => 'EN', - 120787 => 'EN', - 120788 => 'EN', - 120789 => 'EN', - 120790 => 'EN', - 120791 => 'EN', - 120792 => 'EN', - 120793 => 'EN', - 120794 => 'EN', - 120795 => 'EN', - 120796 => 'EN', - 120797 => 'EN', - 120798 => 'EN', - 120799 => 'EN', - 120800 => 'EN', - 120801 => 'EN', - 120802 => 'EN', - 120803 => 'EN', - 120804 => 'EN', - 120805 => 'EN', - 120806 => 'EN', - 120807 => 'EN', - 120808 => 'EN', - 120809 => 'EN', - 120810 => 'EN', - 120811 => 'EN', - 120812 => 'EN', - 120813 => 'EN', - 120814 => 'EN', - 120815 => 'EN', - 120816 => 'EN', - 120817 => 'EN', - 120818 => 'EN', - 120819 => 'EN', - 120820 => 'EN', - 120821 => 'EN', - 120822 => 'EN', - 120823 => 'EN', - 120824 => 'EN', - 120825 => 'EN', - 120826 => 'EN', - 120827 => 'EN', - 120828 => 'EN', - 120829 => 'EN', - 120830 => 'EN', - 120831 => 'EN', - 131072 => 'L', - 173782 => 'L', - 194560 => 'L', - 194561 => 'L', - 194562 => 'L', - 194563 => 'L', - 194564 => 'L', - 194565 => 'L', - 194566 => 'L', - 194567 => 'L', - 194568 => 'L', - 194569 => 'L', - 194570 => 'L', - 194571 => 'L', - 194572 => 'L', - 194573 => 'L', - 194574 => 'L', - 194575 => 'L', - 194576 => 'L', - 194577 => 'L', - 194578 => 'L', - 194579 => 'L', - 194580 => 'L', - 194581 => 'L', - 194582 => 'L', - 194583 => 'L', - 194584 => 'L', - 194585 => 'L', - 194586 => 'L', - 194587 => 'L', - 194588 => 'L', - 194589 => 'L', - 194590 => 'L', - 194591 => 'L', - 194592 => 'L', - 194593 => 'L', - 194594 => 'L', - 194595 => 'L', - 194596 => 'L', - 194597 => 'L', - 194598 => 'L', - 194599 => 'L', - 194600 => 'L', - 194601 => 'L', - 194602 => 'L', - 194603 => 'L', - 194604 => 'L', - 194605 => 'L', - 194606 => 'L', - 194607 => 'L', - 194608 => 'L', - 194609 => 'L', - 194610 => 'L', - 194611 => 'L', - 194612 => 'L', - 194613 => 'L', - 194614 => 'L', - 194615 => 'L', - 194616 => 'L', - 194617 => 'L', - 194618 => 'L', - 194619 => 'L', - 194620 => 'L', - 194621 => 'L', - 194622 => 'L', - 194623 => 'L', - 194624 => 'L', - 194625 => 'L', - 194626 => 'L', - 194627 => 'L', - 194628 => 'L', - 194629 => 'L', - 194630 => 'L', - 194631 => 'L', - 194632 => 'L', - 194633 => 'L', - 194634 => 'L', - 194635 => 'L', - 194636 => 'L', - 194637 => 'L', - 194638 => 'L', - 194639 => 'L', - 194640 => 'L', - 194641 => 'L', - 194642 => 'L', - 194643 => 'L', - 194644 => 'L', - 194645 => 'L', - 194646 => 'L', - 194647 => 'L', - 194648 => 'L', - 194649 => 'L', - 194650 => 'L', - 194651 => 'L', - 194652 => 'L', - 194653 => 'L', - 194654 => 'L', - 194655 => 'L', - 194656 => 'L', - 194657 => 'L', - 194658 => 'L', - 194659 => 'L', - 194660 => 'L', - 194661 => 'L', - 194662 => 'L', - 194663 => 'L', - 194664 => 'L', - 194665 => 'L', - 194666 => 'L', - 194667 => 'L', - 194668 => 'L', - 194669 => 'L', - 194670 => 'L', - 194671 => 'L', - 194672 => 'L', - 194673 => 'L', - 194674 => 'L', - 194675 => 'L', - 194676 => 'L', - 194677 => 'L', - 194678 => 'L', - 194679 => 'L', - 194680 => 'L', - 194681 => 'L', - 194682 => 'L', - 194683 => 'L', - 194684 => 'L', - 194685 => 'L', - 194686 => 'L', - 194687 => 'L', - 194688 => 'L', - 194689 => 'L', - 194690 => 'L', - 194691 => 'L', - 194692 => 'L', - 194693 => 'L', - 194694 => 'L', - 194695 => 'L', - 194696 => 'L', - 194697 => 'L', - 194698 => 'L', - 194699 => 'L', - 194700 => 'L', - 194701 => 'L', - 194702 => 'L', - 194703 => 'L', - 194704 => 'L', - 194705 => 'L', - 194706 => 'L', - 194707 => 'L', - 194708 => 'L', - 194709 => 'L', - 194710 => 'L', - 194711 => 'L', - 194712 => 'L', - 194713 => 'L', - 194714 => 'L', - 194715 => 'L', - 194716 => 'L', - 194717 => 'L', - 194718 => 'L', - 194719 => 'L', - 194720 => 'L', - 194721 => 'L', - 194722 => 'L', - 194723 => 'L', - 194724 => 'L', - 194725 => 'L', - 194726 => 'L', - 194727 => 'L', - 194728 => 'L', - 194729 => 'L', - 194730 => 'L', - 194731 => 'L', - 194732 => 'L', - 194733 => 'L', - 194734 => 'L', - 194735 => 'L', - 194736 => 'L', - 194737 => 'L', - 194738 => 'L', - 194739 => 'L', - 194740 => 'L', - 194741 => 'L', - 194742 => 'L', - 194743 => 'L', - 194744 => 'L', - 194745 => 'L', - 194746 => 'L', - 194747 => 'L', - 194748 => 'L', - 194749 => 'L', - 194750 => 'L', - 194751 => 'L', - 194752 => 'L', - 194753 => 'L', - 194754 => 'L', - 194755 => 'L', - 194756 => 'L', - 194757 => 'L', - 194758 => 'L', - 194759 => 'L', - 194760 => 'L', - 194761 => 'L', - 194762 => 'L', - 194763 => 'L', - 194764 => 'L', - 194765 => 'L', - 194766 => 'L', - 194767 => 'L', - 194768 => 'L', - 194769 => 'L', - 194770 => 'L', - 194771 => 'L', - 194772 => 'L', - 194773 => 'L', - 194774 => 'L', - 194775 => 'L', - 194776 => 'L', - 194777 => 'L', - 194778 => 'L', - 194779 => 'L', - 194780 => 'L', - 194781 => 'L', - 194782 => 'L', - 194783 => 'L', - 194784 => 'L', - 194785 => 'L', - 194786 => 'L', - 194787 => 'L', - 194788 => 'L', - 194789 => 'L', - 194790 => 'L', - 194791 => 'L', - 194792 => 'L', - 194793 => 'L', - 194794 => 'L', - 194795 => 'L', - 194796 => 'L', - 194797 => 'L', - 194798 => 'L', - 194799 => 'L', - 194800 => 'L', - 194801 => 'L', - 194802 => 'L', - 194803 => 'L', - 194804 => 'L', - 194805 => 'L', - 194806 => 'L', - 194807 => 'L', - 194808 => 'L', - 194809 => 'L', - 194810 => 'L', - 194811 => 'L', - 194812 => 'L', - 194813 => 'L', - 194814 => 'L', - 194815 => 'L', - 194816 => 'L', - 194817 => 'L', - 194818 => 'L', - 194819 => 'L', - 194820 => 'L', - 194821 => 'L', - 194822 => 'L', - 194823 => 'L', - 194824 => 'L', - 194825 => 'L', - 194826 => 'L', - 194827 => 'L', - 194828 => 'L', - 194829 => 'L', - 194830 => 'L', - 194831 => 'L', - 194832 => 'L', - 194833 => 'L', - 194834 => 'L', - 194835 => 'L', - 194836 => 'L', - 194837 => 'L', - 194838 => 'L', - 194839 => 'L', - 194840 => 'L', - 194841 => 'L', - 194842 => 'L', - 194843 => 'L', - 194844 => 'L', - 194845 => 'L', - 194846 => 'L', - 194847 => 'L', - 194848 => 'L', - 194849 => 'L', - 194850 => 'L', - 194851 => 'L', - 194852 => 'L', - 194853 => 'L', - 194854 => 'L', - 194855 => 'L', - 194856 => 'L', - 194857 => 'L', - 194858 => 'L', - 194859 => 'L', - 194860 => 'L', - 194861 => 'L', - 194862 => 'L', - 194863 => 'L', - 194864 => 'L', - 194865 => 'L', - 194866 => 'L', - 194867 => 'L', - 194868 => 'L', - 194869 => 'L', - 194870 => 'L', - 194871 => 'L', - 194872 => 'L', - 194873 => 'L', - 194874 => 'L', - 194875 => 'L', - 194876 => 'L', - 194877 => 'L', - 194878 => 'L', - 194879 => 'L', - 194880 => 'L', - 194881 => 'L', - 194882 => 'L', - 194883 => 'L', - 194884 => 'L', - 194885 => 'L', - 194886 => 'L', - 194887 => 'L', - 194888 => 'L', - 194889 => 'L', - 194890 => 'L', - 194891 => 'L', - 194892 => 'L', - 194893 => 'L', - 194894 => 'L', - 194895 => 'L', - 194896 => 'L', - 194897 => 'L', - 194898 => 'L', - 194899 => 'L', - 194900 => 'L', - 194901 => 'L', - 194902 => 'L', - 194903 => 'L', - 194904 => 'L', - 194905 => 'L', - 194906 => 'L', - 194907 => 'L', - 194908 => 'L', - 194909 => 'L', - 194910 => 'L', - 194911 => 'L', - 194912 => 'L', - 194913 => 'L', - 194914 => 'L', - 194915 => 'L', - 194916 => 'L', - 194917 => 'L', - 194918 => 'L', - 194919 => 'L', - 194920 => 'L', - 194921 => 'L', - 194922 => 'L', - 194923 => 'L', - 194924 => 'L', - 194925 => 'L', - 194926 => 'L', - 194927 => 'L', - 194928 => 'L', - 194929 => 'L', - 194930 => 'L', - 194931 => 'L', - 194932 => 'L', - 194933 => 'L', - 194934 => 'L', - 194935 => 'L', - 194936 => 'L', - 194937 => 'L', - 194938 => 'L', - 194939 => 'L', - 194940 => 'L', - 194941 => 'L', - 194942 => 'L', - 194943 => 'L', - 194944 => 'L', - 194945 => 'L', - 194946 => 'L', - 194947 => 'L', - 194948 => 'L', - 194949 => 'L', - 194950 => 'L', - 194951 => 'L', - 194952 => 'L', - 194953 => 'L', - 194954 => 'L', - 194955 => 'L', - 194956 => 'L', - 194957 => 'L', - 194958 => 'L', - 194959 => 'L', - 194960 => 'L', - 194961 => 'L', - 194962 => 'L', - 194963 => 'L', - 194964 => 'L', - 194965 => 'L', - 194966 => 'L', - 194967 => 'L', - 194968 => 'L', - 194969 => 'L', - 194970 => 'L', - 194971 => 'L', - 194972 => 'L', - 194973 => 'L', - 194974 => 'L', - 194975 => 'L', - 194976 => 'L', - 194977 => 'L', - 194978 => 'L', - 194979 => 'L', - 194980 => 'L', - 194981 => 'L', - 194982 => 'L', - 194983 => 'L', - 194984 => 'L', - 194985 => 'L', - 194986 => 'L', - 194987 => 'L', - 194988 => 'L', - 194989 => 'L', - 194990 => 'L', - 194991 => 'L', - 194992 => 'L', - 194993 => 'L', - 194994 => 'L', - 194995 => 'L', - 194996 => 'L', - 194997 => 'L', - 194998 => 'L', - 194999 => 'L', - 195000 => 'L', - 195001 => 'L', - 195002 => 'L', - 195003 => 'L', - 195004 => 'L', - 195005 => 'L', - 195006 => 'L', - 195007 => 'L', - 195008 => 'L', - 195009 => 'L', - 195010 => 'L', - 195011 => 'L', - 195012 => 'L', - 195013 => 'L', - 195014 => 'L', - 195015 => 'L', - 195016 => 'L', - 195017 => 'L', - 195018 => 'L', - 195019 => 'L', - 195020 => 'L', - 195021 => 'L', - 195022 => 'L', - 195023 => 'L', - 195024 => 'L', - 195025 => 'L', - 195026 => 'L', - 195027 => 'L', - 195028 => 'L', - 195029 => 'L', - 195030 => 'L', - 195031 => 'L', - 195032 => 'L', - 195033 => 'L', - 195034 => 'L', - 195035 => 'L', - 195036 => 'L', - 195037 => 'L', - 195038 => 'L', - 195039 => 'L', - 195040 => 'L', - 195041 => 'L', - 195042 => 'L', - 195043 => 'L', - 195044 => 'L', - 195045 => 'L', - 195046 => 'L', - 195047 => 'L', - 195048 => 'L', - 195049 => 'L', - 195050 => 'L', - 195051 => 'L', - 195052 => 'L', - 195053 => 'L', - 195054 => 'L', - 195055 => 'L', - 195056 => 'L', - 195057 => 'L', - 195058 => 'L', - 195059 => 'L', - 195060 => 'L', - 195061 => 'L', - 195062 => 'L', - 195063 => 'L', - 195064 => 'L', - 195065 => 'L', - 195066 => 'L', - 195067 => 'L', - 195068 => 'L', - 195069 => 'L', - 195070 => 'L', - 195071 => 'L', - 195072 => 'L', - 195073 => 'L', - 195074 => 'L', - 195075 => 'L', - 195076 => 'L', - 195077 => 'L', - 195078 => 'L', - 195079 => 'L', - 195080 => 'L', - 195081 => 'L', - 195082 => 'L', - 195083 => 'L', - 195084 => 'L', - 195085 => 'L', - 195086 => 'L', - 195087 => 'L', - 195088 => 'L', - 195089 => 'L', - 195090 => 'L', - 195091 => 'L', - 195092 => 'L', - 195093 => 'L', - 195094 => 'L', - 195095 => 'L', - 195096 => 'L', - 195097 => 'L', - 195098 => 'L', - 195099 => 'L', - 195100 => 'L', - 195101 => 'L', - 917505 => 'BN', - 917536 => 'BN', - 917537 => 'BN', - 917538 => 'BN', - 917539 => 'BN', - 917540 => 'BN', - 917541 => 'BN', - 917542 => 'BN', - 917543 => 'BN', - 917544 => 'BN', - 917545 => 'BN', - 917546 => 'BN', - 917547 => 'BN', - 917548 => 'BN', - 917549 => 'BN', - 917550 => 'BN', - 917551 => 'BN', - 917552 => 'BN', - 917553 => 'BN', - 917554 => 'BN', - 917555 => 'BN', - 917556 => 'BN', - 917557 => 'BN', - 917558 => 'BN', - 917559 => 'BN', - 917560 => 'BN', - 917561 => 'BN', - 917562 => 'BN', - 917563 => 'BN', - 917564 => 'BN', - 917565 => 'BN', - 917566 => 'BN', - 917567 => 'BN', - 917568 => 'BN', - 917569 => 'BN', - 917570 => 'BN', - 917571 => 'BN', - 917572 => 'BN', - 917573 => 'BN', - 917574 => 'BN', - 917575 => 'BN', - 917576 => 'BN', - 917577 => 'BN', - 917578 => 'BN', - 917579 => 'BN', - 917580 => 'BN', - 917581 => 'BN', - 917582 => 'BN', - 917583 => 'BN', - 917584 => 'BN', - 917585 => 'BN', - 917586 => 'BN', - 917587 => 'BN', - 917588 => 'BN', - 917589 => 'BN', - 917590 => 'BN', - 917591 => 'BN', - 917592 => 'BN', - 917593 => 'BN', - 917594 => 'BN', - 917595 => 'BN', - 917596 => 'BN', - 917597 => 'BN', - 917598 => 'BN', - 917599 => 'BN', - 917600 => 'BN', - 917601 => 'BN', - 917602 => 'BN', - 917603 => 'BN', - 917604 => 'BN', - 917605 => 'BN', - 917606 => 'BN', - 917607 => 'BN', - 917608 => 'BN', - 917609 => 'BN', - 917610 => 'BN', - 917611 => 'BN', - 917612 => 'BN', - 917613 => 'BN', - 917614 => 'BN', - 917615 => 'BN', - 917616 => 'BN', - 917617 => 'BN', - 917618 => 'BN', - 917619 => 'BN', - 917620 => 'BN', - 917621 => 'BN', - 917622 => 'BN', - 917623 => 'BN', - 917624 => 'BN', - 917625 => 'BN', - 917626 => 'BN', - 917627 => 'BN', - 917628 => 'BN', - 917629 => 'BN', - 917630 => 'BN', - 917631 => 'BN', - 917760 => 'NSM', - 917761 => 'NSM', - 917762 => 'NSM', - 917763 => 'NSM', - 917764 => 'NSM', - 917765 => 'NSM', - 917766 => 'NSM', - 917767 => 'NSM', - 917768 => 'NSM', - 917769 => 'NSM', - 917770 => 'NSM', - 917771 => 'NSM', - 917772 => 'NSM', - 917773 => 'NSM', - 917774 => 'NSM', - 917775 => 'NSM', - 917776 => 'NSM', - 917777 => 'NSM', - 917778 => 'NSM', - 917779 => 'NSM', - 917780 => 'NSM', - 917781 => 'NSM', - 917782 => 'NSM', - 917783 => 'NSM', - 917784 => 'NSM', - 917785 => 'NSM', - 917786 => 'NSM', - 917787 => 'NSM', - 917788 => 'NSM', - 917789 => 'NSM', - 917790 => 'NSM', - 917791 => 'NSM', - 917792 => 'NSM', - 917793 => 'NSM', - 917794 => 'NSM', - 917795 => 'NSM', - 917796 => 'NSM', - 917797 => 'NSM', - 917798 => 'NSM', - 917799 => 'NSM', - 917800 => 'NSM', - 917801 => 'NSM', - 917802 => 'NSM', - 917803 => 'NSM', - 917804 => 'NSM', - 917805 => 'NSM', - 917806 => 'NSM', - 917807 => 'NSM', - 917808 => 'NSM', - 917809 => 'NSM', - 917810 => 'NSM', - 917811 => 'NSM', - 917812 => 'NSM', - 917813 => 'NSM', - 917814 => 'NSM', - 917815 => 'NSM', - 917816 => 'NSM', - 917817 => 'NSM', - 917818 => 'NSM', - 917819 => 'NSM', - 917820 => 'NSM', - 917821 => 'NSM', - 917822 => 'NSM', - 917823 => 'NSM', - 917824 => 'NSM', - 917825 => 'NSM', - 917826 => 'NSM', - 917827 => 'NSM', - 917828 => 'NSM', - 917829 => 'NSM', - 917830 => 'NSM', - 917831 => 'NSM', - 917832 => 'NSM', - 917833 => 'NSM', - 917834 => 'NSM', - 917835 => 'NSM', - 917836 => 'NSM', - 917837 => 'NSM', - 917838 => 'NSM', - 917839 => 'NSM', - 917840 => 'NSM', - 917841 => 'NSM', - 917842 => 'NSM', - 917843 => 'NSM', - 917844 => 'NSM', - 917845 => 'NSM', - 917846 => 'NSM', - 917847 => 'NSM', - 917848 => 'NSM', - 917849 => 'NSM', - 917850 => 'NSM', - 917851 => 'NSM', - 917852 => 'NSM', - 917853 => 'NSM', - 917854 => 'NSM', - 917855 => 'NSM', - 917856 => 'NSM', - 917857 => 'NSM', - 917858 => 'NSM', - 917859 => 'NSM', - 917860 => 'NSM', - 917861 => 'NSM', - 917862 => 'NSM', - 917863 => 'NSM', - 917864 => 'NSM', - 917865 => 'NSM', - 917866 => 'NSM', - 917867 => 'NSM', - 917868 => 'NSM', - 917869 => 'NSM', - 917870 => 'NSM', - 917871 => 'NSM', - 917872 => 'NSM', - 917873 => 'NSM', - 917874 => 'NSM', - 917875 => 'NSM', - 917876 => 'NSM', - 917877 => 'NSM', - 917878 => 'NSM', - 917879 => 'NSM', - 917880 => 'NSM', - 917881 => 'NSM', - 917882 => 'NSM', - 917883 => 'NSM', - 917884 => 'NSM', - 917885 => 'NSM', - 917886 => 'NSM', - 917887 => 'NSM', - 917888 => 'NSM', - 917889 => 'NSM', - 917890 => 'NSM', - 917891 => 'NSM', - 917892 => 'NSM', - 917893 => 'NSM', - 917894 => 'NSM', - 917895 => 'NSM', - 917896 => 'NSM', - 917897 => 'NSM', - 917898 => 'NSM', - 917899 => 'NSM', - 917900 => 'NSM', - 917901 => 'NSM', - 917902 => 'NSM', - 917903 => 'NSM', - 917904 => 'NSM', - 917905 => 'NSM', - 917906 => 'NSM', - 917907 => 'NSM', - 917908 => 'NSM', - 917909 => 'NSM', - 917910 => 'NSM', - 917911 => 'NSM', - 917912 => 'NSM', - 917913 => 'NSM', - 917914 => 'NSM', - 917915 => 'NSM', - 917916 => 'NSM', - 917917 => 'NSM', - 917918 => 'NSM', - 917919 => 'NSM', - 917920 => 'NSM', - 917921 => 'NSM', - 917922 => 'NSM', - 917923 => 'NSM', - 917924 => 'NSM', - 917925 => 'NSM', - 917926 => 'NSM', - 917927 => 'NSM', - 917928 => 'NSM', - 917929 => 'NSM', - 917930 => 'NSM', - 917931 => 'NSM', - 917932 => 'NSM', - 917933 => 'NSM', - 917934 => 'NSM', - 917935 => 'NSM', - 917936 => 'NSM', - 917937 => 'NSM', - 917938 => 'NSM', - 917939 => 'NSM', - 917940 => 'NSM', - 917941 => 'NSM', - 917942 => 'NSM', - 917943 => 'NSM', - 917944 => 'NSM', - 917945 => 'NSM', - 917946 => 'NSM', - 917947 => 'NSM', - 917948 => 'NSM', - 917949 => 'NSM', - 917950 => 'NSM', - 917951 => 'NSM', - 917952 => 'NSM', - 917953 => 'NSM', - 917954 => 'NSM', - 917955 => 'NSM', - 917956 => 'NSM', - 917957 => 'NSM', - 917958 => 'NSM', - 917959 => 'NSM', - 917960 => 'NSM', - 917961 => 'NSM', - 917962 => 'NSM', - 917963 => 'NSM', - 917964 => 'NSM', - 917965 => 'NSM', - 917966 => 'NSM', - 917967 => 'NSM', - 917968 => 'NSM', - 917969 => 'NSM', - 917970 => 'NSM', - 917971 => 'NSM', - 917972 => 'NSM', - 917973 => 'NSM', - 917974 => 'NSM', - 917975 => 'NSM', - 917976 => 'NSM', - 917977 => 'NSM', - 917978 => 'NSM', - 917979 => 'NSM', - 917980 => 'NSM', - 917981 => 'NSM', - 917982 => 'NSM', - 917983 => 'NSM', - 917984 => 'NSM', - 917985 => 'NSM', - 917986 => 'NSM', - 917987 => 'NSM', - 917988 => 'NSM', - 917989 => 'NSM', - 917990 => 'NSM', - 917991 => 'NSM', - 917992 => 'NSM', - 917993 => 'NSM', - 917994 => 'NSM', - 917995 => 'NSM', - 917996 => 'NSM', - 917997 => 'NSM', - 917998 => 'NSM', - 917999 => 'NSM', - 983040 => 'L', - 1048573 => 'L', - 1048576 => 'L', - 1114109 => 'L' +public $uni_RE_PATTERN_ARABIC = "/( + \xD8[\x80-\x83\x8B\x8D\x9B\x9E\x9F\xA1-\xBA] # AL + | \xD9[\x80-\x8A\xAD-\xAF\xB1-\xBF] # AL + | \xDA[\x80-\xBF] # AL + | \xDB[\x80-\x95\x9D\xA5\xA6\xAE\xAF\xBA-\xBF] # AL + | \xDC[\x80-\x8D\x90\x92-\xAF] # AL + | \xDD[\x8D-\xAD] # AL + | \xDE[\x80-\xA5\xB1] # AL + | \xEF\xAD[\x90-\xBF] # AL + | \xEF\xAE[\x80-\xB1] # AL + | \xEF\xAF[\x93-\xBF] # AL + | \xEF[\xB0-\xB3][\x80-\xBF] # AL + | \xEF\xB4[\x80-\xBD] # AL + | \xEF\xB5[\x90-\xBF] # AL + | \xEF\xB6[\x80-\x8F\x92-\xBF] # AL + | \xEF\xB7[\x80-\x87\xB0-\xBC] # AL + | \xEF\xB9[\xB0-\xB4\xB6-\xBF] # AL + | \xEF\xBA[\x80-\xBF] # AL + | \xEF\xBB[\x80-\xBC] # AL + | \xD9[\xA0-\xA9\xAB\xAC] # AN + )/x"; + +/** + * Array of Unicode types. + * @public + */ +public $uni_type = array( +0=>'BN', +1=>'BN', +2=>'BN', +3=>'BN', +4=>'BN', +5=>'BN', +6=>'BN', +7=>'BN', +8=>'BN', +9=>'S', +10=>'B', +11=>'S', +12=>'WS', +13=>'B', +14=>'BN', +15=>'BN', +16=>'BN', +17=>'BN', +18=>'BN', +19=>'BN', +20=>'BN', +21=>'BN', +22=>'BN', +23=>'BN', +24=>'BN', +25=>'BN', +26=>'BN', +27=>'BN', +28=>'B', +29=>'B', +30=>'B', +31=>'S', +32=>'WS', +33=>'ON', +34=>'ON', +35=>'ET', +36=>'ET', +37=>'ET', +38=>'ON', +39=>'ON', +40=>'ON', +41=>'ON', +42=>'ON', +43=>'ES', +44=>'CS', +45=>'ES', +46=>'CS', +47=>'CS', +48=>'EN', +49=>'EN', +50=>'EN', +51=>'EN', +52=>'EN', +53=>'EN', +54=>'EN', +55=>'EN', +56=>'EN', +57=>'EN', +58=>'CS', +59=>'ON', +60=>'ON', +61=>'ON', +62=>'ON', +63=>'ON', +64=>'ON', +65=>'L', +66=>'L', +67=>'L', +68=>'L', +69=>'L', +70=>'L', +71=>'L', +72=>'L', +73=>'L', +74=>'L', +75=>'L', +76=>'L', +77=>'L', +78=>'L', +79=>'L', +80=>'L', +81=>'L', +82=>'L', +83=>'L', +84=>'L', +85=>'L', +86=>'L', +87=>'L', +88=>'L', +89=>'L', +90=>'L', +91=>'ON', +92=>'ON', +93=>'ON', +94=>'ON', +95=>'ON', +96=>'ON', +97=>'L', +98=>'L', +99=>'L', +100=>'L', +101=>'L', +102=>'L', +103=>'L', +104=>'L', +105=>'L', +106=>'L', +107=>'L', +108=>'L', +109=>'L', +110=>'L', +111=>'L', +112=>'L', +113=>'L', +114=>'L', +115=>'L', +116=>'L', +117=>'L', +118=>'L', +119=>'L', +120=>'L', +121=>'L', +122=>'L', +123=>'ON', +124=>'ON', +125=>'ON', +126=>'ON', +127=>'BN', +128=>'BN', +129=>'BN', +130=>'BN', +131=>'BN', +132=>'BN', +133=>'B', +134=>'BN', +135=>'BN', +136=>'BN', +137=>'BN', +138=>'BN', +139=>'BN', +140=>'BN', +141=>'BN', +142=>'BN', +143=>'BN', +144=>'BN', +145=>'BN', +146=>'BN', +147=>'BN', +148=>'BN', +149=>'BN', +150=>'BN', +151=>'BN', +152=>'BN', +153=>'BN', +154=>'BN', +155=>'BN', +156=>'BN', +157=>'BN', +158=>'BN', +159=>'BN', +160=>'CS', +161=>'ON', +162=>'ET', +163=>'ET', +164=>'ET', +165=>'ET', +166=>'ON', +167=>'ON', +168=>'ON', +169=>'ON', +170=>'L', +171=>'ON', +172=>'ON', +173=>'BN', +174=>'ON', +175=>'ON', +176=>'ET', +177=>'ET', +178=>'EN', +179=>'EN', +180=>'ON', +181=>'L', +182=>'ON', +183=>'ON', +184=>'ON', +185=>'EN', +186=>'L', +187=>'ON', +188=>'ON', +189=>'ON', +190=>'ON', +191=>'ON', +192=>'L', +193=>'L', +194=>'L', +195=>'L', +196=>'L', +197=>'L', +198=>'L', +199=>'L', +200=>'L', +201=>'L', +202=>'L', +203=>'L', +204=>'L', +205=>'L', +206=>'L', +207=>'L', +208=>'L', +209=>'L', +210=>'L', +211=>'L', +212=>'L', +213=>'L', +214=>'L', +215=>'ON', +216=>'L', +217=>'L', +218=>'L', +219=>'L', +220=>'L', +221=>'L', +222=>'L', +223=>'L', +224=>'L', +225=>'L', +226=>'L', +227=>'L', +228=>'L', +229=>'L', +230=>'L', +231=>'L', +232=>'L', +233=>'L', +234=>'L', +235=>'L', +236=>'L', +237=>'L', +238=>'L', +239=>'L', +240=>'L', +241=>'L', +242=>'L', +243=>'L', +244=>'L', +245=>'L', +246=>'L', +247=>'ON', +248=>'L', +249=>'L', +250=>'L', +251=>'L', +252=>'L', +253=>'L', +254=>'L', +255=>'L', +256=>'L', +257=>'L', +258=>'L', +259=>'L', +260=>'L', +261=>'L', +262=>'L', +263=>'L', +264=>'L', +265=>'L', +266=>'L', +267=>'L', +268=>'L', +269=>'L', +270=>'L', +271=>'L', +272=>'L', +273=>'L', +274=>'L', +275=>'L', +276=>'L', +277=>'L', +278=>'L', +279=>'L', +280=>'L', +281=>'L', +282=>'L', +283=>'L', +284=>'L', +285=>'L', +286=>'L', +287=>'L', +288=>'L', +289=>'L', +290=>'L', +291=>'L', +292=>'L', +293=>'L', +294=>'L', +295=>'L', +296=>'L', +297=>'L', +298=>'L', +299=>'L', +300=>'L', +301=>'L', +302=>'L', +303=>'L', +304=>'L', +305=>'L', +306=>'L', +307=>'L', +308=>'L', +309=>'L', +310=>'L', +311=>'L', +312=>'L', +313=>'L', +314=>'L', +315=>'L', +316=>'L', +317=>'L', +318=>'L', +319=>'L', +320=>'L', +321=>'L', +322=>'L', +323=>'L', +324=>'L', +325=>'L', +326=>'L', +327=>'L', +328=>'L', +329=>'L', +330=>'L', +331=>'L', +332=>'L', +333=>'L', +334=>'L', +335=>'L', +336=>'L', +337=>'L', +338=>'L', +339=>'L', +340=>'L', +341=>'L', +342=>'L', +343=>'L', +344=>'L', +345=>'L', +346=>'L', +347=>'L', +348=>'L', +349=>'L', +350=>'L', +351=>'L', +352=>'L', +353=>'L', +354=>'L', +355=>'L', +356=>'L', +357=>'L', +358=>'L', +359=>'L', +360=>'L', +361=>'L', +362=>'L', +363=>'L', +364=>'L', +365=>'L', +366=>'L', +367=>'L', +368=>'L', +369=>'L', +370=>'L', +371=>'L', +372=>'L', +373=>'L', +374=>'L', +375=>'L', +376=>'L', +377=>'L', +378=>'L', +379=>'L', +380=>'L', +381=>'L', +382=>'L', +383=>'L', +384=>'L', +385=>'L', +386=>'L', +387=>'L', +388=>'L', +389=>'L', +390=>'L', +391=>'L', +392=>'L', +393=>'L', +394=>'L', +395=>'L', +396=>'L', +397=>'L', +398=>'L', +399=>'L', +400=>'L', +401=>'L', +402=>'L', +403=>'L', +404=>'L', +405=>'L', +406=>'L', +407=>'L', +408=>'L', +409=>'L', +410=>'L', +411=>'L', +412=>'L', +413=>'L', +414=>'L', +415=>'L', +416=>'L', +417=>'L', +418=>'L', +419=>'L', +420=>'L', +421=>'L', +422=>'L', +423=>'L', +424=>'L', +425=>'L', +426=>'L', +427=>'L', +428=>'L', +429=>'L', +430=>'L', +431=>'L', +432=>'L', +433=>'L', +434=>'L', +435=>'L', +436=>'L', +437=>'L', +438=>'L', +439=>'L', +440=>'L', +441=>'L', +442=>'L', +443=>'L', +444=>'L', +445=>'L', +446=>'L', +447=>'L', +448=>'L', +449=>'L', +450=>'L', +451=>'L', +452=>'L', +453=>'L', +454=>'L', +455=>'L', +456=>'L', +457=>'L', +458=>'L', +459=>'L', +460=>'L', +461=>'L', +462=>'L', +463=>'L', +464=>'L', +465=>'L', +466=>'L', +467=>'L', +468=>'L', +469=>'L', +470=>'L', +471=>'L', +472=>'L', +473=>'L', +474=>'L', +475=>'L', +476=>'L', +477=>'L', +478=>'L', +479=>'L', +480=>'L', +481=>'L', +482=>'L', +483=>'L', +484=>'L', +485=>'L', +486=>'L', +487=>'L', +488=>'L', +489=>'L', +490=>'L', +491=>'L', +492=>'L', +493=>'L', +494=>'L', +495=>'L', +496=>'L', +497=>'L', +498=>'L', +499=>'L', +500=>'L', +501=>'L', +502=>'L', +503=>'L', +504=>'L', +505=>'L', +506=>'L', +507=>'L', +508=>'L', +509=>'L', +510=>'L', +511=>'L', +512=>'L', +513=>'L', +514=>'L', +515=>'L', +516=>'L', +517=>'L', +518=>'L', +519=>'L', +520=>'L', +521=>'L', +522=>'L', +523=>'L', +524=>'L', +525=>'L', +526=>'L', +527=>'L', +528=>'L', +529=>'L', +530=>'L', +531=>'L', +532=>'L', +533=>'L', +534=>'L', +535=>'L', +536=>'L', +537=>'L', +538=>'L', +539=>'L', +540=>'L', +541=>'L', +542=>'L', +543=>'L', +544=>'L', +545=>'L', +546=>'L', +547=>'L', +548=>'L', +549=>'L', +550=>'L', +551=>'L', +552=>'L', +553=>'L', +554=>'L', +555=>'L', +556=>'L', +557=>'L', +558=>'L', +559=>'L', +560=>'L', +561=>'L', +562=>'L', +563=>'L', +564=>'L', +565=>'L', +566=>'L', +567=>'L', +568=>'L', +569=>'L', +570=>'L', +571=>'L', +572=>'L', +573=>'L', +574=>'L', +575=>'L', +576=>'L', +577=>'L', +578=>'L', +579=>'L', +580=>'L', +581=>'L', +582=>'L', +583=>'L', +584=>'L', +585=>'L', +586=>'L', +587=>'L', +588=>'L', +589=>'L', +590=>'L', +591=>'L', +592=>'L', +593=>'L', +594=>'L', +595=>'L', +596=>'L', +597=>'L', +598=>'L', +599=>'L', +600=>'L', +601=>'L', +602=>'L', +603=>'L', +604=>'L', +605=>'L', +606=>'L', +607=>'L', +608=>'L', +609=>'L', +610=>'L', +611=>'L', +612=>'L', +613=>'L', +614=>'L', +615=>'L', +616=>'L', +617=>'L', +618=>'L', +619=>'L', +620=>'L', +621=>'L', +622=>'L', +623=>'L', +624=>'L', +625=>'L', +626=>'L', +627=>'L', +628=>'L', +629=>'L', +630=>'L', +631=>'L', +632=>'L', +633=>'L', +634=>'L', +635=>'L', +636=>'L', +637=>'L', +638=>'L', +639=>'L', +640=>'L', +641=>'L', +642=>'L', +643=>'L', +644=>'L', +645=>'L', +646=>'L', +647=>'L', +648=>'L', +649=>'L', +650=>'L', +651=>'L', +652=>'L', +653=>'L', +654=>'L', +655=>'L', +656=>'L', +657=>'L', +658=>'L', +659=>'L', +660=>'L', +661=>'L', +662=>'L', +663=>'L', +664=>'L', +665=>'L', +666=>'L', +667=>'L', +668=>'L', +669=>'L', +670=>'L', +671=>'L', +672=>'L', +673=>'L', +674=>'L', +675=>'L', +676=>'L', +677=>'L', +678=>'L', +679=>'L', +680=>'L', +681=>'L', +682=>'L', +683=>'L', +684=>'L', +685=>'L', +686=>'L', +687=>'L', +688=>'L', +689=>'L', +690=>'L', +691=>'L', +692=>'L', +693=>'L', +694=>'L', +695=>'L', +696=>'L', +697=>'ON', +698=>'ON', +699=>'L', +700=>'L', +701=>'L', +702=>'L', +703=>'L', +704=>'L', +705=>'L', +706=>'ON', +707=>'ON', +708=>'ON', +709=>'ON', +710=>'ON', +711=>'ON', +712=>'ON', +713=>'ON', +714=>'ON', +715=>'ON', +716=>'ON', +717=>'ON', +718=>'ON', +719=>'ON', +720=>'L', +721=>'L', +722=>'ON', +723=>'ON', +724=>'ON', +725=>'ON', +726=>'ON', +727=>'ON', +728=>'ON', +729=>'ON', +730=>'ON', +731=>'ON', +732=>'ON', +733=>'ON', +734=>'ON', +735=>'ON', +736=>'L', +737=>'L', +738=>'L', +739=>'L', +740=>'L', +741=>'ON', +742=>'ON', +743=>'ON', +744=>'ON', +745=>'ON', +746=>'ON', +747=>'ON', +748=>'ON', +749=>'ON', +750=>'L', +751=>'ON', +752=>'ON', +753=>'ON', +754=>'ON', +755=>'ON', +756=>'ON', +757=>'ON', +758=>'ON', +759=>'ON', +760=>'ON', +761=>'ON', +762=>'ON', +763=>'ON', +764=>'ON', +765=>'ON', +766=>'ON', +767=>'ON', +768=>'NSM', +769=>'NSM', +770=>'NSM', +771=>'NSM', +772=>'NSM', +773=>'NSM', +774=>'NSM', +775=>'NSM', +776=>'NSM', +777=>'NSM', +778=>'NSM', +779=>'NSM', +780=>'NSM', +781=>'NSM', +782=>'NSM', +783=>'NSM', +784=>'NSM', +785=>'NSM', +786=>'NSM', +787=>'NSM', +788=>'NSM', +789=>'NSM', +790=>'NSM', +791=>'NSM', +792=>'NSM', +793=>'NSM', +794=>'NSM', +795=>'NSM', +796=>'NSM', +797=>'NSM', +798=>'NSM', +799=>'NSM', +800=>'NSM', +801=>'NSM', +802=>'NSM', +803=>'NSM', +804=>'NSM', +805=>'NSM', +806=>'NSM', +807=>'NSM', +808=>'NSM', +809=>'NSM', +810=>'NSM', +811=>'NSM', +812=>'NSM', +813=>'NSM', +814=>'NSM', +815=>'NSM', +816=>'NSM', +817=>'NSM', +818=>'NSM', +819=>'NSM', +820=>'NSM', +821=>'NSM', +822=>'NSM', +823=>'NSM', +824=>'NSM', +825=>'NSM', +826=>'NSM', +827=>'NSM', +828=>'NSM', +829=>'NSM', +830=>'NSM', +831=>'NSM', +832=>'NSM', +833=>'NSM', +834=>'NSM', +835=>'NSM', +836=>'NSM', +837=>'NSM', +838=>'NSM', +839=>'NSM', +840=>'NSM', +841=>'NSM', +842=>'NSM', +843=>'NSM', +844=>'NSM', +845=>'NSM', +846=>'NSM', +847=>'NSM', +848=>'NSM', +849=>'NSM', +850=>'NSM', +851=>'NSM', +852=>'NSM', +853=>'NSM', +854=>'NSM', +855=>'NSM', +856=>'NSM', +857=>'NSM', +858=>'NSM', +859=>'NSM', +860=>'NSM', +861=>'NSM', +862=>'NSM', +863=>'NSM', +864=>'NSM', +865=>'NSM', +866=>'NSM', +867=>'NSM', +868=>'NSM', +869=>'NSM', +870=>'NSM', +871=>'NSM', +872=>'NSM', +873=>'NSM', +874=>'NSM', +875=>'NSM', +876=>'NSM', +877=>'NSM', +878=>'NSM', +879=>'NSM', +884=>'ON', +885=>'ON', +890=>'L', +891=>'L', +892=>'L', +893=>'L', +894=>'ON', +900=>'ON', +901=>'ON', +902=>'L', +903=>'ON', +904=>'L', +905=>'L', +906=>'L', +908=>'L', +910=>'L', +911=>'L', +912=>'L', +913=>'L', +914=>'L', +915=>'L', +916=>'L', +917=>'L', +918=>'L', +919=>'L', +920=>'L', +921=>'L', +922=>'L', +923=>'L', +924=>'L', +925=>'L', +926=>'L', +927=>'L', +928=>'L', +929=>'L', +931=>'L', +932=>'L', +933=>'L', +934=>'L', +935=>'L', +936=>'L', +937=>'L', +938=>'L', +939=>'L', +940=>'L', +941=>'L', +942=>'L', +943=>'L', +944=>'L', +945=>'L', +946=>'L', +947=>'L', +948=>'L', +949=>'L', +950=>'L', +951=>'L', +952=>'L', +953=>'L', +954=>'L', +955=>'L', +956=>'L', +957=>'L', +958=>'L', +959=>'L', +960=>'L', +961=>'L', +962=>'L', +963=>'L', +964=>'L', +965=>'L', +966=>'L', +967=>'L', +968=>'L', +969=>'L', +970=>'L', +971=>'L', +972=>'L', +973=>'L', +974=>'L', +976=>'L', +977=>'L', +978=>'L', +979=>'L', +980=>'L', +981=>'L', +982=>'L', +983=>'L', +984=>'L', +985=>'L', +986=>'L', +987=>'L', +988=>'L', +989=>'L', +990=>'L', +991=>'L', +992=>'L', +993=>'L', +994=>'L', +995=>'L', +996=>'L', +997=>'L', +998=>'L', +999=>'L', +1000=>'L', +1001=>'L', +1002=>'L', +1003=>'L', +1004=>'L', +1005=>'L', +1006=>'L', +1007=>'L', +1008=>'L', +1009=>'L', +1010=>'L', +1011=>'L', +1012=>'L', +1013=>'L', +1014=>'ON', +1015=>'L', +1016=>'L', +1017=>'L', +1018=>'L', +1019=>'L', +1020=>'L', +1021=>'L', +1022=>'L', +1023=>'L', +1024=>'L', +1025=>'L', +1026=>'L', +1027=>'L', +1028=>'L', +1029=>'L', +1030=>'L', +1031=>'L', +1032=>'L', +1033=>'L', +1034=>'L', +1035=>'L', +1036=>'L', +1037=>'L', +1038=>'L', +1039=>'L', +1040=>'L', +1041=>'L', +1042=>'L', +1043=>'L', +1044=>'L', +1045=>'L', +1046=>'L', +1047=>'L', +1048=>'L', +1049=>'L', +1050=>'L', +1051=>'L', +1052=>'L', +1053=>'L', +1054=>'L', +1055=>'L', +1056=>'L', +1057=>'L', +1058=>'L', +1059=>'L', +1060=>'L', +1061=>'L', +1062=>'L', +1063=>'L', +1064=>'L', +1065=>'L', +1066=>'L', +1067=>'L', +1068=>'L', +1069=>'L', +1070=>'L', +1071=>'L', +1072=>'L', +1073=>'L', +1074=>'L', +1075=>'L', +1076=>'L', +1077=>'L', +1078=>'L', +1079=>'L', +1080=>'L', +1081=>'L', +1082=>'L', +1083=>'L', +1084=>'L', +1085=>'L', +1086=>'L', +1087=>'L', +1088=>'L', +1089=>'L', +1090=>'L', +1091=>'L', +1092=>'L', +1093=>'L', +1094=>'L', +1095=>'L', +1096=>'L', +1097=>'L', +1098=>'L', +1099=>'L', +1100=>'L', +1101=>'L', +1102=>'L', +1103=>'L', +1104=>'L', +1105=>'L', +1106=>'L', +1107=>'L', +1108=>'L', +1109=>'L', +1110=>'L', +1111=>'L', +1112=>'L', +1113=>'L', +1114=>'L', +1115=>'L', +1116=>'L', +1117=>'L', +1118=>'L', +1119=>'L', +1120=>'L', +1121=>'L', +1122=>'L', +1123=>'L', +1124=>'L', +1125=>'L', +1126=>'L', +1127=>'L', +1128=>'L', +1129=>'L', +1130=>'L', +1131=>'L', +1132=>'L', +1133=>'L', +1134=>'L', +1135=>'L', +1136=>'L', +1137=>'L', +1138=>'L', +1139=>'L', +1140=>'L', +1141=>'L', +1142=>'L', +1143=>'L', +1144=>'L', +1145=>'L', +1146=>'L', +1147=>'L', +1148=>'L', +1149=>'L', +1150=>'L', +1151=>'L', +1152=>'L', +1153=>'L', +1154=>'L', +1155=>'NSM', +1156=>'NSM', +1157=>'NSM', +1158=>'NSM', +1160=>'NSM', +1161=>'NSM', +1162=>'L', +1163=>'L', +1164=>'L', +1165=>'L', +1166=>'L', +1167=>'L', +1168=>'L', +1169=>'L', +1170=>'L', +1171=>'L', +1172=>'L', +1173=>'L', +1174=>'L', +1175=>'L', +1176=>'L', +1177=>'L', +1178=>'L', +1179=>'L', +1180=>'L', +1181=>'L', +1182=>'L', +1183=>'L', +1184=>'L', +1185=>'L', +1186=>'L', +1187=>'L', +1188=>'L', +1189=>'L', +1190=>'L', +1191=>'L', +1192=>'L', +1193=>'L', +1194=>'L', +1195=>'L', +1196=>'L', +1197=>'L', +1198=>'L', +1199=>'L', +1200=>'L', +1201=>'L', +1202=>'L', +1203=>'L', +1204=>'L', +1205=>'L', +1206=>'L', +1207=>'L', +1208=>'L', +1209=>'L', +1210=>'L', +1211=>'L', +1212=>'L', +1213=>'L', +1214=>'L', +1215=>'L', +1216=>'L', +1217=>'L', +1218=>'L', +1219=>'L', +1220=>'L', +1221=>'L', +1222=>'L', +1223=>'L', +1224=>'L', +1225=>'L', +1226=>'L', +1227=>'L', +1228=>'L', +1229=>'L', +1230=>'L', +1231=>'L', +1232=>'L', +1233=>'L', +1234=>'L', +1235=>'L', +1236=>'L', +1237=>'L', +1238=>'L', +1239=>'L', +1240=>'L', +1241=>'L', +1242=>'L', +1243=>'L', +1244=>'L', +1245=>'L', +1246=>'L', +1247=>'L', +1248=>'L', +1249=>'L', +1250=>'L', +1251=>'L', +1252=>'L', +1253=>'L', +1254=>'L', +1255=>'L', +1256=>'L', +1257=>'L', +1258=>'L', +1259=>'L', +1260=>'L', +1261=>'L', +1262=>'L', +1263=>'L', +1264=>'L', +1265=>'L', +1266=>'L', +1267=>'L', +1268=>'L', +1269=>'L', +1270=>'L', +1271=>'L', +1272=>'L', +1273=>'L', +1274=>'L', +1275=>'L', +1276=>'L', +1277=>'L', +1278=>'L', +1279=>'L', +1280=>'L', +1281=>'L', +1282=>'L', +1283=>'L', +1284=>'L', +1285=>'L', +1286=>'L', +1287=>'L', +1288=>'L', +1289=>'L', +1290=>'L', +1291=>'L', +1292=>'L', +1293=>'L', +1294=>'L', +1295=>'L', +1296=>'L', +1297=>'L', +1298=>'L', +1299=>'L', +1329=>'L', +1330=>'L', +1331=>'L', +1332=>'L', +1333=>'L', +1334=>'L', +1335=>'L', +1336=>'L', +1337=>'L', +1338=>'L', +1339=>'L', +1340=>'L', +1341=>'L', +1342=>'L', +1343=>'L', +1344=>'L', +1345=>'L', +1346=>'L', +1347=>'L', +1348=>'L', +1349=>'L', +1350=>'L', +1351=>'L', +1352=>'L', +1353=>'L', +1354=>'L', +1355=>'L', +1356=>'L', +1357=>'L', +1358=>'L', +1359=>'L', +1360=>'L', +1361=>'L', +1362=>'L', +1363=>'L', +1364=>'L', +1365=>'L', +1366=>'L', +1369=>'L', +1370=>'L', +1371=>'L', +1372=>'L', +1373=>'L', +1374=>'L', +1375=>'L', +1377=>'L', +1378=>'L', +1379=>'L', +1380=>'L', +1381=>'L', +1382=>'L', +1383=>'L', +1384=>'L', +1385=>'L', +1386=>'L', +1387=>'L', +1388=>'L', +1389=>'L', +1390=>'L', +1391=>'L', +1392=>'L', +1393=>'L', +1394=>'L', +1395=>'L', +1396=>'L', +1397=>'L', +1398=>'L', +1399=>'L', +1400=>'L', +1401=>'L', +1402=>'L', +1403=>'L', +1404=>'L', +1405=>'L', +1406=>'L', +1407=>'L', +1408=>'L', +1409=>'L', +1410=>'L', +1411=>'L', +1412=>'L', +1413=>'L', +1414=>'L', +1415=>'L', +1417=>'L', +1418=>'ON', +1425=>'NSM', +1426=>'NSM', +1427=>'NSM', +1428=>'NSM', +1429=>'NSM', +1430=>'NSM', +1431=>'NSM', +1432=>'NSM', +1433=>'NSM', +1434=>'NSM', +1435=>'NSM', +1436=>'NSM', +1437=>'NSM', +1438=>'NSM', +1439=>'NSM', +1440=>'NSM', +1441=>'NSM', +1442=>'NSM', +1443=>'NSM', +1444=>'NSM', +1445=>'NSM', +1446=>'NSM', +1447=>'NSM', +1448=>'NSM', +1449=>'NSM', +1450=>'NSM', +1451=>'NSM', +1452=>'NSM', +1453=>'NSM', +1454=>'NSM', +1455=>'NSM', +1456=>'NSM', +1457=>'NSM', +1458=>'NSM', +1459=>'NSM', +1460=>'NSM', +1461=>'NSM', +1462=>'NSM', +1463=>'NSM', +1464=>'NSM', +1465=>'NSM', +1466=>'NSM', +1467=>'NSM', +1468=>'NSM', +1469=>'NSM', +1470=>'R', +1471=>'NSM', +1472=>'R', +1473=>'NSM', +1474=>'NSM', +1475=>'R', +1476=>'NSM', +1477=>'NSM', +1478=>'R', +1479=>'NSM', +1488=>'R', +1489=>'R', +1490=>'R', +1491=>'R', +1492=>'R', +1493=>'R', +1494=>'R', +1495=>'R', +1496=>'R', +1497=>'R', +1498=>'R', +1499=>'R', +1500=>'R', +1501=>'R', +1502=>'R', +1503=>'R', +1504=>'R', +1505=>'R', +1506=>'R', +1507=>'R', +1508=>'R', +1509=>'R', +1510=>'R', +1511=>'R', +1512=>'R', +1513=>'R', +1514=>'R', +1520=>'R', +1521=>'R', +1522=>'R', +1523=>'R', +1524=>'R', +1536=>'AL', +1537=>'AL', +1538=>'AL', +1539=>'AL', +1547=>'AL', +1548=>'CS', +1549=>'AL', +1550=>'ON', +1551=>'ON', +1552=>'NSM', +1553=>'NSM', +1554=>'NSM', +1555=>'NSM', +1556=>'NSM', +1557=>'NSM', +1563=>'AL', +1566=>'AL', +1567=>'AL', +1569=>'AL', +1570=>'AL', +1571=>'AL', +1572=>'AL', +1573=>'AL', +1574=>'AL', +1575=>'AL', +1576=>'AL', +1577=>'AL', +1578=>'AL', +1579=>'AL', +1580=>'AL', +1581=>'AL', +1582=>'AL', +1583=>'AL', +1584=>'AL', +1585=>'AL', +1586=>'AL', +1587=>'AL', +1588=>'AL', +1589=>'AL', +1590=>'AL', +1591=>'AL', +1592=>'AL', +1593=>'AL', +1594=>'AL', +1600=>'AL', +1601=>'AL', +1602=>'AL', +1603=>'AL', +1604=>'AL', +1605=>'AL', +1606=>'AL', +1607=>'AL', +1608=>'AL', +1609=>'AL', +1610=>'AL', +1611=>'NSM', +1612=>'NSM', +1613=>'NSM', +1614=>'NSM', +1615=>'NSM', +1616=>'NSM', +1617=>'NSM', +1618=>'NSM', +1619=>'NSM', +1620=>'NSM', +1621=>'NSM', +1622=>'NSM', +1623=>'NSM', +1624=>'NSM', +1625=>'NSM', +1626=>'NSM', +1627=>'NSM', +1628=>'NSM', +1629=>'NSM', +1630=>'NSM', +1632=>'AN', +1633=>'AN', +1634=>'AN', +1635=>'AN', +1636=>'AN', +1637=>'AN', +1638=>'AN', +1639=>'AN', +1640=>'AN', +1641=>'AN', +1642=>'ET', +1643=>'AN', +1644=>'AN', +1645=>'AL', +1646=>'AL', +1647=>'AL', +1648=>'NSM', +1649=>'AL', +1650=>'AL', +1651=>'AL', +1652=>'AL', +1653=>'AL', +1654=>'AL', +1655=>'AL', +1656=>'AL', +1657=>'AL', +1658=>'AL', +1659=>'AL', +1660=>'AL', +1661=>'AL', +1662=>'AL', +1663=>'AL', +1664=>'AL', +1665=>'AL', +1666=>'AL', +1667=>'AL', +1668=>'AL', +1669=>'AL', +1670=>'AL', +1671=>'AL', +1672=>'AL', +1673=>'AL', +1674=>'AL', +1675=>'AL', +1676=>'AL', +1677=>'AL', +1678=>'AL', +1679=>'AL', +1680=>'AL', +1681=>'AL', +1682=>'AL', +1683=>'AL', +1684=>'AL', +1685=>'AL', +1686=>'AL', +1687=>'AL', +1688=>'AL', +1689=>'AL', +1690=>'AL', +1691=>'AL', +1692=>'AL', +1693=>'AL', +1694=>'AL', +1695=>'AL', +1696=>'AL', +1697=>'AL', +1698=>'AL', +1699=>'AL', +1700=>'AL', +1701=>'AL', +1702=>'AL', +1703=>'AL', +1704=>'AL', +1705=>'AL', +1706=>'AL', +1707=>'AL', +1708=>'AL', +1709=>'AL', +1710=>'AL', +1711=>'AL', +1712=>'AL', +1713=>'AL', +1714=>'AL', +1715=>'AL', +1716=>'AL', +1717=>'AL', +1718=>'AL', +1719=>'AL', +1720=>'AL', +1721=>'AL', +1722=>'AL', +1723=>'AL', +1724=>'AL', +1725=>'AL', +1726=>'AL', +1727=>'AL', +1728=>'AL', +1729=>'AL', +1730=>'AL', +1731=>'AL', +1732=>'AL', +1733=>'AL', +1734=>'AL', +1735=>'AL', +1736=>'AL', +1737=>'AL', +1738=>'AL', +1739=>'AL', +1740=>'AL', +1741=>'AL', +1742=>'AL', +1743=>'AL', +1744=>'AL', +1745=>'AL', +1746=>'AL', +1747=>'AL', +1748=>'AL', +1749=>'AL', +1750=>'NSM', +1751=>'NSM', +1752=>'NSM', +1753=>'NSM', +1754=>'NSM', +1755=>'NSM', +1756=>'NSM', +1757=>'AL', +1758=>'NSM', +1759=>'NSM', +1760=>'NSM', +1761=>'NSM', +1762=>'NSM', +1763=>'NSM', +1764=>'NSM', +1765=>'AL', +1766=>'AL', +1767=>'NSM', +1768=>'NSM', +1769=>'ON', +1770=>'NSM', +1771=>'NSM', +1772=>'NSM', +1773=>'NSM', +1774=>'AL', +1775=>'AL', +1776=>'EN', +1777=>'EN', +1778=>'EN', +1779=>'EN', +1780=>'EN', +1781=>'EN', +1782=>'EN', +1783=>'EN', +1784=>'EN', +1785=>'EN', +1786=>'AL', +1787=>'AL', +1788=>'AL', +1789=>'AL', +1790=>'AL', +1791=>'AL', +1792=>'AL', +1793=>'AL', +1794=>'AL', +1795=>'AL', +1796=>'AL', +1797=>'AL', +1798=>'AL', +1799=>'AL', +1800=>'AL', +1801=>'AL', +1802=>'AL', +1803=>'AL', +1804=>'AL', +1805=>'AL', +1807=>'BN', +1808=>'AL', +1809=>'NSM', +1810=>'AL', +1811=>'AL', +1812=>'AL', +1813=>'AL', +1814=>'AL', +1815=>'AL', +1816=>'AL', +1817=>'AL', +1818=>'AL', +1819=>'AL', +1820=>'AL', +1821=>'AL', +1822=>'AL', +1823=>'AL', +1824=>'AL', +1825=>'AL', +1826=>'AL', +1827=>'AL', +1828=>'AL', +1829=>'AL', +1830=>'AL', +1831=>'AL', +1832=>'AL', +1833=>'AL', +1834=>'AL', +1835=>'AL', +1836=>'AL', +1837=>'AL', +1838=>'AL', +1839=>'AL', +1840=>'NSM', +1841=>'NSM', +1842=>'NSM', +1843=>'NSM', +1844=>'NSM', +1845=>'NSM', +1846=>'NSM', +1847=>'NSM', +1848=>'NSM', +1849=>'NSM', +1850=>'NSM', +1851=>'NSM', +1852=>'NSM', +1853=>'NSM', +1854=>'NSM', +1855=>'NSM', +1856=>'NSM', +1857=>'NSM', +1858=>'NSM', +1859=>'NSM', +1860=>'NSM', +1861=>'NSM', +1862=>'NSM', +1863=>'NSM', +1864=>'NSM', +1865=>'NSM', +1866=>'NSM', +1869=>'AL', +1870=>'AL', +1871=>'AL', +1872=>'AL', +1873=>'AL', +1874=>'AL', +1875=>'AL', +1876=>'AL', +1877=>'AL', +1878=>'AL', +1879=>'AL', +1880=>'AL', +1881=>'AL', +1882=>'AL', +1883=>'AL', +1884=>'AL', +1885=>'AL', +1886=>'AL', +1887=>'AL', +1888=>'AL', +1889=>'AL', +1890=>'AL', +1891=>'AL', +1892=>'AL', +1893=>'AL', +1894=>'AL', +1895=>'AL', +1896=>'AL', +1897=>'AL', +1898=>'AL', +1899=>'AL', +1900=>'AL', +1901=>'AL', +1920=>'AL', +1921=>'AL', +1922=>'AL', +1923=>'AL', +1924=>'AL', +1925=>'AL', +1926=>'AL', +1927=>'AL', +1928=>'AL', +1929=>'AL', +1930=>'AL', +1931=>'AL', +1932=>'AL', +1933=>'AL', +1934=>'AL', +1935=>'AL', +1936=>'AL', +1937=>'AL', +1938=>'AL', +1939=>'AL', +1940=>'AL', +1941=>'AL', +1942=>'AL', +1943=>'AL', +1944=>'AL', +1945=>'AL', +1946=>'AL', +1947=>'AL', +1948=>'AL', +1949=>'AL', +1950=>'AL', +1951=>'AL', +1952=>'AL', +1953=>'AL', +1954=>'AL', +1955=>'AL', +1956=>'AL', +1957=>'AL', +1958=>'NSM', +1959=>'NSM', +1960=>'NSM', +1961=>'NSM', +1962=>'NSM', +1963=>'NSM', +1964=>'NSM', +1965=>'NSM', +1966=>'NSM', +1967=>'NSM', +1968=>'NSM', +1969=>'AL', +1984=>'R', +1985=>'R', +1986=>'R', +1987=>'R', +1988=>'R', +1989=>'R', +1990=>'R', +1991=>'R', +1992=>'R', +1993=>'R', +1994=>'R', +1995=>'R', +1996=>'R', +1997=>'R', +1998=>'R', +1999=>'R', +2000=>'R', +2001=>'R', +2002=>'R', +2003=>'R', +2004=>'R', +2005=>'R', +2006=>'R', +2007=>'R', +2008=>'R', +2009=>'R', +2010=>'R', +2011=>'R', +2012=>'R', +2013=>'R', +2014=>'R', +2015=>'R', +2016=>'R', +2017=>'R', +2018=>'R', +2019=>'R', +2020=>'R', +2021=>'R', +2022=>'R', +2023=>'R', +2024=>'R', +2025=>'R', +2026=>'R', +2027=>'NSM', +2028=>'NSM', +2029=>'NSM', +2030=>'NSM', +2031=>'NSM', +2032=>'NSM', +2033=>'NSM', +2034=>'NSM', +2035=>'NSM', +2036=>'R', +2037=>'R', +2038=>'ON', +2039=>'ON', +2040=>'ON', +2041=>'ON', +2042=>'R', +2305=>'NSM', +2306=>'NSM', +2307=>'L', +2308=>'L', +2309=>'L', +2310=>'L', +2311=>'L', +2312=>'L', +2313=>'L', +2314=>'L', +2315=>'L', +2316=>'L', +2317=>'L', +2318=>'L', +2319=>'L', +2320=>'L', +2321=>'L', +2322=>'L', +2323=>'L', +2324=>'L', +2325=>'L', +2326=>'L', +2327=>'L', +2328=>'L', +2329=>'L', +2330=>'L', +2331=>'L', +2332=>'L', +2333=>'L', +2334=>'L', +2335=>'L', +2336=>'L', +2337=>'L', +2338=>'L', +2339=>'L', +2340=>'L', +2341=>'L', +2342=>'L', +2343=>'L', +2344=>'L', +2345=>'L', +2346=>'L', +2347=>'L', +2348=>'L', +2349=>'L', +2350=>'L', +2351=>'L', +2352=>'L', +2353=>'L', +2354=>'L', +2355=>'L', +2356=>'L', +2357=>'L', +2358=>'L', +2359=>'L', +2360=>'L', +2361=>'L', +2364=>'NSM', +2365=>'L', +2366=>'L', +2367=>'L', +2368=>'L', +2369=>'NSM', +2370=>'NSM', +2371=>'NSM', +2372=>'NSM', +2373=>'NSM', +2374=>'NSM', +2375=>'NSM', +2376=>'NSM', +2377=>'L', +2378=>'L', +2379=>'L', +2380=>'L', +2381=>'NSM', +2384=>'L', +2385=>'NSM', +2386=>'NSM', +2387=>'NSM', +2388=>'NSM', +2392=>'L', +2393=>'L', +2394=>'L', +2395=>'L', +2396=>'L', +2397=>'L', +2398=>'L', +2399=>'L', +2400=>'L', +2401=>'L', +2402=>'NSM', +2403=>'NSM', +2404=>'L', +2405=>'L', +2406=>'L', +2407=>'L', +2408=>'L', +2409=>'L', +2410=>'L', +2411=>'L', +2412=>'L', +2413=>'L', +2414=>'L', +2415=>'L', +2416=>'L', +2427=>'L', +2428=>'L', +2429=>'L', +2430=>'L', +2431=>'L', +2433=>'NSM', +2434=>'L', +2435=>'L', +2437=>'L', +2438=>'L', +2439=>'L', +2440=>'L', +2441=>'L', +2442=>'L', +2443=>'L', +2444=>'L', +2447=>'L', +2448=>'L', +2451=>'L', +2452=>'L', +2453=>'L', +2454=>'L', +2455=>'L', +2456=>'L', +2457=>'L', +2458=>'L', +2459=>'L', +2460=>'L', +2461=>'L', +2462=>'L', +2463=>'L', +2464=>'L', +2465=>'L', +2466=>'L', +2467=>'L', +2468=>'L', +2469=>'L', +2470=>'L', +2471=>'L', +2472=>'L', +2474=>'L', +2475=>'L', +2476=>'L', +2477=>'L', +2478=>'L', +2479=>'L', +2480=>'L', +2482=>'L', +2486=>'L', +2487=>'L', +2488=>'L', +2489=>'L', +2492=>'NSM', +2493=>'L', +2494=>'L', +2495=>'L', +2496=>'L', +2497=>'NSM', +2498=>'NSM', +2499=>'NSM', +2500=>'NSM', +2503=>'L', +2504=>'L', +2507=>'L', +2508=>'L', +2509=>'NSM', +2510=>'L', +2519=>'L', +2524=>'L', +2525=>'L', +2527=>'L', +2528=>'L', +2529=>'L', +2530=>'NSM', +2531=>'NSM', +2534=>'L', +2535=>'L', +2536=>'L', +2537=>'L', +2538=>'L', +2539=>'L', +2540=>'L', +2541=>'L', +2542=>'L', +2543=>'L', +2544=>'L', +2545=>'L', +2546=>'ET', +2547=>'ET', +2548=>'L', +2549=>'L', +2550=>'L', +2551=>'L', +2552=>'L', +2553=>'L', +2554=>'L', +2561=>'NSM', +2562=>'NSM', +2563=>'L', +2565=>'L', +2566=>'L', +2567=>'L', +2568=>'L', +2569=>'L', +2570=>'L', +2575=>'L', +2576=>'L', +2579=>'L', +2580=>'L', +2581=>'L', +2582=>'L', +2583=>'L', +2584=>'L', +2585=>'L', +2586=>'L', +2587=>'L', +2588=>'L', +2589=>'L', +2590=>'L', +2591=>'L', +2592=>'L', +2593=>'L', +2594=>'L', +2595=>'L', +2596=>'L', +2597=>'L', +2598=>'L', +2599=>'L', +2600=>'L', +2602=>'L', +2603=>'L', +2604=>'L', +2605=>'L', +2606=>'L', +2607=>'L', +2608=>'L', +2610=>'L', +2611=>'L', +2613=>'L', +2614=>'L', +2616=>'L', +2617=>'L', +2620=>'NSM', +2622=>'L', +2623=>'L', +2624=>'L', +2625=>'NSM', +2626=>'NSM', +2631=>'NSM', +2632=>'NSM', +2635=>'NSM', +2636=>'NSM', +2637=>'NSM', +2649=>'L', +2650=>'L', +2651=>'L', +2652=>'L', +2654=>'L', +2662=>'L', +2663=>'L', +2664=>'L', +2665=>'L', +2666=>'L', +2667=>'L', +2668=>'L', +2669=>'L', +2670=>'L', +2671=>'L', +2672=>'NSM', +2673=>'NSM', +2674=>'L', +2675=>'L', +2676=>'L', +2689=>'NSM', +2690=>'NSM', +2691=>'L', +2693=>'L', +2694=>'L', +2695=>'L', +2696=>'L', +2697=>'L', +2698=>'L', +2699=>'L', +2700=>'L', +2701=>'L', +2703=>'L', +2704=>'L', +2705=>'L', +2707=>'L', +2708=>'L', +2709=>'L', +2710=>'L', +2711=>'L', +2712=>'L', +2713=>'L', +2714=>'L', +2715=>'L', +2716=>'L', +2717=>'L', +2718=>'L', +2719=>'L', +2720=>'L', +2721=>'L', +2722=>'L', +2723=>'L', +2724=>'L', +2725=>'L', +2726=>'L', +2727=>'L', +2728=>'L', +2730=>'L', +2731=>'L', +2732=>'L', +2733=>'L', +2734=>'L', +2735=>'L', +2736=>'L', +2738=>'L', +2739=>'L', +2741=>'L', +2742=>'L', +2743=>'L', +2744=>'L', +2745=>'L', +2748=>'NSM', +2749=>'L', +2750=>'L', +2751=>'L', +2752=>'L', +2753=>'NSM', +2754=>'NSM', +2755=>'NSM', +2756=>'NSM', +2757=>'NSM', +2759=>'NSM', +2760=>'NSM', +2761=>'L', +2763=>'L', +2764=>'L', +2765=>'NSM', +2768=>'L', +2784=>'L', +2785=>'L', +2786=>'NSM', +2787=>'NSM', +2790=>'L', +2791=>'L', +2792=>'L', +2793=>'L', +2794=>'L', +2795=>'L', +2796=>'L', +2797=>'L', +2798=>'L', +2799=>'L', +2801=>'ET', +2817=>'NSM', +2818=>'L', +2819=>'L', +2821=>'L', +2822=>'L', +2823=>'L', +2824=>'L', +2825=>'L', +2826=>'L', +2827=>'L', +2828=>'L', +2831=>'L', +2832=>'L', +2835=>'L', +2836=>'L', +2837=>'L', +2838=>'L', +2839=>'L', +2840=>'L', +2841=>'L', +2842=>'L', +2843=>'L', +2844=>'L', +2845=>'L', +2846=>'L', +2847=>'L', +2848=>'L', +2849=>'L', +2850=>'L', +2851=>'L', +2852=>'L', +2853=>'L', +2854=>'L', +2855=>'L', +2856=>'L', +2858=>'L', +2859=>'L', +2860=>'L', +2861=>'L', +2862=>'L', +2863=>'L', +2864=>'L', +2866=>'L', +2867=>'L', +2869=>'L', +2870=>'L', +2871=>'L', +2872=>'L', +2873=>'L', +2876=>'NSM', +2877=>'L', +2878=>'L', +2879=>'NSM', +2880=>'L', +2881=>'NSM', +2882=>'NSM', +2883=>'NSM', +2887=>'L', +2888=>'L', +2891=>'L', +2892=>'L', +2893=>'NSM', +2902=>'NSM', +2903=>'L', +2908=>'L', +2909=>'L', +2911=>'L', +2912=>'L', +2913=>'L', +2918=>'L', +2919=>'L', +2920=>'L', +2921=>'L', +2922=>'L', +2923=>'L', +2924=>'L', +2925=>'L', +2926=>'L', +2927=>'L', +2928=>'L', +2929=>'L', +2946=>'NSM', +2947=>'L', +2949=>'L', +2950=>'L', +2951=>'L', +2952=>'L', +2953=>'L', +2954=>'L', +2958=>'L', +2959=>'L', +2960=>'L', +2962=>'L', +2963=>'L', +2964=>'L', +2965=>'L', +2969=>'L', +2970=>'L', +2972=>'L', +2974=>'L', +2975=>'L', +2979=>'L', +2980=>'L', +2984=>'L', +2985=>'L', +2986=>'L', +2990=>'L', +2991=>'L', +2992=>'L', +2993=>'L', +2994=>'L', +2995=>'L', +2996=>'L', +2997=>'L', +2998=>'L', +2999=>'L', +3000=>'L', +3001=>'L', +3006=>'L', +3007=>'L', +3008=>'NSM', +3009=>'L', +3010=>'L', +3014=>'L', +3015=>'L', +3016=>'L', +3018=>'L', +3019=>'L', +3020=>'L', +3021=>'NSM', +3031=>'L', +3046=>'L', +3047=>'L', +3048=>'L', +3049=>'L', +3050=>'L', +3051=>'L', +3052=>'L', +3053=>'L', +3054=>'L', +3055=>'L', +3056=>'L', +3057=>'L', +3058=>'L', +3059=>'ON', +3060=>'ON', +3061=>'ON', +3062=>'ON', +3063=>'ON', +3064=>'ON', +3065=>'ET', +3066=>'ON', +3073=>'L', +3074=>'L', +3075=>'L', +3077=>'L', +3078=>'L', +3079=>'L', +3080=>'L', +3081=>'L', +3082=>'L', +3083=>'L', +3084=>'L', +3086=>'L', +3087=>'L', +3088=>'L', +3090=>'L', +3091=>'L', +3092=>'L', +3093=>'L', +3094=>'L', +3095=>'L', +3096=>'L', +3097=>'L', +3098=>'L', +3099=>'L', +3100=>'L', +3101=>'L', +3102=>'L', +3103=>'L', +3104=>'L', +3105=>'L', +3106=>'L', +3107=>'L', +3108=>'L', +3109=>'L', +3110=>'L', +3111=>'L', +3112=>'L', +3114=>'L', +3115=>'L', +3116=>'L', +3117=>'L', +3118=>'L', +3119=>'L', +3120=>'L', +3121=>'L', +3122=>'L', +3123=>'L', +3125=>'L', +3126=>'L', +3127=>'L', +3128=>'L', +3129=>'L', +3134=>'NSM', +3135=>'NSM', +3136=>'NSM', +3137=>'L', +3138=>'L', +3139=>'L', +3140=>'L', +3142=>'NSM', +3143=>'NSM', +3144=>'NSM', +3146=>'NSM', +3147=>'NSM', +3148=>'NSM', +3149=>'NSM', +3157=>'NSM', +3158=>'NSM', +3168=>'L', +3169=>'L', +3174=>'L', +3175=>'L', +3176=>'L', +3177=>'L', +3178=>'L', +3179=>'L', +3180=>'L', +3181=>'L', +3182=>'L', +3183=>'L', +3202=>'L', +3203=>'L', +3205=>'L', +3206=>'L', +3207=>'L', +3208=>'L', +3209=>'L', +3210=>'L', +3211=>'L', +3212=>'L', +3214=>'L', +3215=>'L', +3216=>'L', +3218=>'L', +3219=>'L', +3220=>'L', +3221=>'L', +3222=>'L', +3223=>'L', +3224=>'L', +3225=>'L', +3226=>'L', +3227=>'L', +3228=>'L', +3229=>'L', +3230=>'L', +3231=>'L', +3232=>'L', +3233=>'L', +3234=>'L', +3235=>'L', +3236=>'L', +3237=>'L', +3238=>'L', +3239=>'L', +3240=>'L', +3242=>'L', +3243=>'L', +3244=>'L', +3245=>'L', +3246=>'L', +3247=>'L', +3248=>'L', +3249=>'L', +3250=>'L', +3251=>'L', +3253=>'L', +3254=>'L', +3255=>'L', +3256=>'L', +3257=>'L', +3260=>'NSM', +3261=>'L', +3262=>'L', +3263=>'L', +3264=>'L', +3265=>'L', +3266=>'L', +3267=>'L', +3268=>'L', +3270=>'L', +3271=>'L', +3272=>'L', +3274=>'L', +3275=>'L', +3276=>'NSM', +3277=>'NSM', +3285=>'L', +3286=>'L', +3294=>'L', +3296=>'L', +3297=>'L', +3298=>'NSM', +3299=>'NSM', +3302=>'L', +3303=>'L', +3304=>'L', +3305=>'L', +3306=>'L', +3307=>'L', +3308=>'L', +3309=>'L', +3310=>'L', +3311=>'L', +3313=>'ON', +3314=>'ON', +3330=>'L', +3331=>'L', +3333=>'L', +3334=>'L', +3335=>'L', +3336=>'L', +3337=>'L', +3338=>'L', +3339=>'L', +3340=>'L', +3342=>'L', +3343=>'L', +3344=>'L', +3346=>'L', +3347=>'L', +3348=>'L', +3349=>'L', +3350=>'L', +3351=>'L', +3352=>'L', +3353=>'L', +3354=>'L', +3355=>'L', +3356=>'L', +3357=>'L', +3358=>'L', +3359=>'L', +3360=>'L', +3361=>'L', +3362=>'L', +3363=>'L', +3364=>'L', +3365=>'L', +3366=>'L', +3367=>'L', +3368=>'L', +3370=>'L', +3371=>'L', +3372=>'L', +3373=>'L', +3374=>'L', +3375=>'L', +3376=>'L', +3377=>'L', +3378=>'L', +3379=>'L', +3380=>'L', +3381=>'L', +3382=>'L', +3383=>'L', +3384=>'L', +3385=>'L', +3390=>'L', +3391=>'L', +3392=>'L', +3393=>'NSM', +3394=>'NSM', +3395=>'NSM', +3398=>'L', +3399=>'L', +3400=>'L', +3402=>'L', +3403=>'L', +3404=>'L', +3405=>'NSM', +3415=>'L', +3424=>'L', +3425=>'L', +3430=>'L', +3431=>'L', +3432=>'L', +3433=>'L', +3434=>'L', +3435=>'L', +3436=>'L', +3437=>'L', +3438=>'L', +3439=>'L', +3458=>'L', +3459=>'L', +3461=>'L', +3462=>'L', +3463=>'L', +3464=>'L', +3465=>'L', +3466=>'L', +3467=>'L', +3468=>'L', +3469=>'L', +3470=>'L', +3471=>'L', +3472=>'L', +3473=>'L', +3474=>'L', +3475=>'L', +3476=>'L', +3477=>'L', +3478=>'L', +3482=>'L', +3483=>'L', +3484=>'L', +3485=>'L', +3486=>'L', +3487=>'L', +3488=>'L', +3489=>'L', +3490=>'L', +3491=>'L', +3492=>'L', +3493=>'L', +3494=>'L', +3495=>'L', +3496=>'L', +3497=>'L', +3498=>'L', +3499=>'L', +3500=>'L', +3501=>'L', +3502=>'L', +3503=>'L', +3504=>'L', +3505=>'L', +3507=>'L', +3508=>'L', +3509=>'L', +3510=>'L', +3511=>'L', +3512=>'L', +3513=>'L', +3514=>'L', +3515=>'L', +3517=>'L', +3520=>'L', +3521=>'L', +3522=>'L', +3523=>'L', +3524=>'L', +3525=>'L', +3526=>'L', +3530=>'NSM', +3535=>'L', +3536=>'L', +3537=>'L', +3538=>'NSM', +3539=>'NSM', +3540=>'NSM', +3542=>'NSM', +3544=>'L', +3545=>'L', +3546=>'L', +3547=>'L', +3548=>'L', +3549=>'L', +3550=>'L', +3551=>'L', +3570=>'L', +3571=>'L', +3572=>'L', +3585=>'L', +3586=>'L', +3587=>'L', +3588=>'L', +3589=>'L', +3590=>'L', +3591=>'L', +3592=>'L', +3593=>'L', +3594=>'L', +3595=>'L', +3596=>'L', +3597=>'L', +3598=>'L', +3599=>'L', +3600=>'L', +3601=>'L', +3602=>'L', +3603=>'L', +3604=>'L', +3605=>'L', +3606=>'L', +3607=>'L', +3608=>'L', +3609=>'L', +3610=>'L', +3611=>'L', +3612=>'L', +3613=>'L', +3614=>'L', +3615=>'L', +3616=>'L', +3617=>'L', +3618=>'L', +3619=>'L', +3620=>'L', +3621=>'L', +3622=>'L', +3623=>'L', +3624=>'L', +3625=>'L', +3626=>'L', +3627=>'L', +3628=>'L', +3629=>'L', +3630=>'L', +3631=>'L', +3632=>'L', +3633=>'NSM', +3634=>'L', +3635=>'L', +3636=>'NSM', +3637=>'NSM', +3638=>'NSM', +3639=>'NSM', +3640=>'NSM', +3641=>'NSM', +3642=>'NSM', +3647=>'ET', +3648=>'L', +3649=>'L', +3650=>'L', +3651=>'L', +3652=>'L', +3653=>'L', +3654=>'L', +3655=>'NSM', +3656=>'NSM', +3657=>'NSM', +3658=>'NSM', +3659=>'NSM', +3660=>'NSM', +3661=>'NSM', +3662=>'NSM', +3663=>'L', +3664=>'L', +3665=>'L', +3666=>'L', +3667=>'L', +3668=>'L', +3669=>'L', +3670=>'L', +3671=>'L', +3672=>'L', +3673=>'L', +3674=>'L', +3675=>'L', +3713=>'L', +3714=>'L', +3716=>'L', +3719=>'L', +3720=>'L', +3722=>'L', +3725=>'L', +3732=>'L', +3733=>'L', +3734=>'L', +3735=>'L', +3737=>'L', +3738=>'L', +3739=>'L', +3740=>'L', +3741=>'L', +3742=>'L', +3743=>'L', +3745=>'L', +3746=>'L', +3747=>'L', +3749=>'L', +3751=>'L', +3754=>'L', +3755=>'L', +3757=>'L', +3758=>'L', +3759=>'L', +3760=>'L', +3761=>'NSM', +3762=>'L', +3763=>'L', +3764=>'NSM', +3765=>'NSM', +3766=>'NSM', +3767=>'NSM', +3768=>'NSM', +3769=>'NSM', +3771=>'NSM', +3772=>'NSM', +3773=>'L', +3776=>'L', +3777=>'L', +3778=>'L', +3779=>'L', +3780=>'L', +3782=>'L', +3784=>'NSM', +3785=>'NSM', +3786=>'NSM', +3787=>'NSM', +3788=>'NSM', +3789=>'NSM', +3792=>'L', +3793=>'L', +3794=>'L', +3795=>'L', +3796=>'L', +3797=>'L', +3798=>'L', +3799=>'L', +3800=>'L', +3801=>'L', +3804=>'L', +3805=>'L', +3840=>'L', +3841=>'L', +3842=>'L', +3843=>'L', +3844=>'L', +3845=>'L', +3846=>'L', +3847=>'L', +3848=>'L', +3849=>'L', +3850=>'L', +3851=>'L', +3852=>'L', +3853=>'L', +3854=>'L', +3855=>'L', +3856=>'L', +3857=>'L', +3858=>'L', +3859=>'L', +3860=>'L', +3861=>'L', +3862=>'L', +3863=>'L', +3864=>'NSM', +3865=>'NSM', +3866=>'L', +3867=>'L', +3868=>'L', +3869=>'L', +3870=>'L', +3871=>'L', +3872=>'L', +3873=>'L', +3874=>'L', +3875=>'L', +3876=>'L', +3877=>'L', +3878=>'L', +3879=>'L', +3880=>'L', +3881=>'L', +3882=>'L', +3883=>'L', +3884=>'L', +3885=>'L', +3886=>'L', +3887=>'L', +3888=>'L', +3889=>'L', +3890=>'L', +3891=>'L', +3892=>'L', +3893=>'NSM', +3894=>'L', +3895=>'NSM', +3896=>'L', +3897=>'NSM', +3898=>'ON', +3899=>'ON', +3900=>'ON', +3901=>'ON', +3902=>'L', +3903=>'L', +3904=>'L', +3905=>'L', +3906=>'L', +3907=>'L', +3908=>'L', +3909=>'L', +3910=>'L', +3911=>'L', +3913=>'L', +3914=>'L', +3915=>'L', +3916=>'L', +3917=>'L', +3918=>'L', +3919=>'L', +3920=>'L', +3921=>'L', +3922=>'L', +3923=>'L', +3924=>'L', +3925=>'L', +3926=>'L', +3927=>'L', +3928=>'L', +3929=>'L', +3930=>'L', +3931=>'L', +3932=>'L', +3933=>'L', +3934=>'L', +3935=>'L', +3936=>'L', +3937=>'L', +3938=>'L', +3939=>'L', +3940=>'L', +3941=>'L', +3942=>'L', +3943=>'L', +3944=>'L', +3945=>'L', +3946=>'L', +3953=>'NSM', +3954=>'NSM', +3955=>'NSM', +3956=>'NSM', +3957=>'NSM', +3958=>'NSM', +3959=>'NSM', +3960=>'NSM', +3961=>'NSM', +3962=>'NSM', +3963=>'NSM', +3964=>'NSM', +3965=>'NSM', +3966=>'NSM', +3967=>'L', +3968=>'NSM', +3969=>'NSM', +3970=>'NSM', +3971=>'NSM', +3972=>'NSM', +3973=>'L', +3974=>'NSM', +3975=>'NSM', +3976=>'L', +3977=>'L', +3978=>'L', +3979=>'L', +3984=>'NSM', +3985=>'NSM', +3986=>'NSM', +3987=>'NSM', +3988=>'NSM', +3989=>'NSM', +3990=>'NSM', +3991=>'NSM', +3993=>'NSM', +3994=>'NSM', +3995=>'NSM', +3996=>'NSM', +3997=>'NSM', +3998=>'NSM', +3999=>'NSM', +4000=>'NSM', +4001=>'NSM', +4002=>'NSM', +4003=>'NSM', +4004=>'NSM', +4005=>'NSM', +4006=>'NSM', +4007=>'NSM', +4008=>'NSM', +4009=>'NSM', +4010=>'NSM', +4011=>'NSM', +4012=>'NSM', +4013=>'NSM', +4014=>'NSM', +4015=>'NSM', +4016=>'NSM', +4017=>'NSM', +4018=>'NSM', +4019=>'NSM', +4020=>'NSM', +4021=>'NSM', +4022=>'NSM', +4023=>'NSM', +4024=>'NSM', +4025=>'NSM', +4026=>'NSM', +4027=>'NSM', +4028=>'NSM', +4030=>'L', +4031=>'L', +4032=>'L', +4033=>'L', +4034=>'L', +4035=>'L', +4036=>'L', +4037=>'L', +4038=>'NSM', +4039=>'L', +4040=>'L', +4041=>'L', +4042=>'L', +4043=>'L', +4044=>'L', +4047=>'L', +4048=>'L', +4049=>'L', +4096=>'L', +4097=>'L', +4098=>'L', +4099=>'L', +4100=>'L', +4101=>'L', +4102=>'L', +4103=>'L', +4104=>'L', +4105=>'L', +4106=>'L', +4107=>'L', +4108=>'L', +4109=>'L', +4110=>'L', +4111=>'L', +4112=>'L', +4113=>'L', +4114=>'L', +4115=>'L', +4116=>'L', +4117=>'L', +4118=>'L', +4119=>'L', +4120=>'L', +4121=>'L', +4122=>'L', +4123=>'L', +4124=>'L', +4125=>'L', +4126=>'L', +4127=>'L', +4128=>'L', +4129=>'L', +4131=>'L', +4132=>'L', +4133=>'L', +4134=>'L', +4135=>'L', +4137=>'L', +4138=>'L', +4140=>'L', +4141=>'NSM', +4142=>'NSM', +4143=>'NSM', +4144=>'NSM', +4145=>'L', +4146=>'NSM', +4150=>'NSM', +4151=>'NSM', +4152=>'L', +4153=>'NSM', +4160=>'L', +4161=>'L', +4162=>'L', +4163=>'L', +4164=>'L', +4165=>'L', +4166=>'L', +4167=>'L', +4168=>'L', +4169=>'L', +4170=>'L', +4171=>'L', +4172=>'L', +4173=>'L', +4174=>'L', +4175=>'L', +4176=>'L', +4177=>'L', +4178=>'L', +4179=>'L', +4180=>'L', +4181=>'L', +4182=>'L', +4183=>'L', +4184=>'NSM', +4185=>'NSM', +4256=>'L', +4257=>'L', +4258=>'L', +4259=>'L', +4260=>'L', +4261=>'L', +4262=>'L', +4263=>'L', +4264=>'L', +4265=>'L', +4266=>'L', +4267=>'L', +4268=>'L', +4269=>'L', +4270=>'L', +4271=>'L', +4272=>'L', +4273=>'L', +4274=>'L', +4275=>'L', +4276=>'L', +4277=>'L', +4278=>'L', +4279=>'L', +4280=>'L', +4281=>'L', +4282=>'L', +4283=>'L', +4284=>'L', +4285=>'L', +4286=>'L', +4287=>'L', +4288=>'L', +4289=>'L', +4290=>'L', +4291=>'L', +4292=>'L', +4293=>'L', +4304=>'L', +4305=>'L', +4306=>'L', +4307=>'L', +4308=>'L', +4309=>'L', +4310=>'L', +4311=>'L', +4312=>'L', +4313=>'L', +4314=>'L', +4315=>'L', +4316=>'L', +4317=>'L', +4318=>'L', +4319=>'L', +4320=>'L', +4321=>'L', +4322=>'L', +4323=>'L', +4324=>'L', +4325=>'L', +4326=>'L', +4327=>'L', +4328=>'L', +4329=>'L', +4330=>'L', +4331=>'L', +4332=>'L', +4333=>'L', +4334=>'L', +4335=>'L', +4336=>'L', +4337=>'L', +4338=>'L', +4339=>'L', +4340=>'L', +4341=>'L', +4342=>'L', +4343=>'L', +4344=>'L', +4345=>'L', +4346=>'L', +4347=>'L', +4348=>'L', +4352=>'L', +4353=>'L', +4354=>'L', +4355=>'L', +4356=>'L', +4357=>'L', +4358=>'L', +4359=>'L', +4360=>'L', +4361=>'L', +4362=>'L', +4363=>'L', +4364=>'L', +4365=>'L', +4366=>'L', +4367=>'L', +4368=>'L', +4369=>'L', +4370=>'L', +4371=>'L', +4372=>'L', +4373=>'L', +4374=>'L', +4375=>'L', +4376=>'L', +4377=>'L', +4378=>'L', +4379=>'L', +4380=>'L', +4381=>'L', +4382=>'L', +4383=>'L', +4384=>'L', +4385=>'L', +4386=>'L', +4387=>'L', +4388=>'L', +4389=>'L', +4390=>'L', +4391=>'L', +4392=>'L', +4393=>'L', +4394=>'L', +4395=>'L', +4396=>'L', +4397=>'L', +4398=>'L', +4399=>'L', +4400=>'L', +4401=>'L', +4402=>'L', +4403=>'L', +4404=>'L', +4405=>'L', +4406=>'L', +4407=>'L', +4408=>'L', +4409=>'L', +4410=>'L', +4411=>'L', +4412=>'L', +4413=>'L', +4414=>'L', +4415=>'L', +4416=>'L', +4417=>'L', +4418=>'L', +4419=>'L', +4420=>'L', +4421=>'L', +4422=>'L', +4423=>'L', +4424=>'L', +4425=>'L', +4426=>'L', +4427=>'L', +4428=>'L', +4429=>'L', +4430=>'L', +4431=>'L', +4432=>'L', +4433=>'L', +4434=>'L', +4435=>'L', +4436=>'L', +4437=>'L', +4438=>'L', +4439=>'L', +4440=>'L', +4441=>'L', +4447=>'L', +4448=>'L', +4449=>'L', +4450=>'L', +4451=>'L', +4452=>'L', +4453=>'L', +4454=>'L', +4455=>'L', +4456=>'L', +4457=>'L', +4458=>'L', +4459=>'L', +4460=>'L', +4461=>'L', +4462=>'L', +4463=>'L', +4464=>'L', +4465=>'L', +4466=>'L', +4467=>'L', +4468=>'L', +4469=>'L', +4470=>'L', +4471=>'L', +4472=>'L', +4473=>'L', +4474=>'L', +4475=>'L', +4476=>'L', +4477=>'L', +4478=>'L', +4479=>'L', +4480=>'L', +4481=>'L', +4482=>'L', +4483=>'L', +4484=>'L', +4485=>'L', +4486=>'L', +4487=>'L', +4488=>'L', +4489=>'L', +4490=>'L', +4491=>'L', +4492=>'L', +4493=>'L', +4494=>'L', +4495=>'L', +4496=>'L', +4497=>'L', +4498=>'L', +4499=>'L', +4500=>'L', +4501=>'L', +4502=>'L', +4503=>'L', +4504=>'L', +4505=>'L', +4506=>'L', +4507=>'L', +4508=>'L', +4509=>'L', +4510=>'L', +4511=>'L', +4512=>'L', +4513=>'L', +4514=>'L', +4520=>'L', +4521=>'L', +4522=>'L', +4523=>'L', +4524=>'L', +4525=>'L', +4526=>'L', +4527=>'L', +4528=>'L', +4529=>'L', +4530=>'L', +4531=>'L', +4532=>'L', +4533=>'L', +4534=>'L', +4535=>'L', +4536=>'L', +4537=>'L', +4538=>'L', +4539=>'L', +4540=>'L', +4541=>'L', +4542=>'L', +4543=>'L', +4544=>'L', +4545=>'L', +4546=>'L', +4547=>'L', +4548=>'L', +4549=>'L', +4550=>'L', +4551=>'L', +4552=>'L', +4553=>'L', +4554=>'L', +4555=>'L', +4556=>'L', +4557=>'L', +4558=>'L', +4559=>'L', +4560=>'L', +4561=>'L', +4562=>'L', +4563=>'L', +4564=>'L', +4565=>'L', +4566=>'L', +4567=>'L', +4568=>'L', +4569=>'L', +4570=>'L', +4571=>'L', +4572=>'L', +4573=>'L', +4574=>'L', +4575=>'L', +4576=>'L', +4577=>'L', +4578=>'L', +4579=>'L', +4580=>'L', +4581=>'L', +4582=>'L', +4583=>'L', +4584=>'L', +4585=>'L', +4586=>'L', +4587=>'L', +4588=>'L', +4589=>'L', +4590=>'L', +4591=>'L', +4592=>'L', +4593=>'L', +4594=>'L', +4595=>'L', +4596=>'L', +4597=>'L', +4598=>'L', +4599=>'L', +4600=>'L', +4601=>'L', +4608=>'L', +4609=>'L', +4610=>'L', +4611=>'L', +4612=>'L', +4613=>'L', +4614=>'L', +4615=>'L', +4616=>'L', +4617=>'L', +4618=>'L', +4619=>'L', +4620=>'L', +4621=>'L', +4622=>'L', +4623=>'L', +4624=>'L', +4625=>'L', +4626=>'L', +4627=>'L', +4628=>'L', +4629=>'L', +4630=>'L', +4631=>'L', +4632=>'L', +4633=>'L', +4634=>'L', +4635=>'L', +4636=>'L', +4637=>'L', +4638=>'L', +4639=>'L', +4640=>'L', +4641=>'L', +4642=>'L', +4643=>'L', +4644=>'L', +4645=>'L', +4646=>'L', +4647=>'L', +4648=>'L', +4649=>'L', +4650=>'L', +4651=>'L', +4652=>'L', +4653=>'L', +4654=>'L', +4655=>'L', +4656=>'L', +4657=>'L', +4658=>'L', +4659=>'L', +4660=>'L', +4661=>'L', +4662=>'L', +4663=>'L', +4664=>'L', +4665=>'L', +4666=>'L', +4667=>'L', +4668=>'L', +4669=>'L', +4670=>'L', +4671=>'L', +4672=>'L', +4673=>'L', +4674=>'L', +4675=>'L', +4676=>'L', +4677=>'L', +4678=>'L', +4679=>'L', +4680=>'L', +4682=>'L', +4683=>'L', +4684=>'L', +4685=>'L', +4688=>'L', +4689=>'L', +4690=>'L', +4691=>'L', +4692=>'L', +4693=>'L', +4694=>'L', +4696=>'L', +4698=>'L', +4699=>'L', +4700=>'L', +4701=>'L', +4704=>'L', +4705=>'L', +4706=>'L', +4707=>'L', +4708=>'L', +4709=>'L', +4710=>'L', +4711=>'L', +4712=>'L', +4713=>'L', +4714=>'L', +4715=>'L', +4716=>'L', +4717=>'L', +4718=>'L', +4719=>'L', +4720=>'L', +4721=>'L', +4722=>'L', +4723=>'L', +4724=>'L', +4725=>'L', +4726=>'L', +4727=>'L', +4728=>'L', +4729=>'L', +4730=>'L', +4731=>'L', +4732=>'L', +4733=>'L', +4734=>'L', +4735=>'L', +4736=>'L', +4737=>'L', +4738=>'L', +4739=>'L', +4740=>'L', +4741=>'L', +4742=>'L', +4743=>'L', +4744=>'L', +4746=>'L', +4747=>'L', +4748=>'L', +4749=>'L', +4752=>'L', +4753=>'L', +4754=>'L', +4755=>'L', +4756=>'L', +4757=>'L', +4758=>'L', +4759=>'L', +4760=>'L', +4761=>'L', +4762=>'L', +4763=>'L', +4764=>'L', +4765=>'L', +4766=>'L', +4767=>'L', +4768=>'L', +4769=>'L', +4770=>'L', +4771=>'L', +4772=>'L', +4773=>'L', +4774=>'L', +4775=>'L', +4776=>'L', +4777=>'L', +4778=>'L', +4779=>'L', +4780=>'L', +4781=>'L', +4782=>'L', +4783=>'L', +4784=>'L', +4786=>'L', +4787=>'L', +4788=>'L', +4789=>'L', +4792=>'L', +4793=>'L', +4794=>'L', +4795=>'L', +4796=>'L', +4797=>'L', +4798=>'L', +4800=>'L', +4802=>'L', +4803=>'L', +4804=>'L', +4805=>'L', +4808=>'L', +4809=>'L', +4810=>'L', +4811=>'L', +4812=>'L', +4813=>'L', +4814=>'L', +4815=>'L', +4816=>'L', +4817=>'L', +4818=>'L', +4819=>'L', +4820=>'L', +4821=>'L', +4822=>'L', +4824=>'L', +4825=>'L', +4826=>'L', +4827=>'L', +4828=>'L', +4829=>'L', +4830=>'L', +4831=>'L', +4832=>'L', +4833=>'L', +4834=>'L', +4835=>'L', +4836=>'L', +4837=>'L', +4838=>'L', +4839=>'L', +4840=>'L', +4841=>'L', +4842=>'L', +4843=>'L', +4844=>'L', +4845=>'L', +4846=>'L', +4847=>'L', +4848=>'L', +4849=>'L', +4850=>'L', +4851=>'L', +4852=>'L', +4853=>'L', +4854=>'L', +4855=>'L', +4856=>'L', +4857=>'L', +4858=>'L', +4859=>'L', +4860=>'L', +4861=>'L', +4862=>'L', +4863=>'L', +4864=>'L', +4865=>'L', +4866=>'L', +4867=>'L', +4868=>'L', +4869=>'L', +4870=>'L', +4871=>'L', +4872=>'L', +4873=>'L', +4874=>'L', +4875=>'L', +4876=>'L', +4877=>'L', +4878=>'L', +4879=>'L', +4880=>'L', +4882=>'L', +4883=>'L', +4884=>'L', +4885=>'L', +4888=>'L', +4889=>'L', +4890=>'L', +4891=>'L', +4892=>'L', +4893=>'L', +4894=>'L', +4895=>'L', +4896=>'L', +4897=>'L', +4898=>'L', +4899=>'L', +4900=>'L', +4901=>'L', +4902=>'L', +4903=>'L', +4904=>'L', +4905=>'L', +4906=>'L', +4907=>'L', +4908=>'L', +4909=>'L', +4910=>'L', +4911=>'L', +4912=>'L', +4913=>'L', +4914=>'L', +4915=>'L', +4916=>'L', +4917=>'L', +4918=>'L', +4919=>'L', +4920=>'L', +4921=>'L', +4922=>'L', +4923=>'L', +4924=>'L', +4925=>'L', +4926=>'L', +4927=>'L', +4928=>'L', +4929=>'L', +4930=>'L', +4931=>'L', +4932=>'L', +4933=>'L', +4934=>'L', +4935=>'L', +4936=>'L', +4937=>'L', +4938=>'L', +4939=>'L', +4940=>'L', +4941=>'L', +4942=>'L', +4943=>'L', +4944=>'L', +4945=>'L', +4946=>'L', +4947=>'L', +4948=>'L', +4949=>'L', +4950=>'L', +4951=>'L', +4952=>'L', +4953=>'L', +4954=>'L', +4959=>'NSM', +4960=>'L', +4961=>'L', +4962=>'L', +4963=>'L', +4964=>'L', +4965=>'L', +4966=>'L', +4967=>'L', +4968=>'L', +4969=>'L', +4970=>'L', +4971=>'L', +4972=>'L', +4973=>'L', +4974=>'L', +4975=>'L', +4976=>'L', +4977=>'L', +4978=>'L', +4979=>'L', +4980=>'L', +4981=>'L', +4982=>'L', +4983=>'L', +4984=>'L', +4985=>'L', +4986=>'L', +4987=>'L', +4988=>'L', +4992=>'L', +4993=>'L', +4994=>'L', +4995=>'L', +4996=>'L', +4997=>'L', +4998=>'L', +4999=>'L', +5000=>'L', +5001=>'L', +5002=>'L', +5003=>'L', +5004=>'L', +5005=>'L', +5006=>'L', +5007=>'L', +5008=>'ON', +5009=>'ON', +5010=>'ON', +5011=>'ON', +5012=>'ON', +5013=>'ON', +5014=>'ON', +5015=>'ON', +5016=>'ON', +5017=>'ON', +5024=>'L', +5025=>'L', +5026=>'L', +5027=>'L', +5028=>'L', +5029=>'L', +5030=>'L', +5031=>'L', +5032=>'L', +5033=>'L', +5034=>'L', +5035=>'L', +5036=>'L', +5037=>'L', +5038=>'L', +5039=>'L', +5040=>'L', +5041=>'L', +5042=>'L', +5043=>'L', +5044=>'L', +5045=>'L', +5046=>'L', +5047=>'L', +5048=>'L', +5049=>'L', +5050=>'L', +5051=>'L', +5052=>'L', +5053=>'L', +5054=>'L', +5055=>'L', +5056=>'L', +5057=>'L', +5058=>'L', +5059=>'L', +5060=>'L', +5061=>'L', +5062=>'L', +5063=>'L', +5064=>'L', +5065=>'L', +5066=>'L', +5067=>'L', +5068=>'L', +5069=>'L', +5070=>'L', +5071=>'L', +5072=>'L', +5073=>'L', +5074=>'L', +5075=>'L', +5076=>'L', +5077=>'L', +5078=>'L', +5079=>'L', +5080=>'L', +5081=>'L', +5082=>'L', +5083=>'L', +5084=>'L', +5085=>'L', +5086=>'L', +5087=>'L', +5088=>'L', +5089=>'L', +5090=>'L', +5091=>'L', +5092=>'L', +5093=>'L', +5094=>'L', +5095=>'L', +5096=>'L', +5097=>'L', +5098=>'L', +5099=>'L', +5100=>'L', +5101=>'L', +5102=>'L', +5103=>'L', +5104=>'L', +5105=>'L', +5106=>'L', +5107=>'L', +5108=>'L', +5121=>'L', +5122=>'L', +5123=>'L', +5124=>'L', +5125=>'L', +5126=>'L', +5127=>'L', +5128=>'L', +5129=>'L', +5130=>'L', +5131=>'L', +5132=>'L', +5133=>'L', +5134=>'L', +5135=>'L', +5136=>'L', +5137=>'L', +5138=>'L', +5139=>'L', +5140=>'L', +5141=>'L', +5142=>'L', +5143=>'L', +5144=>'L', +5145=>'L', +5146=>'L', +5147=>'L', +5148=>'L', +5149=>'L', +5150=>'L', +5151=>'L', +5152=>'L', +5153=>'L', +5154=>'L', +5155=>'L', +5156=>'L', +5157=>'L', +5158=>'L', +5159=>'L', +5160=>'L', +5161=>'L', +5162=>'L', +5163=>'L', +5164=>'L', +5165=>'L', +5166=>'L', +5167=>'L', +5168=>'L', +5169=>'L', +5170=>'L', +5171=>'L', +5172=>'L', +5173=>'L', +5174=>'L', +5175=>'L', +5176=>'L', +5177=>'L', +5178=>'L', +5179=>'L', +5180=>'L', +5181=>'L', +5182=>'L', +5183=>'L', +5184=>'L', +5185=>'L', +5186=>'L', +5187=>'L', +5188=>'L', +5189=>'L', +5190=>'L', +5191=>'L', +5192=>'L', +5193=>'L', +5194=>'L', +5195=>'L', +5196=>'L', +5197=>'L', +5198=>'L', +5199=>'L', +5200=>'L', +5201=>'L', +5202=>'L', +5203=>'L', +5204=>'L', +5205=>'L', +5206=>'L', +5207=>'L', +5208=>'L', +5209=>'L', +5210=>'L', +5211=>'L', +5212=>'L', +5213=>'L', +5214=>'L', +5215=>'L', +5216=>'L', +5217=>'L', +5218=>'L', +5219=>'L', +5220=>'L', +5221=>'L', +5222=>'L', +5223=>'L', +5224=>'L', +5225=>'L', +5226=>'L', +5227=>'L', +5228=>'L', +5229=>'L', +5230=>'L', +5231=>'L', +5232=>'L', +5233=>'L', +5234=>'L', +5235=>'L', +5236=>'L', +5237=>'L', +5238=>'L', +5239=>'L', +5240=>'L', +5241=>'L', +5242=>'L', +5243=>'L', +5244=>'L', +5245=>'L', +5246=>'L', +5247=>'L', +5248=>'L', +5249=>'L', +5250=>'L', +5251=>'L', +5252=>'L', +5253=>'L', +5254=>'L', +5255=>'L', +5256=>'L', +5257=>'L', +5258=>'L', +5259=>'L', +5260=>'L', +5261=>'L', +5262=>'L', +5263=>'L', +5264=>'L', +5265=>'L', +5266=>'L', +5267=>'L', +5268=>'L', +5269=>'L', +5270=>'L', +5271=>'L', +5272=>'L', +5273=>'L', +5274=>'L', +5275=>'L', +5276=>'L', +5277=>'L', +5278=>'L', +5279=>'L', +5280=>'L', +5281=>'L', +5282=>'L', +5283=>'L', +5284=>'L', +5285=>'L', +5286=>'L', +5287=>'L', +5288=>'L', +5289=>'L', +5290=>'L', +5291=>'L', +5292=>'L', +5293=>'L', +5294=>'L', +5295=>'L', +5296=>'L', +5297=>'L', +5298=>'L', +5299=>'L', +5300=>'L', +5301=>'L', +5302=>'L', +5303=>'L', +5304=>'L', +5305=>'L', +5306=>'L', +5307=>'L', +5308=>'L', +5309=>'L', +5310=>'L', +5311=>'L', +5312=>'L', +5313=>'L', +5314=>'L', +5315=>'L', +5316=>'L', +5317=>'L', +5318=>'L', +5319=>'L', +5320=>'L', +5321=>'L', +5322=>'L', +5323=>'L', +5324=>'L', +5325=>'L', +5326=>'L', +5327=>'L', +5328=>'L', +5329=>'L', +5330=>'L', +5331=>'L', +5332=>'L', +5333=>'L', +5334=>'L', +5335=>'L', +5336=>'L', +5337=>'L', +5338=>'L', +5339=>'L', +5340=>'L', +5341=>'L', +5342=>'L', +5343=>'L', +5344=>'L', +5345=>'L', +5346=>'L', +5347=>'L', +5348=>'L', +5349=>'L', +5350=>'L', +5351=>'L', +5352=>'L', +5353=>'L', +5354=>'L', +5355=>'L', +5356=>'L', +5357=>'L', +5358=>'L', +5359=>'L', +5360=>'L', +5361=>'L', +5362=>'L', +5363=>'L', +5364=>'L', +5365=>'L', +5366=>'L', +5367=>'L', +5368=>'L', +5369=>'L', +5370=>'L', +5371=>'L', +5372=>'L', +5373=>'L', +5374=>'L', +5375=>'L', +5376=>'L', +5377=>'L', +5378=>'L', +5379=>'L', +5380=>'L', +5381=>'L', +5382=>'L', +5383=>'L', +5384=>'L', +5385=>'L', +5386=>'L', +5387=>'L', +5388=>'L', +5389=>'L', +5390=>'L', +5391=>'L', +5392=>'L', +5393=>'L', +5394=>'L', +5395=>'L', +5396=>'L', +5397=>'L', +5398=>'L', +5399=>'L', +5400=>'L', +5401=>'L', +5402=>'L', +5403=>'L', +5404=>'L', +5405=>'L', +5406=>'L', +5407=>'L', +5408=>'L', +5409=>'L', +5410=>'L', +5411=>'L', +5412=>'L', +5413=>'L', +5414=>'L', +5415=>'L', +5416=>'L', +5417=>'L', +5418=>'L', +5419=>'L', +5420=>'L', +5421=>'L', +5422=>'L', +5423=>'L', +5424=>'L', +5425=>'L', +5426=>'L', +5427=>'L', +5428=>'L', +5429=>'L', +5430=>'L', +5431=>'L', +5432=>'L', +5433=>'L', +5434=>'L', +5435=>'L', +5436=>'L', +5437=>'L', +5438=>'L', +5439=>'L', +5440=>'L', +5441=>'L', +5442=>'L', +5443=>'L', +5444=>'L', +5445=>'L', +5446=>'L', +5447=>'L', +5448=>'L', +5449=>'L', +5450=>'L', +5451=>'L', +5452=>'L', +5453=>'L', +5454=>'L', +5455=>'L', +5456=>'L', +5457=>'L', +5458=>'L', +5459=>'L', +5460=>'L', +5461=>'L', +5462=>'L', +5463=>'L', +5464=>'L', +5465=>'L', +5466=>'L', +5467=>'L', +5468=>'L', +5469=>'L', +5470=>'L', +5471=>'L', +5472=>'L', +5473=>'L', +5474=>'L', +5475=>'L', +5476=>'L', +5477=>'L', +5478=>'L', +5479=>'L', +5480=>'L', +5481=>'L', +5482=>'L', +5483=>'L', +5484=>'L', +5485=>'L', +5486=>'L', +5487=>'L', +5488=>'L', +5489=>'L', +5490=>'L', +5491=>'L', +5492=>'L', +5493=>'L', +5494=>'L', +5495=>'L', +5496=>'L', +5497=>'L', +5498=>'L', +5499=>'L', +5500=>'L', +5501=>'L', +5502=>'L', +5503=>'L', +5504=>'L', +5505=>'L', +5506=>'L', +5507=>'L', +5508=>'L', +5509=>'L', +5510=>'L', +5511=>'L', +5512=>'L', +5513=>'L', +5514=>'L', +5515=>'L', +5516=>'L', +5517=>'L', +5518=>'L', +5519=>'L', +5520=>'L', +5521=>'L', +5522=>'L', +5523=>'L', +5524=>'L', +5525=>'L', +5526=>'L', +5527=>'L', +5528=>'L', +5529=>'L', +5530=>'L', +5531=>'L', +5532=>'L', +5533=>'L', +5534=>'L', +5535=>'L', +5536=>'L', +5537=>'L', +5538=>'L', +5539=>'L', +5540=>'L', +5541=>'L', +5542=>'L', +5543=>'L', +5544=>'L', +5545=>'L', +5546=>'L', +5547=>'L', +5548=>'L', +5549=>'L', +5550=>'L', +5551=>'L', +5552=>'L', +5553=>'L', +5554=>'L', +5555=>'L', +5556=>'L', +5557=>'L', +5558=>'L', +5559=>'L', +5560=>'L', +5561=>'L', +5562=>'L', +5563=>'L', +5564=>'L', +5565=>'L', +5566=>'L', +5567=>'L', +5568=>'L', +5569=>'L', +5570=>'L', +5571=>'L', +5572=>'L', +5573=>'L', +5574=>'L', +5575=>'L', +5576=>'L', +5577=>'L', +5578=>'L', +5579=>'L', +5580=>'L', +5581=>'L', +5582=>'L', +5583=>'L', +5584=>'L', +5585=>'L', +5586=>'L', +5587=>'L', +5588=>'L', +5589=>'L', +5590=>'L', +5591=>'L', +5592=>'L', +5593=>'L', +5594=>'L', +5595=>'L', +5596=>'L', +5597=>'L', +5598=>'L', +5599=>'L', +5600=>'L', +5601=>'L', +5602=>'L', +5603=>'L', +5604=>'L', +5605=>'L', +5606=>'L', +5607=>'L', +5608=>'L', +5609=>'L', +5610=>'L', +5611=>'L', +5612=>'L', +5613=>'L', +5614=>'L', +5615=>'L', +5616=>'L', +5617=>'L', +5618=>'L', +5619=>'L', +5620=>'L', +5621=>'L', +5622=>'L', +5623=>'L', +5624=>'L', +5625=>'L', +5626=>'L', +5627=>'L', +5628=>'L', +5629=>'L', +5630=>'L', +5631=>'L', +5632=>'L', +5633=>'L', +5634=>'L', +5635=>'L', +5636=>'L', +5637=>'L', +5638=>'L', +5639=>'L', +5640=>'L', +5641=>'L', +5642=>'L', +5643=>'L', +5644=>'L', +5645=>'L', +5646=>'L', +5647=>'L', +5648=>'L', +5649=>'L', +5650=>'L', +5651=>'L', +5652=>'L', +5653=>'L', +5654=>'L', +5655=>'L', +5656=>'L', +5657=>'L', +5658=>'L', +5659=>'L', +5660=>'L', +5661=>'L', +5662=>'L', +5663=>'L', +5664=>'L', +5665=>'L', +5666=>'L', +5667=>'L', +5668=>'L', +5669=>'L', +5670=>'L', +5671=>'L', +5672=>'L', +5673=>'L', +5674=>'L', +5675=>'L', +5676=>'L', +5677=>'L', +5678=>'L', +5679=>'L', +5680=>'L', +5681=>'L', +5682=>'L', +5683=>'L', +5684=>'L', +5685=>'L', +5686=>'L', +5687=>'L', +5688=>'L', +5689=>'L', +5690=>'L', +5691=>'L', +5692=>'L', +5693=>'L', +5694=>'L', +5695=>'L', +5696=>'L', +5697=>'L', +5698=>'L', +5699=>'L', +5700=>'L', +5701=>'L', +5702=>'L', +5703=>'L', +5704=>'L', +5705=>'L', +5706=>'L', +5707=>'L', +5708=>'L', +5709=>'L', +5710=>'L', +5711=>'L', +5712=>'L', +5713=>'L', +5714=>'L', +5715=>'L', +5716=>'L', +5717=>'L', +5718=>'L', +5719=>'L', +5720=>'L', +5721=>'L', +5722=>'L', +5723=>'L', +5724=>'L', +5725=>'L', +5726=>'L', +5727=>'L', +5728=>'L', +5729=>'L', +5730=>'L', +5731=>'L', +5732=>'L', +5733=>'L', +5734=>'L', +5735=>'L', +5736=>'L', +5737=>'L', +5738=>'L', +5739=>'L', +5740=>'L', +5741=>'L', +5742=>'L', +5743=>'L', +5744=>'L', +5745=>'L', +5746=>'L', +5747=>'L', +5748=>'L', +5749=>'L', +5750=>'L', +5760=>'WS', +5761=>'L', +5762=>'L', +5763=>'L', +5764=>'L', +5765=>'L', +5766=>'L', +5767=>'L', +5768=>'L', +5769=>'L', +5770=>'L', +5771=>'L', +5772=>'L', +5773=>'L', +5774=>'L', +5775=>'L', +5776=>'L', +5777=>'L', +5778=>'L', +5779=>'L', +5780=>'L', +5781=>'L', +5782=>'L', +5783=>'L', +5784=>'L', +5785=>'L', +5786=>'L', +5787=>'ON', +5788=>'ON', +5792=>'L', +5793=>'L', +5794=>'L', +5795=>'L', +5796=>'L', +5797=>'L', +5798=>'L', +5799=>'L', +5800=>'L', +5801=>'L', +5802=>'L', +5803=>'L', +5804=>'L', +5805=>'L', +5806=>'L', +5807=>'L', +5808=>'L', +5809=>'L', +5810=>'L', +5811=>'L', +5812=>'L', +5813=>'L', +5814=>'L', +5815=>'L', +5816=>'L', +5817=>'L', +5818=>'L', +5819=>'L', +5820=>'L', +5821=>'L', +5822=>'L', +5823=>'L', +5824=>'L', +5825=>'L', +5826=>'L', +5827=>'L', +5828=>'L', +5829=>'L', +5830=>'L', +5831=>'L', +5832=>'L', +5833=>'L', +5834=>'L', +5835=>'L', +5836=>'L', +5837=>'L', +5838=>'L', +5839=>'L', +5840=>'L', +5841=>'L', +5842=>'L', +5843=>'L', +5844=>'L', +5845=>'L', +5846=>'L', +5847=>'L', +5848=>'L', +5849=>'L', +5850=>'L', +5851=>'L', +5852=>'L', +5853=>'L', +5854=>'L', +5855=>'L', +5856=>'L', +5857=>'L', +5858=>'L', +5859=>'L', +5860=>'L', +5861=>'L', +5862=>'L', +5863=>'L', +5864=>'L', +5865=>'L', +5866=>'L', +5867=>'L', +5868=>'L', +5869=>'L', +5870=>'L', +5871=>'L', +5872=>'L', +5888=>'L', +5889=>'L', +5890=>'L', +5891=>'L', +5892=>'L', +5893=>'L', +5894=>'L', +5895=>'L', +5896=>'L', +5897=>'L', +5898=>'L', +5899=>'L', +5900=>'L', +5902=>'L', +5903=>'L', +5904=>'L', +5905=>'L', +5906=>'NSM', +5907=>'NSM', +5908=>'NSM', +5920=>'L', +5921=>'L', +5922=>'L', +5923=>'L', +5924=>'L', +5925=>'L', +5926=>'L', +5927=>'L', +5928=>'L', +5929=>'L', +5930=>'L', +5931=>'L', +5932=>'L', +5933=>'L', +5934=>'L', +5935=>'L', +5936=>'L', +5937=>'L', +5938=>'NSM', +5939=>'NSM', +5940=>'NSM', +5941=>'L', +5942=>'L', +5952=>'L', +5953=>'L', +5954=>'L', +5955=>'L', +5956=>'L', +5957=>'L', +5958=>'L', +5959=>'L', +5960=>'L', +5961=>'L', +5962=>'L', +5963=>'L', +5964=>'L', +5965=>'L', +5966=>'L', +5967=>'L', +5968=>'L', +5969=>'L', +5970=>'NSM', +5971=>'NSM', +5984=>'L', +5985=>'L', +5986=>'L', +5987=>'L', +5988=>'L', +5989=>'L', +5990=>'L', +5991=>'L', +5992=>'L', +5993=>'L', +5994=>'L', +5995=>'L', +5996=>'L', +5998=>'L', +5999=>'L', +6000=>'L', +6002=>'NSM', +6003=>'NSM', +6016=>'L', +6017=>'L', +6018=>'L', +6019=>'L', +6020=>'L', +6021=>'L', +6022=>'L', +6023=>'L', +6024=>'L', +6025=>'L', +6026=>'L', +6027=>'L', +6028=>'L', +6029=>'L', +6030=>'L', +6031=>'L', +6032=>'L', +6033=>'L', +6034=>'L', +6035=>'L', +6036=>'L', +6037=>'L', +6038=>'L', +6039=>'L', +6040=>'L', +6041=>'L', +6042=>'L', +6043=>'L', +6044=>'L', +6045=>'L', +6046=>'L', +6047=>'L', +6048=>'L', +6049=>'L', +6050=>'L', +6051=>'L', +6052=>'L', +6053=>'L', +6054=>'L', +6055=>'L', +6056=>'L', +6057=>'L', +6058=>'L', +6059=>'L', +6060=>'L', +6061=>'L', +6062=>'L', +6063=>'L', +6064=>'L', +6065=>'L', +6066=>'L', +6067=>'L', +6068=>'L', +6069=>'L', +6070=>'L', +6071=>'NSM', +6072=>'NSM', +6073=>'NSM', +6074=>'NSM', +6075=>'NSM', +6076=>'NSM', +6077=>'NSM', +6078=>'L', +6079=>'L', +6080=>'L', +6081=>'L', +6082=>'L', +6083=>'L', +6084=>'L', +6085=>'L', +6086=>'NSM', +6087=>'L', +6088=>'L', +6089=>'NSM', +6090=>'NSM', +6091=>'NSM', +6092=>'NSM', +6093=>'NSM', +6094=>'NSM', +6095=>'NSM', +6096=>'NSM', +6097=>'NSM', +6098=>'NSM', +6099=>'NSM', +6100=>'L', +6101=>'L', +6102=>'L', +6103=>'L', +6104=>'L', +6105=>'L', +6106=>'L', +6107=>'ET', +6108=>'L', +6109=>'NSM', +6112=>'L', +6113=>'L', +6114=>'L', +6115=>'L', +6116=>'L', +6117=>'L', +6118=>'L', +6119=>'L', +6120=>'L', +6121=>'L', +6128=>'ON', +6129=>'ON', +6130=>'ON', +6131=>'ON', +6132=>'ON', +6133=>'ON', +6134=>'ON', +6135=>'ON', +6136=>'ON', +6137=>'ON', +6144=>'ON', +6145=>'ON', +6146=>'ON', +6147=>'ON', +6148=>'ON', +6149=>'ON', +6150=>'ON', +6151=>'ON', +6152=>'ON', +6153=>'ON', +6154=>'ON', +6155=>'NSM', +6156=>'NSM', +6157=>'NSM', +6158=>'WS', +6160=>'L', +6161=>'L', +6162=>'L', +6163=>'L', +6164=>'L', +6165=>'L', +6166=>'L', +6167=>'L', +6168=>'L', +6169=>'L', +6176=>'L', +6177=>'L', +6178=>'L', +6179=>'L', +6180=>'L', +6181=>'L', +6182=>'L', +6183=>'L', +6184=>'L', +6185=>'L', +6186=>'L', +6187=>'L', +6188=>'L', +6189=>'L', +6190=>'L', +6191=>'L', +6192=>'L', +6193=>'L', +6194=>'L', +6195=>'L', +6196=>'L', +6197=>'L', +6198=>'L', +6199=>'L', +6200=>'L', +6201=>'L', +6202=>'L', +6203=>'L', +6204=>'L', +6205=>'L', +6206=>'L', +6207=>'L', +6208=>'L', +6209=>'L', +6210=>'L', +6211=>'L', +6212=>'L', +6213=>'L', +6214=>'L', +6215=>'L', +6216=>'L', +6217=>'L', +6218=>'L', +6219=>'L', +6220=>'L', +6221=>'L', +6222=>'L', +6223=>'L', +6224=>'L', +6225=>'L', +6226=>'L', +6227=>'L', +6228=>'L', +6229=>'L', +6230=>'L', +6231=>'L', +6232=>'L', +6233=>'L', +6234=>'L', +6235=>'L', +6236=>'L', +6237=>'L', +6238=>'L', +6239=>'L', +6240=>'L', +6241=>'L', +6242=>'L', +6243=>'L', +6244=>'L', +6245=>'L', +6246=>'L', +6247=>'L', +6248=>'L', +6249=>'L', +6250=>'L', +6251=>'L', +6252=>'L', +6253=>'L', +6254=>'L', +6255=>'L', +6256=>'L', +6257=>'L', +6258=>'L', +6259=>'L', +6260=>'L', +6261=>'L', +6262=>'L', +6263=>'L', +6272=>'L', +6273=>'L', +6274=>'L', +6275=>'L', +6276=>'L', +6277=>'L', +6278=>'L', +6279=>'L', +6280=>'L', +6281=>'L', +6282=>'L', +6283=>'L', +6284=>'L', +6285=>'L', +6286=>'L', +6287=>'L', +6288=>'L', +6289=>'L', +6290=>'L', +6291=>'L', +6292=>'L', +6293=>'L', +6294=>'L', +6295=>'L', +6296=>'L', +6297=>'L', +6298=>'L', +6299=>'L', +6300=>'L', +6301=>'L', +6302=>'L', +6303=>'L', +6304=>'L', +6305=>'L', +6306=>'L', +6307=>'L', +6308=>'L', +6309=>'L', +6310=>'L', +6311=>'L', +6312=>'L', +6313=>'NSM', +6400=>'L', +6401=>'L', +6402=>'L', +6403=>'L', +6404=>'L', +6405=>'L', +6406=>'L', +6407=>'L', +6408=>'L', +6409=>'L', +6410=>'L', +6411=>'L', +6412=>'L', +6413=>'L', +6414=>'L', +6415=>'L', +6416=>'L', +6417=>'L', +6418=>'L', +6419=>'L', +6420=>'L', +6421=>'L', +6422=>'L', +6423=>'L', +6424=>'L', +6425=>'L', +6426=>'L', +6427=>'L', +6428=>'L', +6432=>'NSM', +6433=>'NSM', +6434=>'NSM', +6435=>'L', +6436=>'L', +6437=>'L', +6438=>'L', +6439=>'NSM', +6440=>'NSM', +6441=>'NSM', +6442=>'NSM', +6443=>'NSM', +6448=>'L', +6449=>'L', +6450=>'NSM', +6451=>'L', +6452=>'L', +6453=>'L', +6454=>'L', +6455=>'L', +6456=>'L', +6457=>'NSM', +6458=>'NSM', +6459=>'NSM', +6464=>'ON', +6468=>'ON', +6469=>'ON', +6470=>'L', +6471=>'L', +6472=>'L', +6473=>'L', +6474=>'L', +6475=>'L', +6476=>'L', +6477=>'L', +6478=>'L', +6479=>'L', +6480=>'L', +6481=>'L', +6482=>'L', +6483=>'L', +6484=>'L', +6485=>'L', +6486=>'L', +6487=>'L', +6488=>'L', +6489=>'L', +6490=>'L', +6491=>'L', +6492=>'L', +6493=>'L', +6494=>'L', +6495=>'L', +6496=>'L', +6497=>'L', +6498=>'L', +6499=>'L', +6500=>'L', +6501=>'L', +6502=>'L', +6503=>'L', +6504=>'L', +6505=>'L', +6506=>'L', +6507=>'L', +6508=>'L', +6509=>'L', +6512=>'L', +6513=>'L', +6514=>'L', +6515=>'L', +6516=>'L', +6528=>'L', +6529=>'L', +6530=>'L', +6531=>'L', +6532=>'L', +6533=>'L', +6534=>'L', +6535=>'L', +6536=>'L', +6537=>'L', +6538=>'L', +6539=>'L', +6540=>'L', +6541=>'L', +6542=>'L', +6543=>'L', +6544=>'L', +6545=>'L', +6546=>'L', +6547=>'L', +6548=>'L', +6549=>'L', +6550=>'L', +6551=>'L', +6552=>'L', +6553=>'L', +6554=>'L', +6555=>'L', +6556=>'L', +6557=>'L', +6558=>'L', +6559=>'L', +6560=>'L', +6561=>'L', +6562=>'L', +6563=>'L', +6564=>'L', +6565=>'L', +6566=>'L', +6567=>'L', +6568=>'L', +6569=>'L', +6576=>'L', +6577=>'L', +6578=>'L', +6579=>'L', +6580=>'L', +6581=>'L', +6582=>'L', +6583=>'L', +6584=>'L', +6585=>'L', +6586=>'L', +6587=>'L', +6588=>'L', +6589=>'L', +6590=>'L', +6591=>'L', +6592=>'L', +6593=>'L', +6594=>'L', +6595=>'L', +6596=>'L', +6597=>'L', +6598=>'L', +6599=>'L', +6600=>'L', +6601=>'L', +6608=>'L', +6609=>'L', +6610=>'L', +6611=>'L', +6612=>'L', +6613=>'L', +6614=>'L', +6615=>'L', +6616=>'L', +6617=>'L', +6622=>'ON', +6623=>'ON', +6624=>'ON', +6625=>'ON', +6626=>'ON', +6627=>'ON', +6628=>'ON', +6629=>'ON', +6630=>'ON', +6631=>'ON', +6632=>'ON', +6633=>'ON', +6634=>'ON', +6635=>'ON', +6636=>'ON', +6637=>'ON', +6638=>'ON', +6639=>'ON', +6640=>'ON', +6641=>'ON', +6642=>'ON', +6643=>'ON', +6644=>'ON', +6645=>'ON', +6646=>'ON', +6647=>'ON', +6648=>'ON', +6649=>'ON', +6650=>'ON', +6651=>'ON', +6652=>'ON', +6653=>'ON', +6654=>'ON', +6655=>'ON', +6656=>'L', +6657=>'L', +6658=>'L', +6659=>'L', +6660=>'L', +6661=>'L', +6662=>'L', +6663=>'L', +6664=>'L', +6665=>'L', +6666=>'L', +6667=>'L', +6668=>'L', +6669=>'L', +6670=>'L', +6671=>'L', +6672=>'L', +6673=>'L', +6674=>'L', +6675=>'L', +6676=>'L', +6677=>'L', +6678=>'L', +6679=>'NSM', +6680=>'NSM', +6681=>'L', +6682=>'L', +6683=>'L', +6686=>'L', +6687=>'L', +6912=>'NSM', +6913=>'NSM', +6914=>'NSM', +6915=>'NSM', +6916=>'L', +6917=>'L', +6918=>'L', +6919=>'L', +6920=>'L', +6921=>'L', +6922=>'L', +6923=>'L', +6924=>'L', +6925=>'L', +6926=>'L', +6927=>'L', +6928=>'L', +6929=>'L', +6930=>'L', +6931=>'L', +6932=>'L', +6933=>'L', +6934=>'L', +6935=>'L', +6936=>'L', +6937=>'L', +6938=>'L', +6939=>'L', +6940=>'L', +6941=>'L', +6942=>'L', +6943=>'L', +6944=>'L', +6945=>'L', +6946=>'L', +6947=>'L', +6948=>'L', +6949=>'L', +6950=>'L', +6951=>'L', +6952=>'L', +6953=>'L', +6954=>'L', +6955=>'L', +6956=>'L', +6957=>'L', +6958=>'L', +6959=>'L', +6960=>'L', +6961=>'L', +6962=>'L', +6963=>'L', +6964=>'NSM', +6965=>'L', +6966=>'NSM', +6967=>'NSM', +6968=>'NSM', +6969=>'NSM', +6970=>'NSM', +6971=>'L', +6972=>'NSM', +6973=>'L', +6974=>'L', +6975=>'L', +6976=>'L', +6977=>'L', +6978=>'NSM', +6979=>'L', +6980=>'L', +6981=>'L', +6982=>'L', +6983=>'L', +6984=>'L', +6985=>'L', +6986=>'L', +6987=>'L', +6992=>'L', +6993=>'L', +6994=>'L', +6995=>'L', +6996=>'L', +6997=>'L', +6998=>'L', +6999=>'L', +7000=>'L', +7001=>'L', +7002=>'L', +7003=>'L', +7004=>'L', +7005=>'L', +7006=>'L', +7007=>'L', +7008=>'L', +7009=>'L', +7010=>'L', +7011=>'L', +7012=>'L', +7013=>'L', +7014=>'L', +7015=>'L', +7016=>'L', +7017=>'L', +7018=>'L', +7019=>'NSM', +7020=>'NSM', +7021=>'NSM', +7022=>'NSM', +7023=>'NSM', +7024=>'NSM', +7025=>'NSM', +7026=>'NSM', +7027=>'NSM', +7028=>'L', +7029=>'L', +7030=>'L', +7031=>'L', +7032=>'L', +7033=>'L', +7034=>'L', +7035=>'L', +7036=>'L', +7424=>'L', +7425=>'L', +7426=>'L', +7427=>'L', +7428=>'L', +7429=>'L', +7430=>'L', +7431=>'L', +7432=>'L', +7433=>'L', +7434=>'L', +7435=>'L', +7436=>'L', +7437=>'L', +7438=>'L', +7439=>'L', +7440=>'L', +7441=>'L', +7442=>'L', +7443=>'L', +7444=>'L', +7445=>'L', +7446=>'L', +7447=>'L', +7448=>'L', +7449=>'L', +7450=>'L', +7451=>'L', +7452=>'L', +7453=>'L', +7454=>'L', +7455=>'L', +7456=>'L', +7457=>'L', +7458=>'L', +7459=>'L', +7460=>'L', +7461=>'L', +7462=>'L', +7463=>'L', +7464=>'L', +7465=>'L', +7466=>'L', +7467=>'L', +7468=>'L', +7469=>'L', +7470=>'L', +7471=>'L', +7472=>'L', +7473=>'L', +7474=>'L', +7475=>'L', +7476=>'L', +7477=>'L', +7478=>'L', +7479=>'L', +7480=>'L', +7481=>'L', +7482=>'L', +7483=>'L', +7484=>'L', +7485=>'L', +7486=>'L', +7487=>'L', +7488=>'L', +7489=>'L', +7490=>'L', +7491=>'L', +7492=>'L', +7493=>'L', +7494=>'L', +7495=>'L', +7496=>'L', +7497=>'L', +7498=>'L', +7499=>'L', +7500=>'L', +7501=>'L', +7502=>'L', +7503=>'L', +7504=>'L', +7505=>'L', +7506=>'L', +7507=>'L', +7508=>'L', +7509=>'L', +7510=>'L', +7511=>'L', +7512=>'L', +7513=>'L', +7514=>'L', +7515=>'L', +7516=>'L', +7517=>'L', +7518=>'L', +7519=>'L', +7520=>'L', +7521=>'L', +7522=>'L', +7523=>'L', +7524=>'L', +7525=>'L', +7526=>'L', +7527=>'L', +7528=>'L', +7529=>'L', +7530=>'L', +7531=>'L', +7532=>'L', +7533=>'L', +7534=>'L', +7535=>'L', +7536=>'L', +7537=>'L', +7538=>'L', +7539=>'L', +7540=>'L', +7541=>'L', +7542=>'L', +7543=>'L', +7544=>'L', +7545=>'L', +7546=>'L', +7547=>'L', +7548=>'L', +7549=>'L', +7550=>'L', +7551=>'L', +7552=>'L', +7553=>'L', +7554=>'L', +7555=>'L', +7556=>'L', +7557=>'L', +7558=>'L', +7559=>'L', +7560=>'L', +7561=>'L', +7562=>'L', +7563=>'L', +7564=>'L', +7565=>'L', +7566=>'L', +7567=>'L', +7568=>'L', +7569=>'L', +7570=>'L', +7571=>'L', +7572=>'L', +7573=>'L', +7574=>'L', +7575=>'L', +7576=>'L', +7577=>'L', +7578=>'L', +7579=>'L', +7580=>'L', +7581=>'L', +7582=>'L', +7583=>'L', +7584=>'L', +7585=>'L', +7586=>'L', +7587=>'L', +7588=>'L', +7589=>'L', +7590=>'L', +7591=>'L', +7592=>'L', +7593=>'L', +7594=>'L', +7595=>'L', +7596=>'L', +7597=>'L', +7598=>'L', +7599=>'L', +7600=>'L', +7601=>'L', +7602=>'L', +7603=>'L', +7604=>'L', +7605=>'L', +7606=>'L', +7607=>'L', +7608=>'L', +7609=>'L', +7610=>'L', +7611=>'L', +7612=>'L', +7613=>'L', +7614=>'L', +7615=>'L', +7616=>'NSM', +7617=>'NSM', +7618=>'NSM', +7619=>'NSM', +7620=>'NSM', +7621=>'NSM', +7622=>'NSM', +7623=>'NSM', +7624=>'NSM', +7625=>'NSM', +7626=>'NSM', +7678=>'NSM', +7679=>'NSM', +7680=>'L', +7681=>'L', +7682=>'L', +7683=>'L', +7684=>'L', +7685=>'L', +7686=>'L', +7687=>'L', +7688=>'L', +7689=>'L', +7690=>'L', +7691=>'L', +7692=>'L', +7693=>'L', +7694=>'L', +7695=>'L', +7696=>'L', +7697=>'L', +7698=>'L', +7699=>'L', +7700=>'L', +7701=>'L', +7702=>'L', +7703=>'L', +7704=>'L', +7705=>'L', +7706=>'L', +7707=>'L', +7708=>'L', +7709=>'L', +7710=>'L', +7711=>'L', +7712=>'L', +7713=>'L', +7714=>'L', +7715=>'L', +7716=>'L', +7717=>'L', +7718=>'L', +7719=>'L', +7720=>'L', +7721=>'L', +7722=>'L', +7723=>'L', +7724=>'L', +7725=>'L', +7726=>'L', +7727=>'L', +7728=>'L', +7729=>'L', +7730=>'L', +7731=>'L', +7732=>'L', +7733=>'L', +7734=>'L', +7735=>'L', +7736=>'L', +7737=>'L', +7738=>'L', +7739=>'L', +7740=>'L', +7741=>'L', +7742=>'L', +7743=>'L', +7744=>'L', +7745=>'L', +7746=>'L', +7747=>'L', +7748=>'L', +7749=>'L', +7750=>'L', +7751=>'L', +7752=>'L', +7753=>'L', +7754=>'L', +7755=>'L', +7756=>'L', +7757=>'L', +7758=>'L', +7759=>'L', +7760=>'L', +7761=>'L', +7762=>'L', +7763=>'L', +7764=>'L', +7765=>'L', +7766=>'L', +7767=>'L', +7768=>'L', +7769=>'L', +7770=>'L', +7771=>'L', +7772=>'L', +7773=>'L', +7774=>'L', +7775=>'L', +7776=>'L', +7777=>'L', +7778=>'L', +7779=>'L', +7780=>'L', +7781=>'L', +7782=>'L', +7783=>'L', +7784=>'L', +7785=>'L', +7786=>'L', +7787=>'L', +7788=>'L', +7789=>'L', +7790=>'L', +7791=>'L', +7792=>'L', +7793=>'L', +7794=>'L', +7795=>'L', +7796=>'L', +7797=>'L', +7798=>'L', +7799=>'L', +7800=>'L', +7801=>'L', +7802=>'L', +7803=>'L', +7804=>'L', +7805=>'L', +7806=>'L', +7807=>'L', +7808=>'L', +7809=>'L', +7810=>'L', +7811=>'L', +7812=>'L', +7813=>'L', +7814=>'L', +7815=>'L', +7816=>'L', +7817=>'L', +7818=>'L', +7819=>'L', +7820=>'L', +7821=>'L', +7822=>'L', +7823=>'L', +7824=>'L', +7825=>'L', +7826=>'L', +7827=>'L', +7828=>'L', +7829=>'L', +7830=>'L', +7831=>'L', +7832=>'L', +7833=>'L', +7834=>'L', +7835=>'L', +7840=>'L', +7841=>'L', +7842=>'L', +7843=>'L', +7844=>'L', +7845=>'L', +7846=>'L', +7847=>'L', +7848=>'L', +7849=>'L', +7850=>'L', +7851=>'L', +7852=>'L', +7853=>'L', +7854=>'L', +7855=>'L', +7856=>'L', +7857=>'L', +7858=>'L', +7859=>'L', +7860=>'L', +7861=>'L', +7862=>'L', +7863=>'L', +7864=>'L', +7865=>'L', +7866=>'L', +7867=>'L', +7868=>'L', +7869=>'L', +7870=>'L', +7871=>'L', +7872=>'L', +7873=>'L', +7874=>'L', +7875=>'L', +7876=>'L', +7877=>'L', +7878=>'L', +7879=>'L', +7880=>'L', +7881=>'L', +7882=>'L', +7883=>'L', +7884=>'L', +7885=>'L', +7886=>'L', +7887=>'L', +7888=>'L', +7889=>'L', +7890=>'L', +7891=>'L', +7892=>'L', +7893=>'L', +7894=>'L', +7895=>'L', +7896=>'L', +7897=>'L', +7898=>'L', +7899=>'L', +7900=>'L', +7901=>'L', +7902=>'L', +7903=>'L', +7904=>'L', +7905=>'L', +7906=>'L', +7907=>'L', +7908=>'L', +7909=>'L', +7910=>'L', +7911=>'L', +7912=>'L', +7913=>'L', +7914=>'L', +7915=>'L', +7916=>'L', +7917=>'L', +7918=>'L', +7919=>'L', +7920=>'L', +7921=>'L', +7922=>'L', +7923=>'L', +7924=>'L', +7925=>'L', +7926=>'L', +7927=>'L', +7928=>'L', +7929=>'L', +7936=>'L', +7937=>'L', +7938=>'L', +7939=>'L', +7940=>'L', +7941=>'L', +7942=>'L', +7943=>'L', +7944=>'L', +7945=>'L', +7946=>'L', +7947=>'L', +7948=>'L', +7949=>'L', +7950=>'L', +7951=>'L', +7952=>'L', +7953=>'L', +7954=>'L', +7955=>'L', +7956=>'L', +7957=>'L', +7960=>'L', +7961=>'L', +7962=>'L', +7963=>'L', +7964=>'L', +7965=>'L', +7968=>'L', +7969=>'L', +7970=>'L', +7971=>'L', +7972=>'L', +7973=>'L', +7974=>'L', +7975=>'L', +7976=>'L', +7977=>'L', +7978=>'L', +7979=>'L', +7980=>'L', +7981=>'L', +7982=>'L', +7983=>'L', +7984=>'L', +7985=>'L', +7986=>'L', +7987=>'L', +7988=>'L', +7989=>'L', +7990=>'L', +7991=>'L', +7992=>'L', +7993=>'L', +7994=>'L', +7995=>'L', +7996=>'L', +7997=>'L', +7998=>'L', +7999=>'L', +8000=>'L', +8001=>'L', +8002=>'L', +8003=>'L', +8004=>'L', +8005=>'L', +8008=>'L', +8009=>'L', +8010=>'L', +8011=>'L', +8012=>'L', +8013=>'L', +8016=>'L', +8017=>'L', +8018=>'L', +8019=>'L', +8020=>'L', +8021=>'L', +8022=>'L', +8023=>'L', +8025=>'L', +8027=>'L', +8029=>'L', +8031=>'L', +8032=>'L', +8033=>'L', +8034=>'L', +8035=>'L', +8036=>'L', +8037=>'L', +8038=>'L', +8039=>'L', +8040=>'L', +8041=>'L', +8042=>'L', +8043=>'L', +8044=>'L', +8045=>'L', +8046=>'L', +8047=>'L', +8048=>'L', +8049=>'L', +8050=>'L', +8051=>'L', +8052=>'L', +8053=>'L', +8054=>'L', +8055=>'L', +8056=>'L', +8057=>'L', +8058=>'L', +8059=>'L', +8060=>'L', +8061=>'L', +8064=>'L', +8065=>'L', +8066=>'L', +8067=>'L', +8068=>'L', +8069=>'L', +8070=>'L', +8071=>'L', +8072=>'L', +8073=>'L', +8074=>'L', +8075=>'L', +8076=>'L', +8077=>'L', +8078=>'L', +8079=>'L', +8080=>'L', +8081=>'L', +8082=>'L', +8083=>'L', +8084=>'L', +8085=>'L', +8086=>'L', +8087=>'L', +8088=>'L', +8089=>'L', +8090=>'L', +8091=>'L', +8092=>'L', +8093=>'L', +8094=>'L', +8095=>'L', +8096=>'L', +8097=>'L', +8098=>'L', +8099=>'L', +8100=>'L', +8101=>'L', +8102=>'L', +8103=>'L', +8104=>'L', +8105=>'L', +8106=>'L', +8107=>'L', +8108=>'L', +8109=>'L', +8110=>'L', +8111=>'L', +8112=>'L', +8113=>'L', +8114=>'L', +8115=>'L', +8116=>'L', +8118=>'L', +8119=>'L', +8120=>'L', +8121=>'L', +8122=>'L', +8123=>'L', +8124=>'L', +8125=>'ON', +8126=>'L', +8127=>'ON', +8128=>'ON', +8129=>'ON', +8130=>'L', +8131=>'L', +8132=>'L', +8134=>'L', +8135=>'L', +8136=>'L', +8137=>'L', +8138=>'L', +8139=>'L', +8140=>'L', +8141=>'ON', +8142=>'ON', +8143=>'ON', +8144=>'L', +8145=>'L', +8146=>'L', +8147=>'L', +8150=>'L', +8151=>'L', +8152=>'L', +8153=>'L', +8154=>'L', +8155=>'L', +8157=>'ON', +8158=>'ON', +8159=>'ON', +8160=>'L', +8161=>'L', +8162=>'L', +8163=>'L', +8164=>'L', +8165=>'L', +8166=>'L', +8167=>'L', +8168=>'L', +8169=>'L', +8170=>'L', +8171=>'L', +8172=>'L', +8173=>'ON', +8174=>'ON', +8175=>'ON', +8178=>'L', +8179=>'L', +8180=>'L', +8182=>'L', +8183=>'L', +8184=>'L', +8185=>'L', +8186=>'L', +8187=>'L', +8188=>'L', +8189=>'ON', +8190=>'ON', +8192=>'WS', +8193=>'WS', +8194=>'WS', +8195=>'WS', +8196=>'WS', +8197=>'WS', +8198=>'WS', +8199=>'WS', +8200=>'WS', +8201=>'WS', +8202=>'WS', +8203=>'BN', +8204=>'BN', +8205=>'BN', +8206=>'L', +8207=>'R', +8208=>'ON', +8209=>'ON', +8210=>'ON', +8211=>'ON', +8212=>'ON', +8213=>'ON', +8214=>'ON', +8215=>'ON', +8216=>'ON', +8217=>'ON', +8218=>'ON', +8219=>'ON', +8220=>'ON', +8221=>'ON', +8222=>'ON', +8223=>'ON', +8224=>'ON', +8225=>'ON', +8226=>'ON', +8227=>'ON', +8228=>'ON', +8229=>'ON', +8230=>'ON', +8231=>'ON', +8232=>'WS', +8233=>'B', +8234=>'LRE', +8235=>'RLE', +8236=>'PDF', +8237=>'LRO', +8238=>'RLO', +8239=>'CS', +8240=>'ET', +8241=>'ET', +8242=>'ET', +8243=>'ET', +8244=>'ET', +8245=>'ON', +8246=>'ON', +8247=>'ON', +8248=>'ON', +8249=>'ON', +8250=>'ON', +8251=>'ON', +8252=>'ON', +8253=>'ON', +8254=>'ON', +8255=>'ON', +8256=>'ON', +8257=>'ON', +8258=>'ON', +8259=>'ON', +8260=>'CS', +8261=>'ON', +8262=>'ON', +8263=>'ON', +8264=>'ON', +8265=>'ON', +8266=>'ON', +8267=>'ON', +8268=>'ON', +8269=>'ON', +8270=>'ON', +8271=>'ON', +8272=>'ON', +8273=>'ON', +8274=>'ON', +8275=>'ON', +8276=>'ON', +8277=>'ON', +8278=>'ON', +8279=>'ON', +8280=>'ON', +8281=>'ON', +8282=>'ON', +8283=>'ON', +8284=>'ON', +8285=>'ON', +8286=>'ON', +8287=>'WS', +8288=>'BN', +8289=>'BN', +8290=>'BN', +8291=>'BN', +8298=>'BN', +8299=>'BN', +8300=>'BN', +8301=>'BN', +8302=>'BN', +8303=>'BN', +8304=>'EN', +8305=>'L', +8308=>'EN', +8309=>'EN', +8310=>'EN', +8311=>'EN', +8312=>'EN', +8313=>'EN', +8314=>'ES', +8315=>'ES', +8316=>'ON', +8317=>'ON', +8318=>'ON', +8319=>'L', +8320=>'EN', +8321=>'EN', +8322=>'EN', +8323=>'EN', +8324=>'EN', +8325=>'EN', +8326=>'EN', +8327=>'EN', +8328=>'EN', +8329=>'EN', +8330=>'ES', +8331=>'ES', +8332=>'ON', +8333=>'ON', +8334=>'ON', +8336=>'L', +8337=>'L', +8338=>'L', +8339=>'L', +8340=>'L', +8352=>'ET', +8353=>'ET', +8354=>'ET', +8355=>'ET', +8356=>'ET', +8357=>'ET', +8358=>'ET', +8359=>'ET', +8360=>'ET', +8361=>'ET', +8362=>'ET', +8363=>'ET', +8364=>'ET', +8365=>'ET', +8366=>'ET', +8367=>'ET', +8368=>'ET', +8369=>'ET', +8370=>'ET', +8371=>'ET', +8372=>'ET', +8373=>'ET', +8400=>'NSM', +8401=>'NSM', +8402=>'NSM', +8403=>'NSM', +8404=>'NSM', +8405=>'NSM', +8406=>'NSM', +8407=>'NSM', +8408=>'NSM', +8409=>'NSM', +8410=>'NSM', +8411=>'NSM', +8412=>'NSM', +8413=>'NSM', +8414=>'NSM', +8415=>'NSM', +8416=>'NSM', +8417=>'NSM', +8418=>'NSM', +8419=>'NSM', +8420=>'NSM', +8421=>'NSM', +8422=>'NSM', +8423=>'NSM', +8424=>'NSM', +8425=>'NSM', +8426=>'NSM', +8427=>'NSM', +8428=>'NSM', +8429=>'NSM', +8430=>'NSM', +8431=>'NSM', +8448=>'ON', +8449=>'ON', +8450=>'L', +8451=>'ON', +8452=>'ON', +8453=>'ON', +8454=>'ON', +8455=>'L', +8456=>'ON', +8457=>'ON', +8458=>'L', +8459=>'L', +8460=>'L', +8461=>'L', +8462=>'L', +8463=>'L', +8464=>'L', +8465=>'L', +8466=>'L', +8467=>'L', +8468=>'ON', +8469=>'L', +8470=>'ON', +8471=>'ON', +8472=>'ON', +8473=>'L', +8474=>'L', +8475=>'L', +8476=>'L', +8477=>'L', +8478=>'ON', +8479=>'ON', +8480=>'ON', +8481=>'ON', +8482=>'ON', +8483=>'ON', +8484=>'L', +8485=>'ON', +8486=>'L', +8487=>'ON', +8488=>'L', +8489=>'ON', +8490=>'L', +8491=>'L', +8492=>'L', +8493=>'L', +8494=>'ET', +8495=>'L', +8496=>'L', +8497=>'L', +8498=>'L', +8499=>'L', +8500=>'L', +8501=>'L', +8502=>'L', +8503=>'L', +8504=>'L', +8505=>'L', +8506=>'ON', +8507=>'ON', +8508=>'L', +8509=>'L', +8510=>'L', +8511=>'L', +8512=>'ON', +8513=>'ON', +8514=>'ON', +8515=>'ON', +8516=>'ON', +8517=>'L', +8518=>'L', +8519=>'L', +8520=>'L', +8521=>'L', +8522=>'ON', +8523=>'ON', +8524=>'ON', +8525=>'ON', +8526=>'L', +8531=>'ON', +8532=>'ON', +8533=>'ON', +8534=>'ON', +8535=>'ON', +8536=>'ON', +8537=>'ON', +8538=>'ON', +8539=>'ON', +8540=>'ON', +8541=>'ON', +8542=>'ON', +8543=>'ON', +8544=>'L', +8545=>'L', +8546=>'L', +8547=>'L', +8548=>'L', +8549=>'L', +8550=>'L', +8551=>'L', +8552=>'L', +8553=>'L', +8554=>'L', +8555=>'L', +8556=>'L', +8557=>'L', +8558=>'L', +8559=>'L', +8560=>'L', +8561=>'L', +8562=>'L', +8563=>'L', +8564=>'L', +8565=>'L', +8566=>'L', +8567=>'L', +8568=>'L', +8569=>'L', +8570=>'L', +8571=>'L', +8572=>'L', +8573=>'L', +8574=>'L', +8575=>'L', +8576=>'L', +8577=>'L', +8578=>'L', +8579=>'L', +8580=>'L', +8592=>'ON', +8593=>'ON', +8594=>'ON', +8595=>'ON', +8596=>'ON', +8597=>'ON', +8598=>'ON', +8599=>'ON', +8600=>'ON', +8601=>'ON', +8602=>'ON', +8603=>'ON', +8604=>'ON', +8605=>'ON', +8606=>'ON', +8607=>'ON', +8608=>'ON', +8609=>'ON', +8610=>'ON', +8611=>'ON', +8612=>'ON', +8613=>'ON', +8614=>'ON', +8615=>'ON', +8616=>'ON', +8617=>'ON', +8618=>'ON', +8619=>'ON', +8620=>'ON', +8621=>'ON', +8622=>'ON', +8623=>'ON', +8624=>'ON', +8625=>'ON', +8626=>'ON', +8627=>'ON', +8628=>'ON', +8629=>'ON', +8630=>'ON', +8631=>'ON', +8632=>'ON', +8633=>'ON', +8634=>'ON', +8635=>'ON', +8636=>'ON', +8637=>'ON', +8638=>'ON', +8639=>'ON', +8640=>'ON', +8641=>'ON', +8642=>'ON', +8643=>'ON', +8644=>'ON', +8645=>'ON', +8646=>'ON', +8647=>'ON', +8648=>'ON', +8649=>'ON', +8650=>'ON', +8651=>'ON', +8652=>'ON', +8653=>'ON', +8654=>'ON', +8655=>'ON', +8656=>'ON', +8657=>'ON', +8658=>'ON', +8659=>'ON', +8660=>'ON', +8661=>'ON', +8662=>'ON', +8663=>'ON', +8664=>'ON', +8665=>'ON', +8666=>'ON', +8667=>'ON', +8668=>'ON', +8669=>'ON', +8670=>'ON', +8671=>'ON', +8672=>'ON', +8673=>'ON', +8674=>'ON', +8675=>'ON', +8676=>'ON', +8677=>'ON', +8678=>'ON', +8679=>'ON', +8680=>'ON', +8681=>'ON', +8682=>'ON', +8683=>'ON', +8684=>'ON', +8685=>'ON', +8686=>'ON', +8687=>'ON', +8688=>'ON', +8689=>'ON', +8690=>'ON', +8691=>'ON', +8692=>'ON', +8693=>'ON', +8694=>'ON', +8695=>'ON', +8696=>'ON', +8697=>'ON', +8698=>'ON', +8699=>'ON', +8700=>'ON', +8701=>'ON', +8702=>'ON', +8703=>'ON', +8704=>'ON', +8705=>'ON', +8706=>'ON', +8707=>'ON', +8708=>'ON', +8709=>'ON', +8710=>'ON', +8711=>'ON', +8712=>'ON', +8713=>'ON', +8714=>'ON', +8715=>'ON', +8716=>'ON', +8717=>'ON', +8718=>'ON', +8719=>'ON', +8720=>'ON', +8721=>'ON', +8722=>'ES', +8723=>'ET', +8724=>'ON', +8725=>'ON', +8726=>'ON', +8727=>'ON', +8728=>'ON', +8729=>'ON', +8730=>'ON', +8731=>'ON', +8732=>'ON', +8733=>'ON', +8734=>'ON', +8735=>'ON', +8736=>'ON', +8737=>'ON', +8738=>'ON', +8739=>'ON', +8740=>'ON', +8741=>'ON', +8742=>'ON', +8743=>'ON', +8744=>'ON', +8745=>'ON', +8746=>'ON', +8747=>'ON', +8748=>'ON', +8749=>'ON', +8750=>'ON', +8751=>'ON', +8752=>'ON', +8753=>'ON', +8754=>'ON', +8755=>'ON', +8756=>'ON', +8757=>'ON', +8758=>'ON', +8759=>'ON', +8760=>'ON', +8761=>'ON', +8762=>'ON', +8763=>'ON', +8764=>'ON', +8765=>'ON', +8766=>'ON', +8767=>'ON', +8768=>'ON', +8769=>'ON', +8770=>'ON', +8771=>'ON', +8772=>'ON', +8773=>'ON', +8774=>'ON', +8775=>'ON', +8776=>'ON', +8777=>'ON', +8778=>'ON', +8779=>'ON', +8780=>'ON', +8781=>'ON', +8782=>'ON', +8783=>'ON', +8784=>'ON', +8785=>'ON', +8786=>'ON', +8787=>'ON', +8788=>'ON', +8789=>'ON', +8790=>'ON', +8791=>'ON', +8792=>'ON', +8793=>'ON', +8794=>'ON', +8795=>'ON', +8796=>'ON', +8797=>'ON', +8798=>'ON', +8799=>'ON', +8800=>'ON', +8801=>'ON', +8802=>'ON', +8803=>'ON', +8804=>'ON', +8805=>'ON', +8806=>'ON', +8807=>'ON', +8808=>'ON', +8809=>'ON', +8810=>'ON', +8811=>'ON', +8812=>'ON', +8813=>'ON', +8814=>'ON', +8815=>'ON', +8816=>'ON', +8817=>'ON', +8818=>'ON', +8819=>'ON', +8820=>'ON', +8821=>'ON', +8822=>'ON', +8823=>'ON', +8824=>'ON', +8825=>'ON', +8826=>'ON', +8827=>'ON', +8828=>'ON', +8829=>'ON', +8830=>'ON', +8831=>'ON', +8832=>'ON', +8833=>'ON', +8834=>'ON', +8835=>'ON', +8836=>'ON', +8837=>'ON', +8838=>'ON', +8839=>'ON', +8840=>'ON', +8841=>'ON', +8842=>'ON', +8843=>'ON', +8844=>'ON', +8845=>'ON', +8846=>'ON', +8847=>'ON', +8848=>'ON', +8849=>'ON', +8850=>'ON', +8851=>'ON', +8852=>'ON', +8853=>'ON', +8854=>'ON', +8855=>'ON', +8856=>'ON', +8857=>'ON', +8858=>'ON', +8859=>'ON', +8860=>'ON', +8861=>'ON', +8862=>'ON', +8863=>'ON', +8864=>'ON', +8865=>'ON', +8866=>'ON', +8867=>'ON', +8868=>'ON', +8869=>'ON', +8870=>'ON', +8871=>'ON', +8872=>'ON', +8873=>'ON', +8874=>'ON', +8875=>'ON', +8876=>'ON', +8877=>'ON', +8878=>'ON', +8879=>'ON', +8880=>'ON', +8881=>'ON', +8882=>'ON', +8883=>'ON', +8884=>'ON', +8885=>'ON', +8886=>'ON', +8887=>'ON', +8888=>'ON', +8889=>'ON', +8890=>'ON', +8891=>'ON', +8892=>'ON', +8893=>'ON', +8894=>'ON', +8895=>'ON', +8896=>'ON', +8897=>'ON', +8898=>'ON', +8899=>'ON', +8900=>'ON', +8901=>'ON', +8902=>'ON', +8903=>'ON', +8904=>'ON', +8905=>'ON', +8906=>'ON', +8907=>'ON', +8908=>'ON', +8909=>'ON', +8910=>'ON', +8911=>'ON', +8912=>'ON', +8913=>'ON', +8914=>'ON', +8915=>'ON', +8916=>'ON', +8917=>'ON', +8918=>'ON', +8919=>'ON', +8920=>'ON', +8921=>'ON', +8922=>'ON', +8923=>'ON', +8924=>'ON', +8925=>'ON', +8926=>'ON', +8927=>'ON', +8928=>'ON', +8929=>'ON', +8930=>'ON', +8931=>'ON', +8932=>'ON', +8933=>'ON', +8934=>'ON', +8935=>'ON', +8936=>'ON', +8937=>'ON', +8938=>'ON', +8939=>'ON', +8940=>'ON', +8941=>'ON', +8942=>'ON', +8943=>'ON', +8944=>'ON', +8945=>'ON', +8946=>'ON', +8947=>'ON', +8948=>'ON', +8949=>'ON', +8950=>'ON', +8951=>'ON', +8952=>'ON', +8953=>'ON', +8954=>'ON', +8955=>'ON', +8956=>'ON', +8957=>'ON', +8958=>'ON', +8959=>'ON', +8960=>'ON', +8961=>'ON', +8962=>'ON', +8963=>'ON', +8964=>'ON', +8965=>'ON', +8966=>'ON', +8967=>'ON', +8968=>'ON', +8969=>'ON', +8970=>'ON', +8971=>'ON', +8972=>'ON', +8973=>'ON', +8974=>'ON', +8975=>'ON', +8976=>'ON', +8977=>'ON', +8978=>'ON', +8979=>'ON', +8980=>'ON', +8981=>'ON', +8982=>'ON', +8983=>'ON', +8984=>'ON', +8985=>'ON', +8986=>'ON', +8987=>'ON', +8988=>'ON', +8989=>'ON', +8990=>'ON', +8991=>'ON', +8992=>'ON', +8993=>'ON', +8994=>'ON', +8995=>'ON', +8996=>'ON', +8997=>'ON', +8998=>'ON', +8999=>'ON', +9000=>'ON', +9001=>'ON', +9002=>'ON', +9003=>'ON', +9004=>'ON', +9005=>'ON', +9006=>'ON', +9007=>'ON', +9008=>'ON', +9009=>'ON', +9010=>'ON', +9011=>'ON', +9012=>'ON', +9013=>'ON', +9014=>'L', +9015=>'L', +9016=>'L', +9017=>'L', +9018=>'L', +9019=>'L', +9020=>'L', +9021=>'L', +9022=>'L', +9023=>'L', +9024=>'L', +9025=>'L', +9026=>'L', +9027=>'L', +9028=>'L', +9029=>'L', +9030=>'L', +9031=>'L', +9032=>'L', +9033=>'L', +9034=>'L', +9035=>'L', +9036=>'L', +9037=>'L', +9038=>'L', +9039=>'L', +9040=>'L', +9041=>'L', +9042=>'L', +9043=>'L', +9044=>'L', +9045=>'L', +9046=>'L', +9047=>'L', +9048=>'L', +9049=>'L', +9050=>'L', +9051=>'L', +9052=>'L', +9053=>'L', +9054=>'L', +9055=>'L', +9056=>'L', +9057=>'L', +9058=>'L', +9059=>'L', +9060=>'L', +9061=>'L', +9062=>'L', +9063=>'L', +9064=>'L', +9065=>'L', +9066=>'L', +9067=>'L', +9068=>'L', +9069=>'L', +9070=>'L', +9071=>'L', +9072=>'L', +9073=>'L', +9074=>'L', +9075=>'L', +9076=>'L', +9077=>'L', +9078=>'L', +9079=>'L', +9080=>'L', +9081=>'L', +9082=>'L', +9083=>'ON', +9084=>'ON', +9085=>'ON', +9086=>'ON', +9087=>'ON', +9088=>'ON', +9089=>'ON', +9090=>'ON', +9091=>'ON', +9092=>'ON', +9093=>'ON', +9094=>'ON', +9095=>'ON', +9096=>'ON', +9097=>'ON', +9098=>'ON', +9099=>'ON', +9100=>'ON', +9101=>'ON', +9102=>'ON', +9103=>'ON', +9104=>'ON', +9105=>'ON', +9106=>'ON', +9107=>'ON', +9108=>'ON', +9109=>'L', +9110=>'ON', +9111=>'ON', +9112=>'ON', +9113=>'ON', +9114=>'ON', +9115=>'ON', +9116=>'ON', +9117=>'ON', +9118=>'ON', +9119=>'ON', +9120=>'ON', +9121=>'ON', +9122=>'ON', +9123=>'ON', +9124=>'ON', +9125=>'ON', +9126=>'ON', +9127=>'ON', +9128=>'ON', +9129=>'ON', +9130=>'ON', +9131=>'ON', +9132=>'ON', +9133=>'ON', +9134=>'ON', +9135=>'ON', +9136=>'ON', +9137=>'ON', +9138=>'ON', +9139=>'ON', +9140=>'ON', +9141=>'ON', +9142=>'ON', +9143=>'ON', +9144=>'ON', +9145=>'ON', +9146=>'ON', +9147=>'ON', +9148=>'ON', +9149=>'ON', +9150=>'ON', +9151=>'ON', +9152=>'ON', +9153=>'ON', +9154=>'ON', +9155=>'ON', +9156=>'ON', +9157=>'ON', +9158=>'ON', +9159=>'ON', +9160=>'ON', +9161=>'ON', +9162=>'ON', +9163=>'ON', +9164=>'ON', +9165=>'ON', +9166=>'ON', +9167=>'ON', +9168=>'ON', +9169=>'ON', +9170=>'ON', +9171=>'ON', +9172=>'ON', +9173=>'ON', +9174=>'ON', +9175=>'ON', +9176=>'ON', +9177=>'ON', +9178=>'ON', +9179=>'ON', +9180=>'ON', +9181=>'ON', +9182=>'ON', +9183=>'ON', +9184=>'ON', +9185=>'ON', +9186=>'ON', +9187=>'ON', +9188=>'ON', +9189=>'ON', +9190=>'ON', +9191=>'ON', +9216=>'ON', +9217=>'ON', +9218=>'ON', +9219=>'ON', +9220=>'ON', +9221=>'ON', +9222=>'ON', +9223=>'ON', +9224=>'ON', +9225=>'ON', +9226=>'ON', +9227=>'ON', +9228=>'ON', +9229=>'ON', +9230=>'ON', +9231=>'ON', +9232=>'ON', +9233=>'ON', +9234=>'ON', +9235=>'ON', +9236=>'ON', +9237=>'ON', +9238=>'ON', +9239=>'ON', +9240=>'ON', +9241=>'ON', +9242=>'ON', +9243=>'ON', +9244=>'ON', +9245=>'ON', +9246=>'ON', +9247=>'ON', +9248=>'ON', +9249=>'ON', +9250=>'ON', +9251=>'ON', +9252=>'ON', +9253=>'ON', +9254=>'ON', +9280=>'ON', +9281=>'ON', +9282=>'ON', +9283=>'ON', +9284=>'ON', +9285=>'ON', +9286=>'ON', +9287=>'ON', +9288=>'ON', +9289=>'ON', +9290=>'ON', +9312=>'ON', +9313=>'ON', +9314=>'ON', +9315=>'ON', +9316=>'ON', +9317=>'ON', +9318=>'ON', +9319=>'ON', +9320=>'ON', +9321=>'ON', +9322=>'ON', +9323=>'ON', +9324=>'ON', +9325=>'ON', +9326=>'ON', +9327=>'ON', +9328=>'ON', +9329=>'ON', +9330=>'ON', +9331=>'ON', +9332=>'ON', +9333=>'ON', +9334=>'ON', +9335=>'ON', +9336=>'ON', +9337=>'ON', +9338=>'ON', +9339=>'ON', +9340=>'ON', +9341=>'ON', +9342=>'ON', +9343=>'ON', +9344=>'ON', +9345=>'ON', +9346=>'ON', +9347=>'ON', +9348=>'ON', +9349=>'ON', +9350=>'ON', +9351=>'ON', +9352=>'EN', +9353=>'EN', +9354=>'EN', +9355=>'EN', +9356=>'EN', +9357=>'EN', +9358=>'EN', +9359=>'EN', +9360=>'EN', +9361=>'EN', +9362=>'EN', +9363=>'EN', +9364=>'EN', +9365=>'EN', +9366=>'EN', +9367=>'EN', +9368=>'EN', +9369=>'EN', +9370=>'EN', +9371=>'EN', +9372=>'L', +9373=>'L', +9374=>'L', +9375=>'L', +9376=>'L', +9377=>'L', +9378=>'L', +9379=>'L', +9380=>'L', +9381=>'L', +9382=>'L', +9383=>'L', +9384=>'L', +9385=>'L', +9386=>'L', +9387=>'L', +9388=>'L', +9389=>'L', +9390=>'L', +9391=>'L', +9392=>'L', +9393=>'L', +9394=>'L', +9395=>'L', +9396=>'L', +9397=>'L', +9398=>'L', +9399=>'L', +9400=>'L', +9401=>'L', +9402=>'L', +9403=>'L', +9404=>'L', +9405=>'L', +9406=>'L', +9407=>'L', +9408=>'L', +9409=>'L', +9410=>'L', +9411=>'L', +9412=>'L', +9413=>'L', +9414=>'L', +9415=>'L', +9416=>'L', +9417=>'L', +9418=>'L', +9419=>'L', +9420=>'L', +9421=>'L', +9422=>'L', +9423=>'L', +9424=>'L', +9425=>'L', +9426=>'L', +9427=>'L', +9428=>'L', +9429=>'L', +9430=>'L', +9431=>'L', +9432=>'L', +9433=>'L', +9434=>'L', +9435=>'L', +9436=>'L', +9437=>'L', +9438=>'L', +9439=>'L', +9440=>'L', +9441=>'L', +9442=>'L', +9443=>'L', +9444=>'L', +9445=>'L', +9446=>'L', +9447=>'L', +9448=>'L', +9449=>'L', +9450=>'ON', +9451=>'ON', +9452=>'ON', +9453=>'ON', +9454=>'ON', +9455=>'ON', +9456=>'ON', +9457=>'ON', +9458=>'ON', +9459=>'ON', +9460=>'ON', +9461=>'ON', +9462=>'ON', +9463=>'ON', +9464=>'ON', +9465=>'ON', +9466=>'ON', +9467=>'ON', +9468=>'ON', +9469=>'ON', +9470=>'ON', +9471=>'ON', +9472=>'ON', +9473=>'ON', +9474=>'ON', +9475=>'ON', +9476=>'ON', +9477=>'ON', +9478=>'ON', +9479=>'ON', +9480=>'ON', +9481=>'ON', +9482=>'ON', +9483=>'ON', +9484=>'ON', +9485=>'ON', +9486=>'ON', +9487=>'ON', +9488=>'ON', +9489=>'ON', +9490=>'ON', +9491=>'ON', +9492=>'ON', +9493=>'ON', +9494=>'ON', +9495=>'ON', +9496=>'ON', +9497=>'ON', +9498=>'ON', +9499=>'ON', +9500=>'ON', +9501=>'ON', +9502=>'ON', +9503=>'ON', +9504=>'ON', +9505=>'ON', +9506=>'ON', +9507=>'ON', +9508=>'ON', +9509=>'ON', +9510=>'ON', +9511=>'ON', +9512=>'ON', +9513=>'ON', +9514=>'ON', +9515=>'ON', +9516=>'ON', +9517=>'ON', +9518=>'ON', +9519=>'ON', +9520=>'ON', +9521=>'ON', +9522=>'ON', +9523=>'ON', +9524=>'ON', +9525=>'ON', +9526=>'ON', +9527=>'ON', +9528=>'ON', +9529=>'ON', +9530=>'ON', +9531=>'ON', +9532=>'ON', +9533=>'ON', +9534=>'ON', +9535=>'ON', +9536=>'ON', +9537=>'ON', +9538=>'ON', +9539=>'ON', +9540=>'ON', +9541=>'ON', +9542=>'ON', +9543=>'ON', +9544=>'ON', +9545=>'ON', +9546=>'ON', +9547=>'ON', +9548=>'ON', +9549=>'ON', +9550=>'ON', +9551=>'ON', +9552=>'ON', +9553=>'ON', +9554=>'ON', +9555=>'ON', +9556=>'ON', +9557=>'ON', +9558=>'ON', +9559=>'ON', +9560=>'ON', +9561=>'ON', +9562=>'ON', +9563=>'ON', +9564=>'ON', +9565=>'ON', +9566=>'ON', +9567=>'ON', +9568=>'ON', +9569=>'ON', +9570=>'ON', +9571=>'ON', +9572=>'ON', +9573=>'ON', +9574=>'ON', +9575=>'ON', +9576=>'ON', +9577=>'ON', +9578=>'ON', +9579=>'ON', +9580=>'ON', +9581=>'ON', +9582=>'ON', +9583=>'ON', +9584=>'ON', +9585=>'ON', +9586=>'ON', +9587=>'ON', +9588=>'ON', +9589=>'ON', +9590=>'ON', +9591=>'ON', +9592=>'ON', +9593=>'ON', +9594=>'ON', +9595=>'ON', +9596=>'ON', +9597=>'ON', +9598=>'ON', +9599=>'ON', +9600=>'ON', +9601=>'ON', +9602=>'ON', +9603=>'ON', +9604=>'ON', +9605=>'ON', +9606=>'ON', +9607=>'ON', +9608=>'ON', +9609=>'ON', +9610=>'ON', +9611=>'ON', +9612=>'ON', +9613=>'ON', +9614=>'ON', +9615=>'ON', +9616=>'ON', +9617=>'ON', +9618=>'ON', +9619=>'ON', +9620=>'ON', +9621=>'ON', +9622=>'ON', +9623=>'ON', +9624=>'ON', +9625=>'ON', +9626=>'ON', +9627=>'ON', +9628=>'ON', +9629=>'ON', +9630=>'ON', +9631=>'ON', +9632=>'ON', +9633=>'ON', +9634=>'ON', +9635=>'ON', +9636=>'ON', +9637=>'ON', +9638=>'ON', +9639=>'ON', +9640=>'ON', +9641=>'ON', +9642=>'ON', +9643=>'ON', +9644=>'ON', +9645=>'ON', +9646=>'ON', +9647=>'ON', +9648=>'ON', +9649=>'ON', +9650=>'ON', +9651=>'ON', +9652=>'ON', +9653=>'ON', +9654=>'ON', +9655=>'ON', +9656=>'ON', +9657=>'ON', +9658=>'ON', +9659=>'ON', +9660=>'ON', +9661=>'ON', +9662=>'ON', +9663=>'ON', +9664=>'ON', +9665=>'ON', +9666=>'ON', +9667=>'ON', +9668=>'ON', +9669=>'ON', +9670=>'ON', +9671=>'ON', +9672=>'ON', +9673=>'ON', +9674=>'ON', +9675=>'ON', +9676=>'ON', +9677=>'ON', +9678=>'ON', +9679=>'ON', +9680=>'ON', +9681=>'ON', +9682=>'ON', +9683=>'ON', +9684=>'ON', +9685=>'ON', +9686=>'ON', +9687=>'ON', +9688=>'ON', +9689=>'ON', +9690=>'ON', +9691=>'ON', +9692=>'ON', +9693=>'ON', +9694=>'ON', +9695=>'ON', +9696=>'ON', +9697=>'ON', +9698=>'ON', +9699=>'ON', +9700=>'ON', +9701=>'ON', +9702=>'ON', +9703=>'ON', +9704=>'ON', +9705=>'ON', +9706=>'ON', +9707=>'ON', +9708=>'ON', +9709=>'ON', +9710=>'ON', +9711=>'ON', +9712=>'ON', +9713=>'ON', +9714=>'ON', +9715=>'ON', +9716=>'ON', +9717=>'ON', +9718=>'ON', +9719=>'ON', +9720=>'ON', +9721=>'ON', +9722=>'ON', +9723=>'ON', +9724=>'ON', +9725=>'ON', +9726=>'ON', +9727=>'ON', +9728=>'ON', +9729=>'ON', +9730=>'ON', +9731=>'ON', +9732=>'ON', +9733=>'ON', +9734=>'ON', +9735=>'ON', +9736=>'ON', +9737=>'ON', +9738=>'ON', +9739=>'ON', +9740=>'ON', +9741=>'ON', +9742=>'ON', +9743=>'ON', +9744=>'ON', +9745=>'ON', +9746=>'ON', +9747=>'ON', +9748=>'ON', +9749=>'ON', +9750=>'ON', +9751=>'ON', +9752=>'ON', +9753=>'ON', +9754=>'ON', +9755=>'ON', +9756=>'ON', +9757=>'ON', +9758=>'ON', +9759=>'ON', +9760=>'ON', +9761=>'ON', +9762=>'ON', +9763=>'ON', +9764=>'ON', +9765=>'ON', +9766=>'ON', +9767=>'ON', +9768=>'ON', +9769=>'ON', +9770=>'ON', +9771=>'ON', +9772=>'ON', +9773=>'ON', +9774=>'ON', +9775=>'ON', +9776=>'ON', +9777=>'ON', +9778=>'ON', +9779=>'ON', +9780=>'ON', +9781=>'ON', +9782=>'ON', +9783=>'ON', +9784=>'ON', +9785=>'ON', +9786=>'ON', +9787=>'ON', +9788=>'ON', +9789=>'ON', +9790=>'ON', +9791=>'ON', +9792=>'ON', +9793=>'ON', +9794=>'ON', +9795=>'ON', +9796=>'ON', +9797=>'ON', +9798=>'ON', +9799=>'ON', +9800=>'ON', +9801=>'ON', +9802=>'ON', +9803=>'ON', +9804=>'ON', +9805=>'ON', +9806=>'ON', +9807=>'ON', +9808=>'ON', +9809=>'ON', +9810=>'ON', +9811=>'ON', +9812=>'ON', +9813=>'ON', +9814=>'ON', +9815=>'ON', +9816=>'ON', +9817=>'ON', +9818=>'ON', +9819=>'ON', +9820=>'ON', +9821=>'ON', +9822=>'ON', +9823=>'ON', +9824=>'ON', +9825=>'ON', +9826=>'ON', +9827=>'ON', +9828=>'ON', +9829=>'ON', +9830=>'ON', +9831=>'ON', +9832=>'ON', +9833=>'ON', +9834=>'ON', +9835=>'ON', +9836=>'ON', +9837=>'ON', +9838=>'ON', +9839=>'ON', +9840=>'ON', +9841=>'ON', +9842=>'ON', +9843=>'ON', +9844=>'ON', +9845=>'ON', +9846=>'ON', +9847=>'ON', +9848=>'ON', +9849=>'ON', +9850=>'ON', +9851=>'ON', +9852=>'ON', +9853=>'ON', +9854=>'ON', +9855=>'ON', +9856=>'ON', +9857=>'ON', +9858=>'ON', +9859=>'ON', +9860=>'ON', +9861=>'ON', +9862=>'ON', +9863=>'ON', +9864=>'ON', +9865=>'ON', +9866=>'ON', +9867=>'ON', +9868=>'ON', +9869=>'ON', +9870=>'ON', +9871=>'ON', +9872=>'ON', +9873=>'ON', +9874=>'ON', +9875=>'ON', +9876=>'ON', +9877=>'ON', +9878=>'ON', +9879=>'ON', +9880=>'ON', +9881=>'ON', +9882=>'ON', +9883=>'ON', +9884=>'ON', +9888=>'ON', +9889=>'ON', +9890=>'ON', +9891=>'ON', +9892=>'ON', +9893=>'ON', +9894=>'ON', +9895=>'ON', +9896=>'ON', +9897=>'ON', +9898=>'ON', +9899=>'ON', +9900=>'L', +9901=>'ON', +9902=>'ON', +9903=>'ON', +9904=>'ON', +9905=>'ON', +9906=>'ON', +9985=>'ON', +9986=>'ON', +9987=>'ON', +9988=>'ON', +9990=>'ON', +9991=>'ON', +9992=>'ON', +9993=>'ON', +9996=>'ON', +9997=>'ON', +9998=>'ON', +9999=>'ON', +10000=>'ON', +10001=>'ON', +10002=>'ON', +10003=>'ON', +10004=>'ON', +10005=>'ON', +10006=>'ON', +10007=>'ON', +10008=>'ON', +10009=>'ON', +10010=>'ON', +10011=>'ON', +10012=>'ON', +10013=>'ON', +10014=>'ON', +10015=>'ON', +10016=>'ON', +10017=>'ON', +10018=>'ON', +10019=>'ON', +10020=>'ON', +10021=>'ON', +10022=>'ON', +10023=>'ON', +10025=>'ON', +10026=>'ON', +10027=>'ON', +10028=>'ON', +10029=>'ON', +10030=>'ON', +10031=>'ON', +10032=>'ON', +10033=>'ON', +10034=>'ON', +10035=>'ON', +10036=>'ON', +10037=>'ON', +10038=>'ON', +10039=>'ON', +10040=>'ON', +10041=>'ON', +10042=>'ON', +10043=>'ON', +10044=>'ON', +10045=>'ON', +10046=>'ON', +10047=>'ON', +10048=>'ON', +10049=>'ON', +10050=>'ON', +10051=>'ON', +10052=>'ON', +10053=>'ON', +10054=>'ON', +10055=>'ON', +10056=>'ON', +10057=>'ON', +10058=>'ON', +10059=>'ON', +10061=>'ON', +10063=>'ON', +10064=>'ON', +10065=>'ON', +10066=>'ON', +10070=>'ON', +10072=>'ON', +10073=>'ON', +10074=>'ON', +10075=>'ON', +10076=>'ON', +10077=>'ON', +10078=>'ON', +10081=>'ON', +10082=>'ON', +10083=>'ON', +10084=>'ON', +10085=>'ON', +10086=>'ON', +10087=>'ON', +10088=>'ON', +10089=>'ON', +10090=>'ON', +10091=>'ON', +10092=>'ON', +10093=>'ON', +10094=>'ON', +10095=>'ON', +10096=>'ON', +10097=>'ON', +10098=>'ON', +10099=>'ON', +10100=>'ON', +10101=>'ON', +10102=>'ON', +10103=>'ON', +10104=>'ON', +10105=>'ON', +10106=>'ON', +10107=>'ON', +10108=>'ON', +10109=>'ON', +10110=>'ON', +10111=>'ON', +10112=>'ON', +10113=>'ON', +10114=>'ON', +10115=>'ON', +10116=>'ON', +10117=>'ON', +10118=>'ON', +10119=>'ON', +10120=>'ON', +10121=>'ON', +10122=>'ON', +10123=>'ON', +10124=>'ON', +10125=>'ON', +10126=>'ON', +10127=>'ON', +10128=>'ON', +10129=>'ON', +10130=>'ON', +10131=>'ON', +10132=>'ON', +10136=>'ON', +10137=>'ON', +10138=>'ON', +10139=>'ON', +10140=>'ON', +10141=>'ON', +10142=>'ON', +10143=>'ON', +10144=>'ON', +10145=>'ON', +10146=>'ON', +10147=>'ON', +10148=>'ON', +10149=>'ON', +10150=>'ON', +10151=>'ON', +10152=>'ON', +10153=>'ON', +10154=>'ON', +10155=>'ON', +10156=>'ON', +10157=>'ON', +10158=>'ON', +10159=>'ON', +10161=>'ON', +10162=>'ON', +10163=>'ON', +10164=>'ON', +10165=>'ON', +10166=>'ON', +10167=>'ON', +10168=>'ON', +10169=>'ON', +10170=>'ON', +10171=>'ON', +10172=>'ON', +10173=>'ON', +10174=>'ON', +10176=>'ON', +10177=>'ON', +10178=>'ON', +10179=>'ON', +10180=>'ON', +10181=>'ON', +10182=>'ON', +10183=>'ON', +10184=>'ON', +10185=>'ON', +10186=>'ON', +10192=>'ON', +10193=>'ON', +10194=>'ON', +10195=>'ON', +10196=>'ON', +10197=>'ON', +10198=>'ON', +10199=>'ON', +10200=>'ON', +10201=>'ON', +10202=>'ON', +10203=>'ON', +10204=>'ON', +10205=>'ON', +10206=>'ON', +10207=>'ON', +10208=>'ON', +10209=>'ON', +10210=>'ON', +10211=>'ON', +10212=>'ON', +10213=>'ON', +10214=>'ON', +10215=>'ON', +10216=>'ON', +10217=>'ON', +10218=>'ON', +10219=>'ON', +10224=>'ON', +10225=>'ON', +10226=>'ON', +10227=>'ON', +10228=>'ON', +10229=>'ON', +10230=>'ON', +10231=>'ON', +10232=>'ON', +10233=>'ON', +10234=>'ON', +10235=>'ON', +10236=>'ON', +10237=>'ON', +10238=>'ON', +10239=>'ON', +10240=>'L', +10241=>'L', +10242=>'L', +10243=>'L', +10244=>'L', +10245=>'L', +10246=>'L', +10247=>'L', +10248=>'L', +10249=>'L', +10250=>'L', +10251=>'L', +10252=>'L', +10253=>'L', +10254=>'L', +10255=>'L', +10256=>'L', +10257=>'L', +10258=>'L', +10259=>'L', +10260=>'L', +10261=>'L', +10262=>'L', +10263=>'L', +10264=>'L', +10265=>'L', +10266=>'L', +10267=>'L', +10268=>'L', +10269=>'L', +10270=>'L', +10271=>'L', +10272=>'L', +10273=>'L', +10274=>'L', +10275=>'L', +10276=>'L', +10277=>'L', +10278=>'L', +10279=>'L', +10280=>'L', +10281=>'L', +10282=>'L', +10283=>'L', +10284=>'L', +10285=>'L', +10286=>'L', +10287=>'L', +10288=>'L', +10289=>'L', +10290=>'L', +10291=>'L', +10292=>'L', +10293=>'L', +10294=>'L', +10295=>'L', +10296=>'L', +10297=>'L', +10298=>'L', +10299=>'L', +10300=>'L', +10301=>'L', +10302=>'L', +10303=>'L', +10304=>'L', +10305=>'L', +10306=>'L', +10307=>'L', +10308=>'L', +10309=>'L', +10310=>'L', +10311=>'L', +10312=>'L', +10313=>'L', +10314=>'L', +10315=>'L', +10316=>'L', +10317=>'L', +10318=>'L', +10319=>'L', +10320=>'L', +10321=>'L', +10322=>'L', +10323=>'L', +10324=>'L', +10325=>'L', +10326=>'L', +10327=>'L', +10328=>'L', +10329=>'L', +10330=>'L', +10331=>'L', +10332=>'L', +10333=>'L', +10334=>'L', +10335=>'L', +10336=>'L', +10337=>'L', +10338=>'L', +10339=>'L', +10340=>'L', +10341=>'L', +10342=>'L', +10343=>'L', +10344=>'L', +10345=>'L', +10346=>'L', +10347=>'L', +10348=>'L', +10349=>'L', +10350=>'L', +10351=>'L', +10352=>'L', +10353=>'L', +10354=>'L', +10355=>'L', +10356=>'L', +10357=>'L', +10358=>'L', +10359=>'L', +10360=>'L', +10361=>'L', +10362=>'L', +10363=>'L', +10364=>'L', +10365=>'L', +10366=>'L', +10367=>'L', +10368=>'L', +10369=>'L', +10370=>'L', +10371=>'L', +10372=>'L', +10373=>'L', +10374=>'L', +10375=>'L', +10376=>'L', +10377=>'L', +10378=>'L', +10379=>'L', +10380=>'L', +10381=>'L', +10382=>'L', +10383=>'L', +10384=>'L', +10385=>'L', +10386=>'L', +10387=>'L', +10388=>'L', +10389=>'L', +10390=>'L', +10391=>'L', +10392=>'L', +10393=>'L', +10394=>'L', +10395=>'L', +10396=>'L', +10397=>'L', +10398=>'L', +10399=>'L', +10400=>'L', +10401=>'L', +10402=>'L', +10403=>'L', +10404=>'L', +10405=>'L', +10406=>'L', +10407=>'L', +10408=>'L', +10409=>'L', +10410=>'L', +10411=>'L', +10412=>'L', +10413=>'L', +10414=>'L', +10415=>'L', +10416=>'L', +10417=>'L', +10418=>'L', +10419=>'L', +10420=>'L', +10421=>'L', +10422=>'L', +10423=>'L', +10424=>'L', +10425=>'L', +10426=>'L', +10427=>'L', +10428=>'L', +10429=>'L', +10430=>'L', +10431=>'L', +10432=>'L', +10433=>'L', +10434=>'L', +10435=>'L', +10436=>'L', +10437=>'L', +10438=>'L', +10439=>'L', +10440=>'L', +10441=>'L', +10442=>'L', +10443=>'L', +10444=>'L', +10445=>'L', +10446=>'L', +10447=>'L', +10448=>'L', +10449=>'L', +10450=>'L', +10451=>'L', +10452=>'L', +10453=>'L', +10454=>'L', +10455=>'L', +10456=>'L', +10457=>'L', +10458=>'L', +10459=>'L', +10460=>'L', +10461=>'L', +10462=>'L', +10463=>'L', +10464=>'L', +10465=>'L', +10466=>'L', +10467=>'L', +10468=>'L', +10469=>'L', +10470=>'L', +10471=>'L', +10472=>'L', +10473=>'L', +10474=>'L', +10475=>'L', +10476=>'L', +10477=>'L', +10478=>'L', +10479=>'L', +10480=>'L', +10481=>'L', +10482=>'L', +10483=>'L', +10484=>'L', +10485=>'L', +10486=>'L', +10487=>'L', +10488=>'L', +10489=>'L', +10490=>'L', +10491=>'L', +10492=>'L', +10493=>'L', +10494=>'L', +10495=>'L', +10496=>'ON', +10497=>'ON', +10498=>'ON', +10499=>'ON', +10500=>'ON', +10501=>'ON', +10502=>'ON', +10503=>'ON', +10504=>'ON', +10505=>'ON', +10506=>'ON', +10507=>'ON', +10508=>'ON', +10509=>'ON', +10510=>'ON', +10511=>'ON', +10512=>'ON', +10513=>'ON', +10514=>'ON', +10515=>'ON', +10516=>'ON', +10517=>'ON', +10518=>'ON', +10519=>'ON', +10520=>'ON', +10521=>'ON', +10522=>'ON', +10523=>'ON', +10524=>'ON', +10525=>'ON', +10526=>'ON', +10527=>'ON', +10528=>'ON', +10529=>'ON', +10530=>'ON', +10531=>'ON', +10532=>'ON', +10533=>'ON', +10534=>'ON', +10535=>'ON', +10536=>'ON', +10537=>'ON', +10538=>'ON', +10539=>'ON', +10540=>'ON', +10541=>'ON', +10542=>'ON', +10543=>'ON', +10544=>'ON', +10545=>'ON', +10546=>'ON', +10547=>'ON', +10548=>'ON', +10549=>'ON', +10550=>'ON', +10551=>'ON', +10552=>'ON', +10553=>'ON', +10554=>'ON', +10555=>'ON', +10556=>'ON', +10557=>'ON', +10558=>'ON', +10559=>'ON', +10560=>'ON', +10561=>'ON', +10562=>'ON', +10563=>'ON', +10564=>'ON', +10565=>'ON', +10566=>'ON', +10567=>'ON', +10568=>'ON', +10569=>'ON', +10570=>'ON', +10571=>'ON', +10572=>'ON', +10573=>'ON', +10574=>'ON', +10575=>'ON', +10576=>'ON', +10577=>'ON', +10578=>'ON', +10579=>'ON', +10580=>'ON', +10581=>'ON', +10582=>'ON', +10583=>'ON', +10584=>'ON', +10585=>'ON', +10586=>'ON', +10587=>'ON', +10588=>'ON', +10589=>'ON', +10590=>'ON', +10591=>'ON', +10592=>'ON', +10593=>'ON', +10594=>'ON', +10595=>'ON', +10596=>'ON', +10597=>'ON', +10598=>'ON', +10599=>'ON', +10600=>'ON', +10601=>'ON', +10602=>'ON', +10603=>'ON', +10604=>'ON', +10605=>'ON', +10606=>'ON', +10607=>'ON', +10608=>'ON', +10609=>'ON', +10610=>'ON', +10611=>'ON', +10612=>'ON', +10613=>'ON', +10614=>'ON', +10615=>'ON', +10616=>'ON', +10617=>'ON', +10618=>'ON', +10619=>'ON', +10620=>'ON', +10621=>'ON', +10622=>'ON', +10623=>'ON', +10624=>'ON', +10625=>'ON', +10626=>'ON', +10627=>'ON', +10628=>'ON', +10629=>'ON', +10630=>'ON', +10631=>'ON', +10632=>'ON', +10633=>'ON', +10634=>'ON', +10635=>'ON', +10636=>'ON', +10637=>'ON', +10638=>'ON', +10639=>'ON', +10640=>'ON', +10641=>'ON', +10642=>'ON', +10643=>'ON', +10644=>'ON', +10645=>'ON', +10646=>'ON', +10647=>'ON', +10648=>'ON', +10649=>'ON', +10650=>'ON', +10651=>'ON', +10652=>'ON', +10653=>'ON', +10654=>'ON', +10655=>'ON', +10656=>'ON', +10657=>'ON', +10658=>'ON', +10659=>'ON', +10660=>'ON', +10661=>'ON', +10662=>'ON', +10663=>'ON', +10664=>'ON', +10665=>'ON', +10666=>'ON', +10667=>'ON', +10668=>'ON', +10669=>'ON', +10670=>'ON', +10671=>'ON', +10672=>'ON', +10673=>'ON', +10674=>'ON', +10675=>'ON', +10676=>'ON', +10677=>'ON', +10678=>'ON', +10679=>'ON', +10680=>'ON', +10681=>'ON', +10682=>'ON', +10683=>'ON', +10684=>'ON', +10685=>'ON', +10686=>'ON', +10687=>'ON', +10688=>'ON', +10689=>'ON', +10690=>'ON', +10691=>'ON', +10692=>'ON', +10693=>'ON', +10694=>'ON', +10695=>'ON', +10696=>'ON', +10697=>'ON', +10698=>'ON', +10699=>'ON', +10700=>'ON', +10701=>'ON', +10702=>'ON', +10703=>'ON', +10704=>'ON', +10705=>'ON', +10706=>'ON', +10707=>'ON', +10708=>'ON', +10709=>'ON', +10710=>'ON', +10711=>'ON', +10712=>'ON', +10713=>'ON', +10714=>'ON', +10715=>'ON', +10716=>'ON', +10717=>'ON', +10718=>'ON', +10719=>'ON', +10720=>'ON', +10721=>'ON', +10722=>'ON', +10723=>'ON', +10724=>'ON', +10725=>'ON', +10726=>'ON', +10727=>'ON', +10728=>'ON', +10729=>'ON', +10730=>'ON', +10731=>'ON', +10732=>'ON', +10733=>'ON', +10734=>'ON', +10735=>'ON', +10736=>'ON', +10737=>'ON', +10738=>'ON', +10739=>'ON', +10740=>'ON', +10741=>'ON', +10742=>'ON', +10743=>'ON', +10744=>'ON', +10745=>'ON', +10746=>'ON', +10747=>'ON', +10748=>'ON', +10749=>'ON', +10750=>'ON', +10751=>'ON', +10752=>'ON', +10753=>'ON', +10754=>'ON', +10755=>'ON', +10756=>'ON', +10757=>'ON', +10758=>'ON', +10759=>'ON', +10760=>'ON', +10761=>'ON', +10762=>'ON', +10763=>'ON', +10764=>'ON', +10765=>'ON', +10766=>'ON', +10767=>'ON', +10768=>'ON', +10769=>'ON', +10770=>'ON', +10771=>'ON', +10772=>'ON', +10773=>'ON', +10774=>'ON', +10775=>'ON', +10776=>'ON', +10777=>'ON', +10778=>'ON', +10779=>'ON', +10780=>'ON', +10781=>'ON', +10782=>'ON', +10783=>'ON', +10784=>'ON', +10785=>'ON', +10786=>'ON', +10787=>'ON', +10788=>'ON', +10789=>'ON', +10790=>'ON', +10791=>'ON', +10792=>'ON', +10793=>'ON', +10794=>'ON', +10795=>'ON', +10796=>'ON', +10797=>'ON', +10798=>'ON', +10799=>'ON', +10800=>'ON', +10801=>'ON', +10802=>'ON', +10803=>'ON', +10804=>'ON', +10805=>'ON', +10806=>'ON', +10807=>'ON', +10808=>'ON', +10809=>'ON', +10810=>'ON', +10811=>'ON', +10812=>'ON', +10813=>'ON', +10814=>'ON', +10815=>'ON', +10816=>'ON', +10817=>'ON', +10818=>'ON', +10819=>'ON', +10820=>'ON', +10821=>'ON', +10822=>'ON', +10823=>'ON', +10824=>'ON', +10825=>'ON', +10826=>'ON', +10827=>'ON', +10828=>'ON', +10829=>'ON', +10830=>'ON', +10831=>'ON', +10832=>'ON', +10833=>'ON', +10834=>'ON', +10835=>'ON', +10836=>'ON', +10837=>'ON', +10838=>'ON', +10839=>'ON', +10840=>'ON', +10841=>'ON', +10842=>'ON', +10843=>'ON', +10844=>'ON', +10845=>'ON', +10846=>'ON', +10847=>'ON', +10848=>'ON', +10849=>'ON', +10850=>'ON', +10851=>'ON', +10852=>'ON', +10853=>'ON', +10854=>'ON', +10855=>'ON', +10856=>'ON', +10857=>'ON', +10858=>'ON', +10859=>'ON', +10860=>'ON', +10861=>'ON', +10862=>'ON', +10863=>'ON', +10864=>'ON', +10865=>'ON', +10866=>'ON', +10867=>'ON', +10868=>'ON', +10869=>'ON', +10870=>'ON', +10871=>'ON', +10872=>'ON', +10873=>'ON', +10874=>'ON', +10875=>'ON', +10876=>'ON', +10877=>'ON', +10878=>'ON', +10879=>'ON', +10880=>'ON', +10881=>'ON', +10882=>'ON', +10883=>'ON', +10884=>'ON', +10885=>'ON', +10886=>'ON', +10887=>'ON', +10888=>'ON', +10889=>'ON', +10890=>'ON', +10891=>'ON', +10892=>'ON', +10893=>'ON', +10894=>'ON', +10895=>'ON', +10896=>'ON', +10897=>'ON', +10898=>'ON', +10899=>'ON', +10900=>'ON', +10901=>'ON', +10902=>'ON', +10903=>'ON', +10904=>'ON', +10905=>'ON', +10906=>'ON', +10907=>'ON', +10908=>'ON', +10909=>'ON', +10910=>'ON', +10911=>'ON', +10912=>'ON', +10913=>'ON', +10914=>'ON', +10915=>'ON', +10916=>'ON', +10917=>'ON', +10918=>'ON', +10919=>'ON', +10920=>'ON', +10921=>'ON', +10922=>'ON', +10923=>'ON', +10924=>'ON', +10925=>'ON', +10926=>'ON', +10927=>'ON', +10928=>'ON', +10929=>'ON', +10930=>'ON', +10931=>'ON', +10932=>'ON', +10933=>'ON', +10934=>'ON', +10935=>'ON', +10936=>'ON', +10937=>'ON', +10938=>'ON', +10939=>'ON', +10940=>'ON', +10941=>'ON', +10942=>'ON', +10943=>'ON', +10944=>'ON', +10945=>'ON', +10946=>'ON', +10947=>'ON', +10948=>'ON', +10949=>'ON', +10950=>'ON', +10951=>'ON', +10952=>'ON', +10953=>'ON', +10954=>'ON', +10955=>'ON', +10956=>'ON', +10957=>'ON', +10958=>'ON', +10959=>'ON', +10960=>'ON', +10961=>'ON', +10962=>'ON', +10963=>'ON', +10964=>'ON', +10965=>'ON', +10966=>'ON', +10967=>'ON', +10968=>'ON', +10969=>'ON', +10970=>'ON', +10971=>'ON', +10972=>'ON', +10973=>'ON', +10974=>'ON', +10975=>'ON', +10976=>'ON', +10977=>'ON', +10978=>'ON', +10979=>'ON', +10980=>'ON', +10981=>'ON', +10982=>'ON', +10983=>'ON', +10984=>'ON', +10985=>'ON', +10986=>'ON', +10987=>'ON', +10988=>'ON', +10989=>'ON', +10990=>'ON', +10991=>'ON', +10992=>'ON', +10993=>'ON', +10994=>'ON', +10995=>'ON', +10996=>'ON', +10997=>'ON', +10998=>'ON', +10999=>'ON', +11000=>'ON', +11001=>'ON', +11002=>'ON', +11003=>'ON', +11004=>'ON', +11005=>'ON', +11006=>'ON', +11007=>'ON', +11008=>'ON', +11009=>'ON', +11010=>'ON', +11011=>'ON', +11012=>'ON', +11013=>'ON', +11014=>'ON', +11015=>'ON', +11016=>'ON', +11017=>'ON', +11018=>'ON', +11019=>'ON', +11020=>'ON', +11021=>'ON', +11022=>'ON', +11023=>'ON', +11024=>'ON', +11025=>'ON', +11026=>'ON', +11027=>'ON', +11028=>'ON', +11029=>'ON', +11030=>'ON', +11031=>'ON', +11032=>'ON', +11033=>'ON', +11034=>'ON', +11040=>'ON', +11041=>'ON', +11042=>'ON', +11043=>'ON', +11264=>'L', +11265=>'L', +11266=>'L', +11267=>'L', +11268=>'L', +11269=>'L', +11270=>'L', +11271=>'L', +11272=>'L', +11273=>'L', +11274=>'L', +11275=>'L', +11276=>'L', +11277=>'L', +11278=>'L', +11279=>'L', +11280=>'L', +11281=>'L', +11282=>'L', +11283=>'L', +11284=>'L', +11285=>'L', +11286=>'L', +11287=>'L', +11288=>'L', +11289=>'L', +11290=>'L', +11291=>'L', +11292=>'L', +11293=>'L', +11294=>'L', +11295=>'L', +11296=>'L', +11297=>'L', +11298=>'L', +11299=>'L', +11300=>'L', +11301=>'L', +11302=>'L', +11303=>'L', +11304=>'L', +11305=>'L', +11306=>'L', +11307=>'L', +11308=>'L', +11309=>'L', +11310=>'L', +11312=>'L', +11313=>'L', +11314=>'L', +11315=>'L', +11316=>'L', +11317=>'L', +11318=>'L', +11319=>'L', +11320=>'L', +11321=>'L', +11322=>'L', +11323=>'L', +11324=>'L', +11325=>'L', +11326=>'L', +11327=>'L', +11328=>'L', +11329=>'L', +11330=>'L', +11331=>'L', +11332=>'L', +11333=>'L', +11334=>'L', +11335=>'L', +11336=>'L', +11337=>'L', +11338=>'L', +11339=>'L', +11340=>'L', +11341=>'L', +11342=>'L', +11343=>'L', +11344=>'L', +11345=>'L', +11346=>'L', +11347=>'L', +11348=>'L', +11349=>'L', +11350=>'L', +11351=>'L', +11352=>'L', +11353=>'L', +11354=>'L', +11355=>'L', +11356=>'L', +11357=>'L', +11358=>'L', +11360=>'L', +11361=>'L', +11362=>'L', +11363=>'L', +11364=>'L', +11365=>'L', +11366=>'L', +11367=>'L', +11368=>'L', +11369=>'L', +11370=>'L', +11371=>'L', +11372=>'L', +11380=>'L', +11381=>'L', +11382=>'L', +11383=>'L', +11392=>'L', +11393=>'L', +11394=>'L', +11395=>'L', +11396=>'L', +11397=>'L', +11398=>'L', +11399=>'L', +11400=>'L', +11401=>'L', +11402=>'L', +11403=>'L', +11404=>'L', +11405=>'L', +11406=>'L', +11407=>'L', +11408=>'L', +11409=>'L', +11410=>'L', +11411=>'L', +11412=>'L', +11413=>'L', +11414=>'L', +11415=>'L', +11416=>'L', +11417=>'L', +11418=>'L', +11419=>'L', +11420=>'L', +11421=>'L', +11422=>'L', +11423=>'L', +11424=>'L', +11425=>'L', +11426=>'L', +11427=>'L', +11428=>'L', +11429=>'L', +11430=>'L', +11431=>'L', +11432=>'L', +11433=>'L', +11434=>'L', +11435=>'L', +11436=>'L', +11437=>'L', +11438=>'L', +11439=>'L', +11440=>'L', +11441=>'L', +11442=>'L', +11443=>'L', +11444=>'L', +11445=>'L', +11446=>'L', +11447=>'L', +11448=>'L', +11449=>'L', +11450=>'L', +11451=>'L', +11452=>'L', +11453=>'L', +11454=>'L', +11455=>'L', +11456=>'L', +11457=>'L', +11458=>'L', +11459=>'L', +11460=>'L', +11461=>'L', +11462=>'L', +11463=>'L', +11464=>'L', +11465=>'L', +11466=>'L', +11467=>'L', +11468=>'L', +11469=>'L', +11470=>'L', +11471=>'L', +11472=>'L', +11473=>'L', +11474=>'L', +11475=>'L', +11476=>'L', +11477=>'L', +11478=>'L', +11479=>'L', +11480=>'L', +11481=>'L', +11482=>'L', +11483=>'L', +11484=>'L', +11485=>'L', +11486=>'L', +11487=>'L', +11488=>'L', +11489=>'L', +11490=>'L', +11491=>'L', +11492=>'L', +11493=>'ON', +11494=>'ON', +11495=>'ON', +11496=>'ON', +11497=>'ON', +11498=>'ON', +11513=>'ON', +11514=>'ON', +11515=>'ON', +11516=>'ON', +11517=>'ON', +11518=>'ON', +11519=>'ON', +11520=>'L', +11521=>'L', +11522=>'L', +11523=>'L', +11524=>'L', +11525=>'L', +11526=>'L', +11527=>'L', +11528=>'L', +11529=>'L', +11530=>'L', +11531=>'L', +11532=>'L', +11533=>'L', +11534=>'L', +11535=>'L', +11536=>'L', +11537=>'L', +11538=>'L', +11539=>'L', +11540=>'L', +11541=>'L', +11542=>'L', +11543=>'L', +11544=>'L', +11545=>'L', +11546=>'L', +11547=>'L', +11548=>'L', +11549=>'L', +11550=>'L', +11551=>'L', +11552=>'L', +11553=>'L', +11554=>'L', +11555=>'L', +11556=>'L', +11557=>'L', +11568=>'L', +11569=>'L', +11570=>'L', +11571=>'L', +11572=>'L', +11573=>'L', +11574=>'L', +11575=>'L', +11576=>'L', +11577=>'L', +11578=>'L', +11579=>'L', +11580=>'L', +11581=>'L', +11582=>'L', +11583=>'L', +11584=>'L', +11585=>'L', +11586=>'L', +11587=>'L', +11588=>'L', +11589=>'L', +11590=>'L', +11591=>'L', +11592=>'L', +11593=>'L', +11594=>'L', +11595=>'L', +11596=>'L', +11597=>'L', +11598=>'L', +11599=>'L', +11600=>'L', +11601=>'L', +11602=>'L', +11603=>'L', +11604=>'L', +11605=>'L', +11606=>'L', +11607=>'L', +11608=>'L', +11609=>'L', +11610=>'L', +11611=>'L', +11612=>'L', +11613=>'L', +11614=>'L', +11615=>'L', +11616=>'L', +11617=>'L', +11618=>'L', +11619=>'L', +11620=>'L', +11621=>'L', +11631=>'L', +11648=>'L', +11649=>'L', +11650=>'L', +11651=>'L', +11652=>'L', +11653=>'L', +11654=>'L', +11655=>'L', +11656=>'L', +11657=>'L', +11658=>'L', +11659=>'L', +11660=>'L', +11661=>'L', +11662=>'L', +11663=>'L', +11664=>'L', +11665=>'L', +11666=>'L', +11667=>'L', +11668=>'L', +11669=>'L', +11670=>'L', +11680=>'L', +11681=>'L', +11682=>'L', +11683=>'L', +11684=>'L', +11685=>'L', +11686=>'L', +11688=>'L', +11689=>'L', +11690=>'L', +11691=>'L', +11692=>'L', +11693=>'L', +11694=>'L', +11696=>'L', +11697=>'L', +11698=>'L', +11699=>'L', +11700=>'L', +11701=>'L', +11702=>'L', +11704=>'L', +11705=>'L', +11706=>'L', +11707=>'L', +11708=>'L', +11709=>'L', +11710=>'L', +11712=>'L', +11713=>'L', +11714=>'L', +11715=>'L', +11716=>'L', +11717=>'L', +11718=>'L', +11720=>'L', +11721=>'L', +11722=>'L', +11723=>'L', +11724=>'L', +11725=>'L', +11726=>'L', +11728=>'L', +11729=>'L', +11730=>'L', +11731=>'L', +11732=>'L', +11733=>'L', +11734=>'L', +11736=>'L', +11737=>'L', +11738=>'L', +11739=>'L', +11740=>'L', +11741=>'L', +11742=>'L', +11776=>'ON', +11777=>'ON', +11778=>'ON', +11779=>'ON', +11780=>'ON', +11781=>'ON', +11782=>'ON', +11783=>'ON', +11784=>'ON', +11785=>'ON', +11786=>'ON', +11787=>'ON', +11788=>'ON', +11789=>'ON', +11790=>'ON', +11791=>'ON', +11792=>'ON', +11793=>'ON', +11794=>'ON', +11795=>'ON', +11796=>'ON', +11797=>'ON', +11798=>'ON', +11799=>'ON', +11804=>'ON', +11805=>'ON', +11904=>'ON', +11905=>'ON', +11906=>'ON', +11907=>'ON', +11908=>'ON', +11909=>'ON', +11910=>'ON', +11911=>'ON', +11912=>'ON', +11913=>'ON', +11914=>'ON', +11915=>'ON', +11916=>'ON', +11917=>'ON', +11918=>'ON', +11919=>'ON', +11920=>'ON', +11921=>'ON', +11922=>'ON', +11923=>'ON', +11924=>'ON', +11925=>'ON', +11926=>'ON', +11927=>'ON', +11928=>'ON', +11929=>'ON', +11931=>'ON', +11932=>'ON', +11933=>'ON', +11934=>'ON', +11935=>'ON', +11936=>'ON', +11937=>'ON', +11938=>'ON', +11939=>'ON', +11940=>'ON', +11941=>'ON', +11942=>'ON', +11943=>'ON', +11944=>'ON', +11945=>'ON', +11946=>'ON', +11947=>'ON', +11948=>'ON', +11949=>'ON', +11950=>'ON', +11951=>'ON', +11952=>'ON', +11953=>'ON', +11954=>'ON', +11955=>'ON', +11956=>'ON', +11957=>'ON', +11958=>'ON', +11959=>'ON', +11960=>'ON', +11961=>'ON', +11962=>'ON', +11963=>'ON', +11964=>'ON', +11965=>'ON', +11966=>'ON', +11967=>'ON', +11968=>'ON', +11969=>'ON', +11970=>'ON', +11971=>'ON', +11972=>'ON', +11973=>'ON', +11974=>'ON', +11975=>'ON', +11976=>'ON', +11977=>'ON', +11978=>'ON', +11979=>'ON', +11980=>'ON', +11981=>'ON', +11982=>'ON', +11983=>'ON', +11984=>'ON', +11985=>'ON', +11986=>'ON', +11987=>'ON', +11988=>'ON', +11989=>'ON', +11990=>'ON', +11991=>'ON', +11992=>'ON', +11993=>'ON', +11994=>'ON', +11995=>'ON', +11996=>'ON', +11997=>'ON', +11998=>'ON', +11999=>'ON', +12000=>'ON', +12001=>'ON', +12002=>'ON', +12003=>'ON', +12004=>'ON', +12005=>'ON', +12006=>'ON', +12007=>'ON', +12008=>'ON', +12009=>'ON', +12010=>'ON', +12011=>'ON', +12012=>'ON', +12013=>'ON', +12014=>'ON', +12015=>'ON', +12016=>'ON', +12017=>'ON', +12018=>'ON', +12019=>'ON', +12032=>'ON', +12033=>'ON', +12034=>'ON', +12035=>'ON', +12036=>'ON', +12037=>'ON', +12038=>'ON', +12039=>'ON', +12040=>'ON', +12041=>'ON', +12042=>'ON', +12043=>'ON', +12044=>'ON', +12045=>'ON', +12046=>'ON', +12047=>'ON', +12048=>'ON', +12049=>'ON', +12050=>'ON', +12051=>'ON', +12052=>'ON', +12053=>'ON', +12054=>'ON', +12055=>'ON', +12056=>'ON', +12057=>'ON', +12058=>'ON', +12059=>'ON', +12060=>'ON', +12061=>'ON', +12062=>'ON', +12063=>'ON', +12064=>'ON', +12065=>'ON', +12066=>'ON', +12067=>'ON', +12068=>'ON', +12069=>'ON', +12070=>'ON', +12071=>'ON', +12072=>'ON', +12073=>'ON', +12074=>'ON', +12075=>'ON', +12076=>'ON', +12077=>'ON', +12078=>'ON', +12079=>'ON', +12080=>'ON', +12081=>'ON', +12082=>'ON', +12083=>'ON', +12084=>'ON', +12085=>'ON', +12086=>'ON', +12087=>'ON', +12088=>'ON', +12089=>'ON', +12090=>'ON', +12091=>'ON', +12092=>'ON', +12093=>'ON', +12094=>'ON', +12095=>'ON', +12096=>'ON', +12097=>'ON', +12098=>'ON', +12099=>'ON', +12100=>'ON', +12101=>'ON', +12102=>'ON', +12103=>'ON', +12104=>'ON', +12105=>'ON', +12106=>'ON', +12107=>'ON', +12108=>'ON', +12109=>'ON', +12110=>'ON', +12111=>'ON', +12112=>'ON', +12113=>'ON', +12114=>'ON', +12115=>'ON', +12116=>'ON', +12117=>'ON', +12118=>'ON', +12119=>'ON', +12120=>'ON', +12121=>'ON', +12122=>'ON', +12123=>'ON', +12124=>'ON', +12125=>'ON', +12126=>'ON', +12127=>'ON', +12128=>'ON', +12129=>'ON', +12130=>'ON', +12131=>'ON', +12132=>'ON', +12133=>'ON', +12134=>'ON', +12135=>'ON', +12136=>'ON', +12137=>'ON', +12138=>'ON', +12139=>'ON', +12140=>'ON', +12141=>'ON', +12142=>'ON', +12143=>'ON', +12144=>'ON', +12145=>'ON', +12146=>'ON', +12147=>'ON', +12148=>'ON', +12149=>'ON', +12150=>'ON', +12151=>'ON', +12152=>'ON', +12153=>'ON', +12154=>'ON', +12155=>'ON', +12156=>'ON', +12157=>'ON', +12158=>'ON', +12159=>'ON', +12160=>'ON', +12161=>'ON', +12162=>'ON', +12163=>'ON', +12164=>'ON', +12165=>'ON', +12166=>'ON', +12167=>'ON', +12168=>'ON', +12169=>'ON', +12170=>'ON', +12171=>'ON', +12172=>'ON', +12173=>'ON', +12174=>'ON', +12175=>'ON', +12176=>'ON', +12177=>'ON', +12178=>'ON', +12179=>'ON', +12180=>'ON', +12181=>'ON', +12182=>'ON', +12183=>'ON', +12184=>'ON', +12185=>'ON', +12186=>'ON', +12187=>'ON', +12188=>'ON', +12189=>'ON', +12190=>'ON', +12191=>'ON', +12192=>'ON', +12193=>'ON', +12194=>'ON', +12195=>'ON', +12196=>'ON', +12197=>'ON', +12198=>'ON', +12199=>'ON', +12200=>'ON', +12201=>'ON', +12202=>'ON', +12203=>'ON', +12204=>'ON', +12205=>'ON', +12206=>'ON', +12207=>'ON', +12208=>'ON', +12209=>'ON', +12210=>'ON', +12211=>'ON', +12212=>'ON', +12213=>'ON', +12214=>'ON', +12215=>'ON', +12216=>'ON', +12217=>'ON', +12218=>'ON', +12219=>'ON', +12220=>'ON', +12221=>'ON', +12222=>'ON', +12223=>'ON', +12224=>'ON', +12225=>'ON', +12226=>'ON', +12227=>'ON', +12228=>'ON', +12229=>'ON', +12230=>'ON', +12231=>'ON', +12232=>'ON', +12233=>'ON', +12234=>'ON', +12235=>'ON', +12236=>'ON', +12237=>'ON', +12238=>'ON', +12239=>'ON', +12240=>'ON', +12241=>'ON', +12242=>'ON', +12243=>'ON', +12244=>'ON', +12245=>'ON', +12272=>'ON', +12273=>'ON', +12274=>'ON', +12275=>'ON', +12276=>'ON', +12277=>'ON', +12278=>'ON', +12279=>'ON', +12280=>'ON', +12281=>'ON', +12282=>'ON', +12283=>'ON', +12288=>'WS', +12289=>'ON', +12290=>'ON', +12291=>'ON', +12292=>'ON', +12293=>'L', +12294=>'L', +12295=>'L', +12296=>'ON', +12297=>'ON', +12298=>'ON', +12299=>'ON', +12300=>'ON', +12301=>'ON', +12302=>'ON', +12303=>'ON', +12304=>'ON', +12305=>'ON', +12306=>'ON', +12307=>'ON', +12308=>'ON', +12309=>'ON', +12310=>'ON', +12311=>'ON', +12312=>'ON', +12313=>'ON', +12314=>'ON', +12315=>'ON', +12316=>'ON', +12317=>'ON', +12318=>'ON', +12319=>'ON', +12320=>'ON', +12321=>'L', +12322=>'L', +12323=>'L', +12324=>'L', +12325=>'L', +12326=>'L', +12327=>'L', +12328=>'L', +12329=>'L', +12330=>'NSM', +12331=>'NSM', +12332=>'NSM', +12333=>'NSM', +12334=>'NSM', +12335=>'NSM', +12336=>'ON', +12337=>'L', +12338=>'L', +12339=>'L', +12340=>'L', +12341=>'L', +12342=>'ON', +12343=>'ON', +12344=>'L', +12345=>'L', +12346=>'L', +12347=>'L', +12348=>'L', +12349=>'ON', +12350=>'ON', +12351=>'ON', +12353=>'L', +12354=>'L', +12355=>'L', +12356=>'L', +12357=>'L', +12358=>'L', +12359=>'L', +12360=>'L', +12361=>'L', +12362=>'L', +12363=>'L', +12364=>'L', +12365=>'L', +12366=>'L', +12367=>'L', +12368=>'L', +12369=>'L', +12370=>'L', +12371=>'L', +12372=>'L', +12373=>'L', +12374=>'L', +12375=>'L', +12376=>'L', +12377=>'L', +12378=>'L', +12379=>'L', +12380=>'L', +12381=>'L', +12382=>'L', +12383=>'L', +12384=>'L', +12385=>'L', +12386=>'L', +12387=>'L', +12388=>'L', +12389=>'L', +12390=>'L', +12391=>'L', +12392=>'L', +12393=>'L', +12394=>'L', +12395=>'L', +12396=>'L', +12397=>'L', +12398=>'L', +12399=>'L', +12400=>'L', +12401=>'L', +12402=>'L', +12403=>'L', +12404=>'L', +12405=>'L', +12406=>'L', +12407=>'L', +12408=>'L', +12409=>'L', +12410=>'L', +12411=>'L', +12412=>'L', +12413=>'L', +12414=>'L', +12415=>'L', +12416=>'L', +12417=>'L', +12418=>'L', +12419=>'L', +12420=>'L', +12421=>'L', +12422=>'L', +12423=>'L', +12424=>'L', +12425=>'L', +12426=>'L', +12427=>'L', +12428=>'L', +12429=>'L', +12430=>'L', +12431=>'L', +12432=>'L', +12433=>'L', +12434=>'L', +12435=>'L', +12436=>'L', +12437=>'L', +12438=>'L', +12441=>'NSM', +12442=>'NSM', +12443=>'ON', +12444=>'ON', +12445=>'L', +12446=>'L', +12447=>'L', +12448=>'ON', +12449=>'L', +12450=>'L', +12451=>'L', +12452=>'L', +12453=>'L', +12454=>'L', +12455=>'L', +12456=>'L', +12457=>'L', +12458=>'L', +12459=>'L', +12460=>'L', +12461=>'L', +12462=>'L', +12463=>'L', +12464=>'L', +12465=>'L', +12466=>'L', +12467=>'L', +12468=>'L', +12469=>'L', +12470=>'L', +12471=>'L', +12472=>'L', +12473=>'L', +12474=>'L', +12475=>'L', +12476=>'L', +12477=>'L', +12478=>'L', +12479=>'L', +12480=>'L', +12481=>'L', +12482=>'L', +12483=>'L', +12484=>'L', +12485=>'L', +12486=>'L', +12487=>'L', +12488=>'L', +12489=>'L', +12490=>'L', +12491=>'L', +12492=>'L', +12493=>'L', +12494=>'L', +12495=>'L', +12496=>'L', +12497=>'L', +12498=>'L', +12499=>'L', +12500=>'L', +12501=>'L', +12502=>'L', +12503=>'L', +12504=>'L', +12505=>'L', +12506=>'L', +12507=>'L', +12508=>'L', +12509=>'L', +12510=>'L', +12511=>'L', +12512=>'L', +12513=>'L', +12514=>'L', +12515=>'L', +12516=>'L', +12517=>'L', +12518=>'L', +12519=>'L', +12520=>'L', +12521=>'L', +12522=>'L', +12523=>'L', +12524=>'L', +12525=>'L', +12526=>'L', +12527=>'L', +12528=>'L', +12529=>'L', +12530=>'L', +12531=>'L', +12532=>'L', +12533=>'L', +12534=>'L', +12535=>'L', +12536=>'L', +12537=>'L', +12538=>'L', +12539=>'ON', +12540=>'L', +12541=>'L', +12542=>'L', +12543=>'L', +12549=>'L', +12550=>'L', +12551=>'L', +12552=>'L', +12553=>'L', +12554=>'L', +12555=>'L', +12556=>'L', +12557=>'L', +12558=>'L', +12559=>'L', +12560=>'L', +12561=>'L', +12562=>'L', +12563=>'L', +12564=>'L', +12565=>'L', +12566=>'L', +12567=>'L', +12568=>'L', +12569=>'L', +12570=>'L', +12571=>'L', +12572=>'L', +12573=>'L', +12574=>'L', +12575=>'L', +12576=>'L', +12577=>'L', +12578=>'L', +12579=>'L', +12580=>'L', +12581=>'L', +12582=>'L', +12583=>'L', +12584=>'L', +12585=>'L', +12586=>'L', +12587=>'L', +12588=>'L', +12593=>'L', +12594=>'L', +12595=>'L', +12596=>'L', +12597=>'L', +12598=>'L', +12599=>'L', +12600=>'L', +12601=>'L', +12602=>'L', +12603=>'L', +12604=>'L', +12605=>'L', +12606=>'L', +12607=>'L', +12608=>'L', +12609=>'L', +12610=>'L', +12611=>'L', +12612=>'L', +12613=>'L', +12614=>'L', +12615=>'L', +12616=>'L', +12617=>'L', +12618=>'L', +12619=>'L', +12620=>'L', +12621=>'L', +12622=>'L', +12623=>'L', +12624=>'L', +12625=>'L', +12626=>'L', +12627=>'L', +12628=>'L', +12629=>'L', +12630=>'L', +12631=>'L', +12632=>'L', +12633=>'L', +12634=>'L', +12635=>'L', +12636=>'L', +12637=>'L', +12638=>'L', +12639=>'L', +12640=>'L', +12641=>'L', +12642=>'L', +12643=>'L', +12644=>'L', +12645=>'L', +12646=>'L', +12647=>'L', +12648=>'L', +12649=>'L', +12650=>'L', +12651=>'L', +12652=>'L', +12653=>'L', +12654=>'L', +12655=>'L', +12656=>'L', +12657=>'L', +12658=>'L', +12659=>'L', +12660=>'L', +12661=>'L', +12662=>'L', +12663=>'L', +12664=>'L', +12665=>'L', +12666=>'L', +12667=>'L', +12668=>'L', +12669=>'L', +12670=>'L', +12671=>'L', +12672=>'L', +12673=>'L', +12674=>'L', +12675=>'L', +12676=>'L', +12677=>'L', +12678=>'L', +12679=>'L', +12680=>'L', +12681=>'L', +12682=>'L', +12683=>'L', +12684=>'L', +12685=>'L', +12686=>'L', +12688=>'L', +12689=>'L', +12690=>'L', +12691=>'L', +12692=>'L', +12693=>'L', +12694=>'L', +12695=>'L', +12696=>'L', +12697=>'L', +12698=>'L', +12699=>'L', +12700=>'L', +12701=>'L', +12702=>'L', +12703=>'L', +12704=>'L', +12705=>'L', +12706=>'L', +12707=>'L', +12708=>'L', +12709=>'L', +12710=>'L', +12711=>'L', +12712=>'L', +12713=>'L', +12714=>'L', +12715=>'L', +12716=>'L', +12717=>'L', +12718=>'L', +12719=>'L', +12720=>'L', +12721=>'L', +12722=>'L', +12723=>'L', +12724=>'L', +12725=>'L', +12726=>'L', +12727=>'L', +12736=>'ON', +12737=>'ON', +12738=>'ON', +12739=>'ON', +12740=>'ON', +12741=>'ON', +12742=>'ON', +12743=>'ON', +12744=>'ON', +12745=>'ON', +12746=>'ON', +12747=>'ON', +12748=>'ON', +12749=>'ON', +12750=>'ON', +12751=>'ON', +12784=>'L', +12785=>'L', +12786=>'L', +12787=>'L', +12788=>'L', +12789=>'L', +12790=>'L', +12791=>'L', +12792=>'L', +12793=>'L', +12794=>'L', +12795=>'L', +12796=>'L', +12797=>'L', +12798=>'L', +12799=>'L', +12800=>'L', +12801=>'L', +12802=>'L', +12803=>'L', +12804=>'L', +12805=>'L', +12806=>'L', +12807=>'L', +12808=>'L', +12809=>'L', +12810=>'L', +12811=>'L', +12812=>'L', +12813=>'L', +12814=>'L', +12815=>'L', +12816=>'L', +12817=>'L', +12818=>'L', +12819=>'L', +12820=>'L', +12821=>'L', +12822=>'L', +12823=>'L', +12824=>'L', +12825=>'L', +12826=>'L', +12827=>'L', +12828=>'L', +12829=>'ON', +12830=>'ON', +12832=>'L', +12833=>'L', +12834=>'L', +12835=>'L', +12836=>'L', +12837=>'L', +12838=>'L', +12839=>'L', +12840=>'L', +12841=>'L', +12842=>'L', +12843=>'L', +12844=>'L', +12845=>'L', +12846=>'L', +12847=>'L', +12848=>'L', +12849=>'L', +12850=>'L', +12851=>'L', +12852=>'L', +12853=>'L', +12854=>'L', +12855=>'L', +12856=>'L', +12857=>'L', +12858=>'L', +12859=>'L', +12860=>'L', +12861=>'L', +12862=>'L', +12863=>'L', +12864=>'L', +12865=>'L', +12866=>'L', +12867=>'L', +12880=>'ON', +12881=>'ON', +12882=>'ON', +12883=>'ON', +12884=>'ON', +12885=>'ON', +12886=>'ON', +12887=>'ON', +12888=>'ON', +12889=>'ON', +12890=>'ON', +12891=>'ON', +12892=>'ON', +12893=>'ON', +12894=>'ON', +12895=>'ON', +12896=>'L', +12897=>'L', +12898=>'L', +12899=>'L', +12900=>'L', +12901=>'L', +12902=>'L', +12903=>'L', +12904=>'L', +12905=>'L', +12906=>'L', +12907=>'L', +12908=>'L', +12909=>'L', +12910=>'L', +12911=>'L', +12912=>'L', +12913=>'L', +12914=>'L', +12915=>'L', +12916=>'L', +12917=>'L', +12918=>'L', +12919=>'L', +12920=>'L', +12921=>'L', +12922=>'L', +12923=>'L', +12924=>'ON', +12925=>'ON', +12926=>'ON', +12927=>'L', +12928=>'L', +12929=>'L', +12930=>'L', +12931=>'L', +12932=>'L', +12933=>'L', +12934=>'L', +12935=>'L', +12936=>'L', +12937=>'L', +12938=>'L', +12939=>'L', +12940=>'L', +12941=>'L', +12942=>'L', +12943=>'L', +12944=>'L', +12945=>'L', +12946=>'L', +12947=>'L', +12948=>'L', +12949=>'L', +12950=>'L', +12951=>'L', +12952=>'L', +12953=>'L', +12954=>'L', +12955=>'L', +12956=>'L', +12957=>'L', +12958=>'L', +12959=>'L', +12960=>'L', +12961=>'L', +12962=>'L', +12963=>'L', +12964=>'L', +12965=>'L', +12966=>'L', +12967=>'L', +12968=>'L', +12969=>'L', +12970=>'L', +12971=>'L', +12972=>'L', +12973=>'L', +12974=>'L', +12975=>'L', +12976=>'L', +12977=>'ON', +12978=>'ON', +12979=>'ON', +12980=>'ON', +12981=>'ON', +12982=>'ON', +12983=>'ON', +12984=>'ON', +12985=>'ON', +12986=>'ON', +12987=>'ON', +12988=>'ON', +12989=>'ON', +12990=>'ON', +12991=>'ON', +12992=>'L', +12993=>'L', +12994=>'L', +12995=>'L', +12996=>'L', +12997=>'L', +12998=>'L', +12999=>'L', +13000=>'L', +13001=>'L', +13002=>'L', +13003=>'L', +13004=>'ON', +13005=>'ON', +13006=>'ON', +13007=>'ON', +13008=>'L', +13009=>'L', +13010=>'L', +13011=>'L', +13012=>'L', +13013=>'L', +13014=>'L', +13015=>'L', +13016=>'L', +13017=>'L', +13018=>'L', +13019=>'L', +13020=>'L', +13021=>'L', +13022=>'L', +13023=>'L', +13024=>'L', +13025=>'L', +13026=>'L', +13027=>'L', +13028=>'L', +13029=>'L', +13030=>'L', +13031=>'L', +13032=>'L', +13033=>'L', +13034=>'L', +13035=>'L', +13036=>'L', +13037=>'L', +13038=>'L', +13039=>'L', +13040=>'L', +13041=>'L', +13042=>'L', +13043=>'L', +13044=>'L', +13045=>'L', +13046=>'L', +13047=>'L', +13048=>'L', +13049=>'L', +13050=>'L', +13051=>'L', +13052=>'L', +13053=>'L', +13054=>'L', +13056=>'L', +13057=>'L', +13058=>'L', +13059=>'L', +13060=>'L', +13061=>'L', +13062=>'L', +13063=>'L', +13064=>'L', +13065=>'L', +13066=>'L', +13067=>'L', +13068=>'L', +13069=>'L', +13070=>'L', +13071=>'L', +13072=>'L', +13073=>'L', +13074=>'L', +13075=>'L', +13076=>'L', +13077=>'L', +13078=>'L', +13079=>'L', +13080=>'L', +13081=>'L', +13082=>'L', +13083=>'L', +13084=>'L', +13085=>'L', +13086=>'L', +13087=>'L', +13088=>'L', +13089=>'L', +13090=>'L', +13091=>'L', +13092=>'L', +13093=>'L', +13094=>'L', +13095=>'L', +13096=>'L', +13097=>'L', +13098=>'L', +13099=>'L', +13100=>'L', +13101=>'L', +13102=>'L', +13103=>'L', +13104=>'L', +13105=>'L', +13106=>'L', +13107=>'L', +13108=>'L', +13109=>'L', +13110=>'L', +13111=>'L', +13112=>'L', +13113=>'L', +13114=>'L', +13115=>'L', +13116=>'L', +13117=>'L', +13118=>'L', +13119=>'L', +13120=>'L', +13121=>'L', +13122=>'L', +13123=>'L', +13124=>'L', +13125=>'L', +13126=>'L', +13127=>'L', +13128=>'L', +13129=>'L', +13130=>'L', +13131=>'L', +13132=>'L', +13133=>'L', +13134=>'L', +13135=>'L', +13136=>'L', +13137=>'L', +13138=>'L', +13139=>'L', +13140=>'L', +13141=>'L', +13142=>'L', +13143=>'L', +13144=>'L', +13145=>'L', +13146=>'L', +13147=>'L', +13148=>'L', +13149=>'L', +13150=>'L', +13151=>'L', +13152=>'L', +13153=>'L', +13154=>'L', +13155=>'L', +13156=>'L', +13157=>'L', +13158=>'L', +13159=>'L', +13160=>'L', +13161=>'L', +13162=>'L', +13163=>'L', +13164=>'L', +13165=>'L', +13166=>'L', +13167=>'L', +13168=>'L', +13169=>'L', +13170=>'L', +13171=>'L', +13172=>'L', +13173=>'L', +13174=>'L', +13175=>'ON', +13176=>'ON', +13177=>'ON', +13178=>'ON', +13179=>'L', +13180=>'L', +13181=>'L', +13182=>'L', +13183=>'L', +13184=>'L', +13185=>'L', +13186=>'L', +13187=>'L', +13188=>'L', +13189=>'L', +13190=>'L', +13191=>'L', +13192=>'L', +13193=>'L', +13194=>'L', +13195=>'L', +13196=>'L', +13197=>'L', +13198=>'L', +13199=>'L', +13200=>'L', +13201=>'L', +13202=>'L', +13203=>'L', +13204=>'L', +13205=>'L', +13206=>'L', +13207=>'L', +13208=>'L', +13209=>'L', +13210=>'L', +13211=>'L', +13212=>'L', +13213=>'L', +13214=>'L', +13215=>'L', +13216=>'L', +13217=>'L', +13218=>'L', +13219=>'L', +13220=>'L', +13221=>'L', +13222=>'L', +13223=>'L', +13224=>'L', +13225=>'L', +13226=>'L', +13227=>'L', +13228=>'L', +13229=>'L', +13230=>'L', +13231=>'L', +13232=>'L', +13233=>'L', +13234=>'L', +13235=>'L', +13236=>'L', +13237=>'L', +13238=>'L', +13239=>'L', +13240=>'L', +13241=>'L', +13242=>'L', +13243=>'L', +13244=>'L', +13245=>'L', +13246=>'L', +13247=>'L', +13248=>'L', +13249=>'L', +13250=>'L', +13251=>'L', +13252=>'L', +13253=>'L', +13254=>'L', +13255=>'L', +13256=>'L', +13257=>'L', +13258=>'L', +13259=>'L', +13260=>'L', +13261=>'L', +13262=>'L', +13263=>'L', +13264=>'L', +13265=>'L', +13266=>'L', +13267=>'L', +13268=>'L', +13269=>'L', +13270=>'L', +13271=>'L', +13272=>'L', +13273=>'L', +13274=>'L', +13275=>'L', +13276=>'L', +13277=>'L', +13278=>'ON', +13279=>'ON', +13280=>'L', +13281=>'L', +13282=>'L', +13283=>'L', +13284=>'L', +13285=>'L', +13286=>'L', +13287=>'L', +13288=>'L', +13289=>'L', +13290=>'L', +13291=>'L', +13292=>'L', +13293=>'L', +13294=>'L', +13295=>'L', +13296=>'L', +13297=>'L', +13298=>'L', +13299=>'L', +13300=>'L', +13301=>'L', +13302=>'L', +13303=>'L', +13304=>'L', +13305=>'L', +13306=>'L', +13307=>'L', +13308=>'L', +13309=>'L', +13310=>'L', +13311=>'ON', +13312=>'L', +19893=>'L', +19904=>'ON', +19905=>'ON', +19906=>'ON', +19907=>'ON', +19908=>'ON', +19909=>'ON', +19910=>'ON', +19911=>'ON', +19912=>'ON', +19913=>'ON', +19914=>'ON', +19915=>'ON', +19916=>'ON', +19917=>'ON', +19918=>'ON', +19919=>'ON', +19920=>'ON', +19921=>'ON', +19922=>'ON', +19923=>'ON', +19924=>'ON', +19925=>'ON', +19926=>'ON', +19927=>'ON', +19928=>'ON', +19929=>'ON', +19930=>'ON', +19931=>'ON', +19932=>'ON', +19933=>'ON', +19934=>'ON', +19935=>'ON', +19936=>'ON', +19937=>'ON', +19938=>'ON', +19939=>'ON', +19940=>'ON', +19941=>'ON', +19942=>'ON', +19943=>'ON', +19944=>'ON', +19945=>'ON', +19946=>'ON', +19947=>'ON', +19948=>'ON', +19949=>'ON', +19950=>'ON', +19951=>'ON', +19952=>'ON', +19953=>'ON', +19954=>'ON', +19955=>'ON', +19956=>'ON', +19957=>'ON', +19958=>'ON', +19959=>'ON', +19960=>'ON', +19961=>'ON', +19962=>'ON', +19963=>'ON', +19964=>'ON', +19965=>'ON', +19966=>'ON', +19967=>'ON', +19968=>'L', +40891=>'L', +40960=>'L', +40961=>'L', +40962=>'L', +40963=>'L', +40964=>'L', +40965=>'L', +40966=>'L', +40967=>'L', +40968=>'L', +40969=>'L', +40970=>'L', +40971=>'L', +40972=>'L', +40973=>'L', +40974=>'L', +40975=>'L', +40976=>'L', +40977=>'L', +40978=>'L', +40979=>'L', +40980=>'L', +40981=>'L', +40982=>'L', +40983=>'L', +40984=>'L', +40985=>'L', +40986=>'L', +40987=>'L', +40988=>'L', +40989=>'L', +40990=>'L', +40991=>'L', +40992=>'L', +40993=>'L', +40994=>'L', +40995=>'L', +40996=>'L', +40997=>'L', +40998=>'L', +40999=>'L', +41000=>'L', +41001=>'L', +41002=>'L', +41003=>'L', +41004=>'L', +41005=>'L', +41006=>'L', +41007=>'L', +41008=>'L', +41009=>'L', +41010=>'L', +41011=>'L', +41012=>'L', +41013=>'L', +41014=>'L', +41015=>'L', +41016=>'L', +41017=>'L', +41018=>'L', +41019=>'L', +41020=>'L', +41021=>'L', +41022=>'L', +41023=>'L', +41024=>'L', +41025=>'L', +41026=>'L', +41027=>'L', +41028=>'L', +41029=>'L', +41030=>'L', +41031=>'L', +41032=>'L', +41033=>'L', +41034=>'L', +41035=>'L', +41036=>'L', +41037=>'L', +41038=>'L', +41039=>'L', +41040=>'L', +41041=>'L', +41042=>'L', +41043=>'L', +41044=>'L', +41045=>'L', +41046=>'L', +41047=>'L', +41048=>'L', +41049=>'L', +41050=>'L', +41051=>'L', +41052=>'L', +41053=>'L', +41054=>'L', +41055=>'L', +41056=>'L', +41057=>'L', +41058=>'L', +41059=>'L', +41060=>'L', +41061=>'L', +41062=>'L', +41063=>'L', +41064=>'L', +41065=>'L', +41066=>'L', +41067=>'L', +41068=>'L', +41069=>'L', +41070=>'L', +41071=>'L', +41072=>'L', +41073=>'L', +41074=>'L', +41075=>'L', +41076=>'L', +41077=>'L', +41078=>'L', +41079=>'L', +41080=>'L', +41081=>'L', +41082=>'L', +41083=>'L', +41084=>'L', +41085=>'L', +41086=>'L', +41087=>'L', +41088=>'L', +41089=>'L', +41090=>'L', +41091=>'L', +41092=>'L', +41093=>'L', +41094=>'L', +41095=>'L', +41096=>'L', +41097=>'L', +41098=>'L', +41099=>'L', +41100=>'L', +41101=>'L', +41102=>'L', +41103=>'L', +41104=>'L', +41105=>'L', +41106=>'L', +41107=>'L', +41108=>'L', +41109=>'L', +41110=>'L', +41111=>'L', +41112=>'L', +41113=>'L', +41114=>'L', +41115=>'L', +41116=>'L', +41117=>'L', +41118=>'L', +41119=>'L', +41120=>'L', +41121=>'L', +41122=>'L', +41123=>'L', +41124=>'L', +41125=>'L', +41126=>'L', +41127=>'L', +41128=>'L', +41129=>'L', +41130=>'L', +41131=>'L', +41132=>'L', +41133=>'L', +41134=>'L', +41135=>'L', +41136=>'L', +41137=>'L', +41138=>'L', +41139=>'L', +41140=>'L', +41141=>'L', +41142=>'L', +41143=>'L', +41144=>'L', +41145=>'L', +41146=>'L', +41147=>'L', +41148=>'L', +41149=>'L', +41150=>'L', +41151=>'L', +41152=>'L', +41153=>'L', +41154=>'L', +41155=>'L', +41156=>'L', +41157=>'L', +41158=>'L', +41159=>'L', +41160=>'L', +41161=>'L', +41162=>'L', +41163=>'L', +41164=>'L', +41165=>'L', +41166=>'L', +41167=>'L', +41168=>'L', +41169=>'L', +41170=>'L', +41171=>'L', +41172=>'L', +41173=>'L', +41174=>'L', +41175=>'L', +41176=>'L', +41177=>'L', +41178=>'L', +41179=>'L', +41180=>'L', +41181=>'L', +41182=>'L', +41183=>'L', +41184=>'L', +41185=>'L', +41186=>'L', +41187=>'L', +41188=>'L', +41189=>'L', +41190=>'L', +41191=>'L', +41192=>'L', +41193=>'L', +41194=>'L', +41195=>'L', +41196=>'L', +41197=>'L', +41198=>'L', +41199=>'L', +41200=>'L', +41201=>'L', +41202=>'L', +41203=>'L', +41204=>'L', +41205=>'L', +41206=>'L', +41207=>'L', +41208=>'L', +41209=>'L', +41210=>'L', +41211=>'L', +41212=>'L', +41213=>'L', +41214=>'L', +41215=>'L', +41216=>'L', +41217=>'L', +41218=>'L', +41219=>'L', +41220=>'L', +41221=>'L', +41222=>'L', +41223=>'L', +41224=>'L', +41225=>'L', +41226=>'L', +41227=>'L', +41228=>'L', +41229=>'L', +41230=>'L', +41231=>'L', +41232=>'L', +41233=>'L', +41234=>'L', +41235=>'L', +41236=>'L', +41237=>'L', +41238=>'L', +41239=>'L', +41240=>'L', +41241=>'L', +41242=>'L', +41243=>'L', +41244=>'L', +41245=>'L', +41246=>'L', +41247=>'L', +41248=>'L', +41249=>'L', +41250=>'L', +41251=>'L', +41252=>'L', +41253=>'L', +41254=>'L', +41255=>'L', +41256=>'L', +41257=>'L', +41258=>'L', +41259=>'L', +41260=>'L', +41261=>'L', +41262=>'L', +41263=>'L', +41264=>'L', +41265=>'L', +41266=>'L', +41267=>'L', +41268=>'L', +41269=>'L', +41270=>'L', +41271=>'L', +41272=>'L', +41273=>'L', +41274=>'L', +41275=>'L', +41276=>'L', +41277=>'L', +41278=>'L', +41279=>'L', +41280=>'L', +41281=>'L', +41282=>'L', +41283=>'L', +41284=>'L', +41285=>'L', +41286=>'L', +41287=>'L', +41288=>'L', +41289=>'L', +41290=>'L', +41291=>'L', +41292=>'L', +41293=>'L', +41294=>'L', +41295=>'L', +41296=>'L', +41297=>'L', +41298=>'L', +41299=>'L', +41300=>'L', +41301=>'L', +41302=>'L', +41303=>'L', +41304=>'L', +41305=>'L', +41306=>'L', +41307=>'L', +41308=>'L', +41309=>'L', +41310=>'L', +41311=>'L', +41312=>'L', +41313=>'L', +41314=>'L', +41315=>'L', +41316=>'L', +41317=>'L', +41318=>'L', +41319=>'L', +41320=>'L', +41321=>'L', +41322=>'L', +41323=>'L', +41324=>'L', +41325=>'L', +41326=>'L', +41327=>'L', +41328=>'L', +41329=>'L', +41330=>'L', +41331=>'L', +41332=>'L', +41333=>'L', +41334=>'L', +41335=>'L', +41336=>'L', +41337=>'L', +41338=>'L', +41339=>'L', +41340=>'L', +41341=>'L', +41342=>'L', +41343=>'L', +41344=>'L', +41345=>'L', +41346=>'L', +41347=>'L', +41348=>'L', +41349=>'L', +41350=>'L', +41351=>'L', +41352=>'L', +41353=>'L', +41354=>'L', +41355=>'L', +41356=>'L', +41357=>'L', +41358=>'L', +41359=>'L', +41360=>'L', +41361=>'L', +41362=>'L', +41363=>'L', +41364=>'L', +41365=>'L', +41366=>'L', +41367=>'L', +41368=>'L', +41369=>'L', +41370=>'L', +41371=>'L', +41372=>'L', +41373=>'L', +41374=>'L', +41375=>'L', +41376=>'L', +41377=>'L', +41378=>'L', +41379=>'L', +41380=>'L', +41381=>'L', +41382=>'L', +41383=>'L', +41384=>'L', +41385=>'L', +41386=>'L', +41387=>'L', +41388=>'L', +41389=>'L', +41390=>'L', +41391=>'L', +41392=>'L', +41393=>'L', +41394=>'L', +41395=>'L', +41396=>'L', +41397=>'L', +41398=>'L', +41399=>'L', +41400=>'L', +41401=>'L', +41402=>'L', +41403=>'L', +41404=>'L', +41405=>'L', +41406=>'L', +41407=>'L', +41408=>'L', +41409=>'L', +41410=>'L', +41411=>'L', +41412=>'L', +41413=>'L', +41414=>'L', +41415=>'L', +41416=>'L', +41417=>'L', +41418=>'L', +41419=>'L', +41420=>'L', +41421=>'L', +41422=>'L', +41423=>'L', +41424=>'L', +41425=>'L', +41426=>'L', +41427=>'L', +41428=>'L', +41429=>'L', +41430=>'L', +41431=>'L', +41432=>'L', +41433=>'L', +41434=>'L', +41435=>'L', +41436=>'L', +41437=>'L', +41438=>'L', +41439=>'L', +41440=>'L', +41441=>'L', +41442=>'L', +41443=>'L', +41444=>'L', +41445=>'L', +41446=>'L', +41447=>'L', +41448=>'L', +41449=>'L', +41450=>'L', +41451=>'L', +41452=>'L', +41453=>'L', +41454=>'L', +41455=>'L', +41456=>'L', +41457=>'L', +41458=>'L', +41459=>'L', +41460=>'L', +41461=>'L', +41462=>'L', +41463=>'L', +41464=>'L', +41465=>'L', +41466=>'L', +41467=>'L', +41468=>'L', +41469=>'L', +41470=>'L', +41471=>'L', +41472=>'L', +41473=>'L', +41474=>'L', +41475=>'L', +41476=>'L', +41477=>'L', +41478=>'L', +41479=>'L', +41480=>'L', +41481=>'L', +41482=>'L', +41483=>'L', +41484=>'L', +41485=>'L', +41486=>'L', +41487=>'L', +41488=>'L', +41489=>'L', +41490=>'L', +41491=>'L', +41492=>'L', +41493=>'L', +41494=>'L', +41495=>'L', +41496=>'L', +41497=>'L', +41498=>'L', +41499=>'L', +41500=>'L', +41501=>'L', +41502=>'L', +41503=>'L', +41504=>'L', +41505=>'L', +41506=>'L', +41507=>'L', +41508=>'L', +41509=>'L', +41510=>'L', +41511=>'L', +41512=>'L', +41513=>'L', +41514=>'L', +41515=>'L', +41516=>'L', +41517=>'L', +41518=>'L', +41519=>'L', +41520=>'L', +41521=>'L', +41522=>'L', +41523=>'L', +41524=>'L', +41525=>'L', +41526=>'L', +41527=>'L', +41528=>'L', +41529=>'L', +41530=>'L', +41531=>'L', +41532=>'L', +41533=>'L', +41534=>'L', +41535=>'L', +41536=>'L', +41537=>'L', +41538=>'L', +41539=>'L', +41540=>'L', +41541=>'L', +41542=>'L', +41543=>'L', +41544=>'L', +41545=>'L', +41546=>'L', +41547=>'L', +41548=>'L', +41549=>'L', +41550=>'L', +41551=>'L', +41552=>'L', +41553=>'L', +41554=>'L', +41555=>'L', +41556=>'L', +41557=>'L', +41558=>'L', +41559=>'L', +41560=>'L', +41561=>'L', +41562=>'L', +41563=>'L', +41564=>'L', +41565=>'L', +41566=>'L', +41567=>'L', +41568=>'L', +41569=>'L', +41570=>'L', +41571=>'L', +41572=>'L', +41573=>'L', +41574=>'L', +41575=>'L', +41576=>'L', +41577=>'L', +41578=>'L', +41579=>'L', +41580=>'L', +41581=>'L', +41582=>'L', +41583=>'L', +41584=>'L', +41585=>'L', +41586=>'L', +41587=>'L', +41588=>'L', +41589=>'L', +41590=>'L', +41591=>'L', +41592=>'L', +41593=>'L', +41594=>'L', +41595=>'L', +41596=>'L', +41597=>'L', +41598=>'L', +41599=>'L', +41600=>'L', +41601=>'L', +41602=>'L', +41603=>'L', +41604=>'L', +41605=>'L', +41606=>'L', +41607=>'L', +41608=>'L', +41609=>'L', +41610=>'L', +41611=>'L', +41612=>'L', +41613=>'L', +41614=>'L', +41615=>'L', +41616=>'L', +41617=>'L', +41618=>'L', +41619=>'L', +41620=>'L', +41621=>'L', +41622=>'L', +41623=>'L', +41624=>'L', +41625=>'L', +41626=>'L', +41627=>'L', +41628=>'L', +41629=>'L', +41630=>'L', +41631=>'L', +41632=>'L', +41633=>'L', +41634=>'L', +41635=>'L', +41636=>'L', +41637=>'L', +41638=>'L', +41639=>'L', +41640=>'L', +41641=>'L', +41642=>'L', +41643=>'L', +41644=>'L', +41645=>'L', +41646=>'L', +41647=>'L', +41648=>'L', +41649=>'L', +41650=>'L', +41651=>'L', +41652=>'L', +41653=>'L', +41654=>'L', +41655=>'L', +41656=>'L', +41657=>'L', +41658=>'L', +41659=>'L', +41660=>'L', +41661=>'L', +41662=>'L', +41663=>'L', +41664=>'L', +41665=>'L', +41666=>'L', +41667=>'L', +41668=>'L', +41669=>'L', +41670=>'L', +41671=>'L', +41672=>'L', +41673=>'L', +41674=>'L', +41675=>'L', +41676=>'L', +41677=>'L', +41678=>'L', +41679=>'L', +41680=>'L', +41681=>'L', +41682=>'L', +41683=>'L', +41684=>'L', +41685=>'L', +41686=>'L', +41687=>'L', +41688=>'L', +41689=>'L', +41690=>'L', +41691=>'L', +41692=>'L', +41693=>'L', +41694=>'L', +41695=>'L', +41696=>'L', +41697=>'L', +41698=>'L', +41699=>'L', +41700=>'L', +41701=>'L', +41702=>'L', +41703=>'L', +41704=>'L', +41705=>'L', +41706=>'L', +41707=>'L', +41708=>'L', +41709=>'L', +41710=>'L', +41711=>'L', +41712=>'L', +41713=>'L', +41714=>'L', +41715=>'L', +41716=>'L', +41717=>'L', +41718=>'L', +41719=>'L', +41720=>'L', +41721=>'L', +41722=>'L', +41723=>'L', +41724=>'L', +41725=>'L', +41726=>'L', +41727=>'L', +41728=>'L', +41729=>'L', +41730=>'L', +41731=>'L', +41732=>'L', +41733=>'L', +41734=>'L', +41735=>'L', +41736=>'L', +41737=>'L', +41738=>'L', +41739=>'L', +41740=>'L', +41741=>'L', +41742=>'L', +41743=>'L', +41744=>'L', +41745=>'L', +41746=>'L', +41747=>'L', +41748=>'L', +41749=>'L', +41750=>'L', +41751=>'L', +41752=>'L', +41753=>'L', +41754=>'L', +41755=>'L', +41756=>'L', +41757=>'L', +41758=>'L', +41759=>'L', +41760=>'L', +41761=>'L', +41762=>'L', +41763=>'L', +41764=>'L', +41765=>'L', +41766=>'L', +41767=>'L', +41768=>'L', +41769=>'L', +41770=>'L', +41771=>'L', +41772=>'L', +41773=>'L', +41774=>'L', +41775=>'L', +41776=>'L', +41777=>'L', +41778=>'L', +41779=>'L', +41780=>'L', +41781=>'L', +41782=>'L', +41783=>'L', +41784=>'L', +41785=>'L', +41786=>'L', +41787=>'L', +41788=>'L', +41789=>'L', +41790=>'L', +41791=>'L', +41792=>'L', +41793=>'L', +41794=>'L', +41795=>'L', +41796=>'L', +41797=>'L', +41798=>'L', +41799=>'L', +41800=>'L', +41801=>'L', +41802=>'L', +41803=>'L', +41804=>'L', +41805=>'L', +41806=>'L', +41807=>'L', +41808=>'L', +41809=>'L', +41810=>'L', +41811=>'L', +41812=>'L', +41813=>'L', +41814=>'L', +41815=>'L', +41816=>'L', +41817=>'L', +41818=>'L', +41819=>'L', +41820=>'L', +41821=>'L', +41822=>'L', +41823=>'L', +41824=>'L', +41825=>'L', +41826=>'L', +41827=>'L', +41828=>'L', +41829=>'L', +41830=>'L', +41831=>'L', +41832=>'L', +41833=>'L', +41834=>'L', +41835=>'L', +41836=>'L', +41837=>'L', +41838=>'L', +41839=>'L', +41840=>'L', +41841=>'L', +41842=>'L', +41843=>'L', +41844=>'L', +41845=>'L', +41846=>'L', +41847=>'L', +41848=>'L', +41849=>'L', +41850=>'L', +41851=>'L', +41852=>'L', +41853=>'L', +41854=>'L', +41855=>'L', +41856=>'L', +41857=>'L', +41858=>'L', +41859=>'L', +41860=>'L', +41861=>'L', +41862=>'L', +41863=>'L', +41864=>'L', +41865=>'L', +41866=>'L', +41867=>'L', +41868=>'L', +41869=>'L', +41870=>'L', +41871=>'L', +41872=>'L', +41873=>'L', +41874=>'L', +41875=>'L', +41876=>'L', +41877=>'L', +41878=>'L', +41879=>'L', +41880=>'L', +41881=>'L', +41882=>'L', +41883=>'L', +41884=>'L', +41885=>'L', +41886=>'L', +41887=>'L', +41888=>'L', +41889=>'L', +41890=>'L', +41891=>'L', +41892=>'L', +41893=>'L', +41894=>'L', +41895=>'L', +41896=>'L', +41897=>'L', +41898=>'L', +41899=>'L', +41900=>'L', +41901=>'L', +41902=>'L', +41903=>'L', +41904=>'L', +41905=>'L', +41906=>'L', +41907=>'L', +41908=>'L', +41909=>'L', +41910=>'L', +41911=>'L', +41912=>'L', +41913=>'L', +41914=>'L', +41915=>'L', +41916=>'L', +41917=>'L', +41918=>'L', +41919=>'L', +41920=>'L', +41921=>'L', +41922=>'L', +41923=>'L', +41924=>'L', +41925=>'L', +41926=>'L', +41927=>'L', +41928=>'L', +41929=>'L', +41930=>'L', +41931=>'L', +41932=>'L', +41933=>'L', +41934=>'L', +41935=>'L', +41936=>'L', +41937=>'L', +41938=>'L', +41939=>'L', +41940=>'L', +41941=>'L', +41942=>'L', +41943=>'L', +41944=>'L', +41945=>'L', +41946=>'L', +41947=>'L', +41948=>'L', +41949=>'L', +41950=>'L', +41951=>'L', +41952=>'L', +41953=>'L', +41954=>'L', +41955=>'L', +41956=>'L', +41957=>'L', +41958=>'L', +41959=>'L', +41960=>'L', +41961=>'L', +41962=>'L', +41963=>'L', +41964=>'L', +41965=>'L', +41966=>'L', +41967=>'L', +41968=>'L', +41969=>'L', +41970=>'L', +41971=>'L', +41972=>'L', +41973=>'L', +41974=>'L', +41975=>'L', +41976=>'L', +41977=>'L', +41978=>'L', +41979=>'L', +41980=>'L', +41981=>'L', +41982=>'L', +41983=>'L', +41984=>'L', +41985=>'L', +41986=>'L', +41987=>'L', +41988=>'L', +41989=>'L', +41990=>'L', +41991=>'L', +41992=>'L', +41993=>'L', +41994=>'L', +41995=>'L', +41996=>'L', +41997=>'L', +41998=>'L', +41999=>'L', +42000=>'L', +42001=>'L', +42002=>'L', +42003=>'L', +42004=>'L', +42005=>'L', +42006=>'L', +42007=>'L', +42008=>'L', +42009=>'L', +42010=>'L', +42011=>'L', +42012=>'L', +42013=>'L', +42014=>'L', +42015=>'L', +42016=>'L', +42017=>'L', +42018=>'L', +42019=>'L', +42020=>'L', +42021=>'L', +42022=>'L', +42023=>'L', +42024=>'L', +42025=>'L', +42026=>'L', +42027=>'L', +42028=>'L', +42029=>'L', +42030=>'L', +42031=>'L', +42032=>'L', +42033=>'L', +42034=>'L', +42035=>'L', +42036=>'L', +42037=>'L', +42038=>'L', +42039=>'L', +42040=>'L', +42041=>'L', +42042=>'L', +42043=>'L', +42044=>'L', +42045=>'L', +42046=>'L', +42047=>'L', +42048=>'L', +42049=>'L', +42050=>'L', +42051=>'L', +42052=>'L', +42053=>'L', +42054=>'L', +42055=>'L', +42056=>'L', +42057=>'L', +42058=>'L', +42059=>'L', +42060=>'L', +42061=>'L', +42062=>'L', +42063=>'L', +42064=>'L', +42065=>'L', +42066=>'L', +42067=>'L', +42068=>'L', +42069=>'L', +42070=>'L', +42071=>'L', +42072=>'L', +42073=>'L', +42074=>'L', +42075=>'L', +42076=>'L', +42077=>'L', +42078=>'L', +42079=>'L', +42080=>'L', +42081=>'L', +42082=>'L', +42083=>'L', +42084=>'L', +42085=>'L', +42086=>'L', +42087=>'L', +42088=>'L', +42089=>'L', +42090=>'L', +42091=>'L', +42092=>'L', +42093=>'L', +42094=>'L', +42095=>'L', +42096=>'L', +42097=>'L', +42098=>'L', +42099=>'L', +42100=>'L', +42101=>'L', +42102=>'L', +42103=>'L', +42104=>'L', +42105=>'L', +42106=>'L', +42107=>'L', +42108=>'L', +42109=>'L', +42110=>'L', +42111=>'L', +42112=>'L', +42113=>'L', +42114=>'L', +42115=>'L', +42116=>'L', +42117=>'L', +42118=>'L', +42119=>'L', +42120=>'L', +42121=>'L', +42122=>'L', +42123=>'L', +42124=>'L', +42128=>'ON', +42129=>'ON', +42130=>'ON', +42131=>'ON', +42132=>'ON', +42133=>'ON', +42134=>'ON', +42135=>'ON', +42136=>'ON', +42137=>'ON', +42138=>'ON', +42139=>'ON', +42140=>'ON', +42141=>'ON', +42142=>'ON', +42143=>'ON', +42144=>'ON', +42145=>'ON', +42146=>'ON', +42147=>'ON', +42148=>'ON', +42149=>'ON', +42150=>'ON', +42151=>'ON', +42152=>'ON', +42153=>'ON', +42154=>'ON', +42155=>'ON', +42156=>'ON', +42157=>'ON', +42158=>'ON', +42159=>'ON', +42160=>'ON', +42161=>'ON', +42162=>'ON', +42163=>'ON', +42164=>'ON', +42165=>'ON', +42166=>'ON', +42167=>'ON', +42168=>'ON', +42169=>'ON', +42170=>'ON', +42171=>'ON', +42172=>'ON', +42173=>'ON', +42174=>'ON', +42175=>'ON', +42176=>'ON', +42177=>'ON', +42178=>'ON', +42179=>'ON', +42180=>'ON', +42181=>'ON', +42182=>'ON', +42752=>'ON', +42753=>'ON', +42754=>'ON', +42755=>'ON', +42756=>'ON', +42757=>'ON', +42758=>'ON', +42759=>'ON', +42760=>'ON', +42761=>'ON', +42762=>'ON', +42763=>'ON', +42764=>'ON', +42765=>'ON', +42766=>'ON', +42767=>'ON', +42768=>'ON', +42769=>'ON', +42770=>'ON', +42771=>'ON', +42772=>'ON', +42773=>'ON', +42774=>'ON', +42775=>'ON', +42776=>'ON', +42777=>'ON', +42778=>'ON', +42784=>'ON', +42785=>'ON', +43008=>'L', +43009=>'L', +43010=>'NSM', +43011=>'L', +43012=>'L', +43013=>'L', +43014=>'NSM', +43015=>'L', +43016=>'L', +43017=>'L', +43018=>'L', +43019=>'NSM', +43020=>'L', +43021=>'L', +43022=>'L', +43023=>'L', +43024=>'L', +43025=>'L', +43026=>'L', +43027=>'L', +43028=>'L', +43029=>'L', +43030=>'L', +43031=>'L', +43032=>'L', +43033=>'L', +43034=>'L', +43035=>'L', +43036=>'L', +43037=>'L', +43038=>'L', +43039=>'L', +43040=>'L', +43041=>'L', +43042=>'L', +43043=>'L', +43044=>'L', +43045=>'NSM', +43046=>'NSM', +43047=>'L', +43048=>'ON', +43049=>'ON', +43050=>'ON', +43051=>'ON', +43072=>'L', +43073=>'L', +43074=>'L', +43075=>'L', +43076=>'L', +43077=>'L', +43078=>'L', +43079=>'L', +43080=>'L', +43081=>'L', +43082=>'L', +43083=>'L', +43084=>'L', +43085=>'L', +43086=>'L', +43087=>'L', +43088=>'L', +43089=>'L', +43090=>'L', +43091=>'L', +43092=>'L', +43093=>'L', +43094=>'L', +43095=>'L', +43096=>'L', +43097=>'L', +43098=>'L', +43099=>'L', +43100=>'L', +43101=>'L', +43102=>'L', +43103=>'L', +43104=>'L', +43105=>'L', +43106=>'L', +43107=>'L', +43108=>'L', +43109=>'L', +43110=>'L', +43111=>'L', +43112=>'L', +43113=>'L', +43114=>'L', +43115=>'L', +43116=>'L', +43117=>'L', +43118=>'L', +43119=>'L', +43120=>'L', +43121=>'L', +43122=>'L', +43123=>'L', +43124=>'ON', +43125=>'ON', +43126=>'ON', +43127=>'ON', +44032=>'L', +55203=>'L', +55296=>'L', +56191=>'L', +56192=>'L', +56319=>'L', +56320=>'L', +57343=>'L', +57344=>'L', +63743=>'L', +63744=>'L', +63745=>'L', +63746=>'L', +63747=>'L', +63748=>'L', +63749=>'L', +63750=>'L', +63751=>'L', +63752=>'L', +63753=>'L', +63754=>'L', +63755=>'L', +63756=>'L', +63757=>'L', +63758=>'L', +63759=>'L', +63760=>'L', +63761=>'L', +63762=>'L', +63763=>'L', +63764=>'L', +63765=>'L', +63766=>'L', +63767=>'L', +63768=>'L', +63769=>'L', +63770=>'L', +63771=>'L', +63772=>'L', +63773=>'L', +63774=>'L', +63775=>'L', +63776=>'L', +63777=>'L', +63778=>'L', +63779=>'L', +63780=>'L', +63781=>'L', +63782=>'L', +63783=>'L', +63784=>'L', +63785=>'L', +63786=>'L', +63787=>'L', +63788=>'L', +63789=>'L', +63790=>'L', +63791=>'L', +63792=>'L', +63793=>'L', +63794=>'L', +63795=>'L', +63796=>'L', +63797=>'L', +63798=>'L', +63799=>'L', +63800=>'L', +63801=>'L', +63802=>'L', +63803=>'L', +63804=>'L', +63805=>'L', +63806=>'L', +63807=>'L', +63808=>'L', +63809=>'L', +63810=>'L', +63811=>'L', +63812=>'L', +63813=>'L', +63814=>'L', +63815=>'L', +63816=>'L', +63817=>'L', +63818=>'L', +63819=>'L', +63820=>'L', +63821=>'L', +63822=>'L', +63823=>'L', +63824=>'L', +63825=>'L', +63826=>'L', +63827=>'L', +63828=>'L', +63829=>'L', +63830=>'L', +63831=>'L', +63832=>'L', +63833=>'L', +63834=>'L', +63835=>'L', +63836=>'L', +63837=>'L', +63838=>'L', +63839=>'L', +63840=>'L', +63841=>'L', +63842=>'L', +63843=>'L', +63844=>'L', +63845=>'L', +63846=>'L', +63847=>'L', +63848=>'L', +63849=>'L', +63850=>'L', +63851=>'L', +63852=>'L', +63853=>'L', +63854=>'L', +63855=>'L', +63856=>'L', +63857=>'L', +63858=>'L', +63859=>'L', +63860=>'L', +63861=>'L', +63862=>'L', +63863=>'L', +63864=>'L', +63865=>'L', +63866=>'L', +63867=>'L', +63868=>'L', +63869=>'L', +63870=>'L', +63871=>'L', +63872=>'L', +63873=>'L', +63874=>'L', +63875=>'L', +63876=>'L', +63877=>'L', +63878=>'L', +63879=>'L', +63880=>'L', +63881=>'L', +63882=>'L', +63883=>'L', +63884=>'L', +63885=>'L', +63886=>'L', +63887=>'L', +63888=>'L', +63889=>'L', +63890=>'L', +63891=>'L', +63892=>'L', +63893=>'L', +63894=>'L', +63895=>'L', +63896=>'L', +63897=>'L', +63898=>'L', +63899=>'L', +63900=>'L', +63901=>'L', +63902=>'L', +63903=>'L', +63904=>'L', +63905=>'L', +63906=>'L', +63907=>'L', +63908=>'L', +63909=>'L', +63910=>'L', +63911=>'L', +63912=>'L', +63913=>'L', +63914=>'L', +63915=>'L', +63916=>'L', +63917=>'L', +63918=>'L', +63919=>'L', +63920=>'L', +63921=>'L', +63922=>'L', +63923=>'L', +63924=>'L', +63925=>'L', +63926=>'L', +63927=>'L', +63928=>'L', +63929=>'L', +63930=>'L', +63931=>'L', +63932=>'L', +63933=>'L', +63934=>'L', +63935=>'L', +63936=>'L', +63937=>'L', +63938=>'L', +63939=>'L', +63940=>'L', +63941=>'L', +63942=>'L', +63943=>'L', +63944=>'L', +63945=>'L', +63946=>'L', +63947=>'L', +63948=>'L', +63949=>'L', +63950=>'L', +63951=>'L', +63952=>'L', +63953=>'L', +63954=>'L', +63955=>'L', +63956=>'L', +63957=>'L', +63958=>'L', +63959=>'L', +63960=>'L', +63961=>'L', +63962=>'L', +63963=>'L', +63964=>'L', +63965=>'L', +63966=>'L', +63967=>'L', +63968=>'L', +63969=>'L', +63970=>'L', +63971=>'L', +63972=>'L', +63973=>'L', +63974=>'L', +63975=>'L', +63976=>'L', +63977=>'L', +63978=>'L', +63979=>'L', +63980=>'L', +63981=>'L', +63982=>'L', +63983=>'L', +63984=>'L', +63985=>'L', +63986=>'L', +63987=>'L', +63988=>'L', +63989=>'L', +63990=>'L', +63991=>'L', +63992=>'L', +63993=>'L', +63994=>'L', +63995=>'L', +63996=>'L', +63997=>'L', +63998=>'L', +63999=>'L', +64000=>'L', +64001=>'L', +64002=>'L', +64003=>'L', +64004=>'L', +64005=>'L', +64006=>'L', +64007=>'L', +64008=>'L', +64009=>'L', +64010=>'L', +64011=>'L', +64012=>'L', +64013=>'L', +64014=>'L', +64015=>'L', +64016=>'L', +64017=>'L', +64018=>'L', +64019=>'L', +64020=>'L', +64021=>'L', +64022=>'L', +64023=>'L', +64024=>'L', +64025=>'L', +64026=>'L', +64027=>'L', +64028=>'L', +64029=>'L', +64030=>'L', +64031=>'L', +64032=>'L', +64033=>'L', +64034=>'L', +64035=>'L', +64036=>'L', +64037=>'L', +64038=>'L', +64039=>'L', +64040=>'L', +64041=>'L', +64042=>'L', +64043=>'L', +64044=>'L', +64045=>'L', +64048=>'L', +64049=>'L', +64050=>'L', +64051=>'L', +64052=>'L', +64053=>'L', +64054=>'L', +64055=>'L', +64056=>'L', +64057=>'L', +64058=>'L', +64059=>'L', +64060=>'L', +64061=>'L', +64062=>'L', +64063=>'L', +64064=>'L', +64065=>'L', +64066=>'L', +64067=>'L', +64068=>'L', +64069=>'L', +64070=>'L', +64071=>'L', +64072=>'L', +64073=>'L', +64074=>'L', +64075=>'L', +64076=>'L', +64077=>'L', +64078=>'L', +64079=>'L', +64080=>'L', +64081=>'L', +64082=>'L', +64083=>'L', +64084=>'L', +64085=>'L', +64086=>'L', +64087=>'L', +64088=>'L', +64089=>'L', +64090=>'L', +64091=>'L', +64092=>'L', +64093=>'L', +64094=>'L', +64095=>'L', +64096=>'L', +64097=>'L', +64098=>'L', +64099=>'L', +64100=>'L', +64101=>'L', +64102=>'L', +64103=>'L', +64104=>'L', +64105=>'L', +64106=>'L', +64112=>'L', +64113=>'L', +64114=>'L', +64115=>'L', +64116=>'L', +64117=>'L', +64118=>'L', +64119=>'L', +64120=>'L', +64121=>'L', +64122=>'L', +64123=>'L', +64124=>'L', +64125=>'L', +64126=>'L', +64127=>'L', +64128=>'L', +64129=>'L', +64130=>'L', +64131=>'L', +64132=>'L', +64133=>'L', +64134=>'L', +64135=>'L', +64136=>'L', +64137=>'L', +64138=>'L', +64139=>'L', +64140=>'L', +64141=>'L', +64142=>'L', +64143=>'L', +64144=>'L', +64145=>'L', +64146=>'L', +64147=>'L', +64148=>'L', +64149=>'L', +64150=>'L', +64151=>'L', +64152=>'L', +64153=>'L', +64154=>'L', +64155=>'L', +64156=>'L', +64157=>'L', +64158=>'L', +64159=>'L', +64160=>'L', +64161=>'L', +64162=>'L', +64163=>'L', +64164=>'L', +64165=>'L', +64166=>'L', +64167=>'L', +64168=>'L', +64169=>'L', +64170=>'L', +64171=>'L', +64172=>'L', +64173=>'L', +64174=>'L', +64175=>'L', +64176=>'L', +64177=>'L', +64178=>'L', +64179=>'L', +64180=>'L', +64181=>'L', +64182=>'L', +64183=>'L', +64184=>'L', +64185=>'L', +64186=>'L', +64187=>'L', +64188=>'L', +64189=>'L', +64190=>'L', +64191=>'L', +64192=>'L', +64193=>'L', +64194=>'L', +64195=>'L', +64196=>'L', +64197=>'L', +64198=>'L', +64199=>'L', +64200=>'L', +64201=>'L', +64202=>'L', +64203=>'L', +64204=>'L', +64205=>'L', +64206=>'L', +64207=>'L', +64208=>'L', +64209=>'L', +64210=>'L', +64211=>'L', +64212=>'L', +64213=>'L', +64214=>'L', +64215=>'L', +64216=>'L', +64217=>'L', +64256=>'L', +64257=>'L', +64258=>'L', +64259=>'L', +64260=>'L', +64261=>'L', +64262=>'L', +64275=>'L', +64276=>'L', +64277=>'L', +64278=>'L', +64279=>'L', +64285=>'R', +64286=>'NSM', +64287=>'R', +64288=>'R', +64289=>'R', +64290=>'R', +64291=>'R', +64292=>'R', +64293=>'R', +64294=>'R', +64295=>'R', +64296=>'R', +64297=>'ES', +64298=>'R', +64299=>'R', +64300=>'R', +64301=>'R', +64302=>'R', +64303=>'R', +64304=>'R', +64305=>'R', +64306=>'R', +64307=>'R', +64308=>'R', +64309=>'R', +64310=>'R', +64312=>'R', +64313=>'R', +64314=>'R', +64315=>'R', +64316=>'R', +64318=>'R', +64320=>'R', +64321=>'R', +64323=>'R', +64324=>'R', +64326=>'R', +64327=>'R', +64328=>'R', +64329=>'R', +64330=>'R', +64331=>'R', +64332=>'R', +64333=>'R', +64334=>'R', +64335=>'R', +64336=>'AL', +64337=>'AL', +64338=>'AL', +64339=>'AL', +64340=>'AL', +64341=>'AL', +64342=>'AL', +64343=>'AL', +64344=>'AL', +64345=>'AL', +64346=>'AL', +64347=>'AL', +64348=>'AL', +64349=>'AL', +64350=>'AL', +64351=>'AL', +64352=>'AL', +64353=>'AL', +64354=>'AL', +64355=>'AL', +64356=>'AL', +64357=>'AL', +64358=>'AL', +64359=>'AL', +64360=>'AL', +64361=>'AL', +64362=>'AL', +64363=>'AL', +64364=>'AL', +64365=>'AL', +64366=>'AL', +64367=>'AL', +64368=>'AL', +64369=>'AL', +64370=>'AL', +64371=>'AL', +64372=>'AL', +64373=>'AL', +64374=>'AL', +64375=>'AL', +64376=>'AL', +64377=>'AL', +64378=>'AL', +64379=>'AL', +64380=>'AL', +64381=>'AL', +64382=>'AL', +64383=>'AL', +64384=>'AL', +64385=>'AL', +64386=>'AL', +64387=>'AL', +64388=>'AL', +64389=>'AL', +64390=>'AL', +64391=>'AL', +64392=>'AL', +64393=>'AL', +64394=>'AL', +64395=>'AL', +64396=>'AL', +64397=>'AL', +64398=>'AL', +64399=>'AL', +64400=>'AL', +64401=>'AL', +64402=>'AL', +64403=>'AL', +64404=>'AL', +64405=>'AL', +64406=>'AL', +64407=>'AL', +64408=>'AL', +64409=>'AL', +64410=>'AL', +64411=>'AL', +64412=>'AL', +64413=>'AL', +64414=>'AL', +64415=>'AL', +64416=>'AL', +64417=>'AL', +64418=>'AL', +64419=>'AL', +64420=>'AL', +64421=>'AL', +64422=>'AL', +64423=>'AL', +64424=>'AL', +64425=>'AL', +64426=>'AL', +64427=>'AL', +64428=>'AL', +64429=>'AL', +64430=>'AL', +64431=>'AL', +64432=>'AL', +64433=>'AL', +64467=>'AL', +64468=>'AL', +64469=>'AL', +64470=>'AL', +64471=>'AL', +64472=>'AL', +64473=>'AL', +64474=>'AL', +64475=>'AL', +64476=>'AL', +64477=>'AL', +64478=>'AL', +64479=>'AL', +64480=>'AL', +64481=>'AL', +64482=>'AL', +64483=>'AL', +64484=>'AL', +64485=>'AL', +64486=>'AL', +64487=>'AL', +64488=>'AL', +64489=>'AL', +64490=>'AL', +64491=>'AL', +64492=>'AL', +64493=>'AL', +64494=>'AL', +64495=>'AL', +64496=>'AL', +64497=>'AL', +64498=>'AL', +64499=>'AL', +64500=>'AL', +64501=>'AL', +64502=>'AL', +64503=>'AL', +64504=>'AL', +64505=>'AL', +64506=>'AL', +64507=>'AL', +64508=>'AL', +64509=>'AL', +64510=>'AL', +64511=>'AL', +64512=>'AL', +64513=>'AL', +64514=>'AL', +64515=>'AL', +64516=>'AL', +64517=>'AL', +64518=>'AL', +64519=>'AL', +64520=>'AL', +64521=>'AL', +64522=>'AL', +64523=>'AL', +64524=>'AL', +64525=>'AL', +64526=>'AL', +64527=>'AL', +64528=>'AL', +64529=>'AL', +64530=>'AL', +64531=>'AL', +64532=>'AL', +64533=>'AL', +64534=>'AL', +64535=>'AL', +64536=>'AL', +64537=>'AL', +64538=>'AL', +64539=>'AL', +64540=>'AL', +64541=>'AL', +64542=>'AL', +64543=>'AL', +64544=>'AL', +64545=>'AL', +64546=>'AL', +64547=>'AL', +64548=>'AL', +64549=>'AL', +64550=>'AL', +64551=>'AL', +64552=>'AL', +64553=>'AL', +64554=>'AL', +64555=>'AL', +64556=>'AL', +64557=>'AL', +64558=>'AL', +64559=>'AL', +64560=>'AL', +64561=>'AL', +64562=>'AL', +64563=>'AL', +64564=>'AL', +64565=>'AL', +64566=>'AL', +64567=>'AL', +64568=>'AL', +64569=>'AL', +64570=>'AL', +64571=>'AL', +64572=>'AL', +64573=>'AL', +64574=>'AL', +64575=>'AL', +64576=>'AL', +64577=>'AL', +64578=>'AL', +64579=>'AL', +64580=>'AL', +64581=>'AL', +64582=>'AL', +64583=>'AL', +64584=>'AL', +64585=>'AL', +64586=>'AL', +64587=>'AL', +64588=>'AL', +64589=>'AL', +64590=>'AL', +64591=>'AL', +64592=>'AL', +64593=>'AL', +64594=>'AL', +64595=>'AL', +64596=>'AL', +64597=>'AL', +64598=>'AL', +64599=>'AL', +64600=>'AL', +64601=>'AL', +64602=>'AL', +64603=>'AL', +64604=>'AL', +64605=>'AL', +64606=>'AL', +64607=>'AL', +64608=>'AL', +64609=>'AL', +64610=>'AL', +64611=>'AL', +64612=>'AL', +64613=>'AL', +64614=>'AL', +64615=>'AL', +64616=>'AL', +64617=>'AL', +64618=>'AL', +64619=>'AL', +64620=>'AL', +64621=>'AL', +64622=>'AL', +64623=>'AL', +64624=>'AL', +64625=>'AL', +64626=>'AL', +64627=>'AL', +64628=>'AL', +64629=>'AL', +64630=>'AL', +64631=>'AL', +64632=>'AL', +64633=>'AL', +64634=>'AL', +64635=>'AL', +64636=>'AL', +64637=>'AL', +64638=>'AL', +64639=>'AL', +64640=>'AL', +64641=>'AL', +64642=>'AL', +64643=>'AL', +64644=>'AL', +64645=>'AL', +64646=>'AL', +64647=>'AL', +64648=>'AL', +64649=>'AL', +64650=>'AL', +64651=>'AL', +64652=>'AL', +64653=>'AL', +64654=>'AL', +64655=>'AL', +64656=>'AL', +64657=>'AL', +64658=>'AL', +64659=>'AL', +64660=>'AL', +64661=>'AL', +64662=>'AL', +64663=>'AL', +64664=>'AL', +64665=>'AL', +64666=>'AL', +64667=>'AL', +64668=>'AL', +64669=>'AL', +64670=>'AL', +64671=>'AL', +64672=>'AL', +64673=>'AL', +64674=>'AL', +64675=>'AL', +64676=>'AL', +64677=>'AL', +64678=>'AL', +64679=>'AL', +64680=>'AL', +64681=>'AL', +64682=>'AL', +64683=>'AL', +64684=>'AL', +64685=>'AL', +64686=>'AL', +64687=>'AL', +64688=>'AL', +64689=>'AL', +64690=>'AL', +64691=>'AL', +64692=>'AL', +64693=>'AL', +64694=>'AL', +64695=>'AL', +64696=>'AL', +64697=>'AL', +64698=>'AL', +64699=>'AL', +64700=>'AL', +64701=>'AL', +64702=>'AL', +64703=>'AL', +64704=>'AL', +64705=>'AL', +64706=>'AL', +64707=>'AL', +64708=>'AL', +64709=>'AL', +64710=>'AL', +64711=>'AL', +64712=>'AL', +64713=>'AL', +64714=>'AL', +64715=>'AL', +64716=>'AL', +64717=>'AL', +64718=>'AL', +64719=>'AL', +64720=>'AL', +64721=>'AL', +64722=>'AL', +64723=>'AL', +64724=>'AL', +64725=>'AL', +64726=>'AL', +64727=>'AL', +64728=>'AL', +64729=>'AL', +64730=>'AL', +64731=>'AL', +64732=>'AL', +64733=>'AL', +64734=>'AL', +64735=>'AL', +64736=>'AL', +64737=>'AL', +64738=>'AL', +64739=>'AL', +64740=>'AL', +64741=>'AL', +64742=>'AL', +64743=>'AL', +64744=>'AL', +64745=>'AL', +64746=>'AL', +64747=>'AL', +64748=>'AL', +64749=>'AL', +64750=>'AL', +64751=>'AL', +64752=>'AL', +64753=>'AL', +64754=>'AL', +64755=>'AL', +64756=>'AL', +64757=>'AL', +64758=>'AL', +64759=>'AL', +64760=>'AL', +64761=>'AL', +64762=>'AL', +64763=>'AL', +64764=>'AL', +64765=>'AL', +64766=>'AL', +64767=>'AL', +64768=>'AL', +64769=>'AL', +64770=>'AL', +64771=>'AL', +64772=>'AL', +64773=>'AL', +64774=>'AL', +64775=>'AL', +64776=>'AL', +64777=>'AL', +64778=>'AL', +64779=>'AL', +64780=>'AL', +64781=>'AL', +64782=>'AL', +64783=>'AL', +64784=>'AL', +64785=>'AL', +64786=>'AL', +64787=>'AL', +64788=>'AL', +64789=>'AL', +64790=>'AL', +64791=>'AL', +64792=>'AL', +64793=>'AL', +64794=>'AL', +64795=>'AL', +64796=>'AL', +64797=>'AL', +64798=>'AL', +64799=>'AL', +64800=>'AL', +64801=>'AL', +64802=>'AL', +64803=>'AL', +64804=>'AL', +64805=>'AL', +64806=>'AL', +64807=>'AL', +64808=>'AL', +64809=>'AL', +64810=>'AL', +64811=>'AL', +64812=>'AL', +64813=>'AL', +64814=>'AL', +64815=>'AL', +64816=>'AL', +64817=>'AL', +64818=>'AL', +64819=>'AL', +64820=>'AL', +64821=>'AL', +64822=>'AL', +64823=>'AL', +64824=>'AL', +64825=>'AL', +64826=>'AL', +64827=>'AL', +64828=>'AL', +64829=>'AL', +64830=>'ON', +64831=>'ON', +64848=>'AL', +64849=>'AL', +64850=>'AL', +64851=>'AL', +64852=>'AL', +64853=>'AL', +64854=>'AL', +64855=>'AL', +64856=>'AL', +64857=>'AL', +64858=>'AL', +64859=>'AL', +64860=>'AL', +64861=>'AL', +64862=>'AL', +64863=>'AL', +64864=>'AL', +64865=>'AL', +64866=>'AL', +64867=>'AL', +64868=>'AL', +64869=>'AL', +64870=>'AL', +64871=>'AL', +64872=>'AL', +64873=>'AL', +64874=>'AL', +64875=>'AL', +64876=>'AL', +64877=>'AL', +64878=>'AL', +64879=>'AL', +64880=>'AL', +64881=>'AL', +64882=>'AL', +64883=>'AL', +64884=>'AL', +64885=>'AL', +64886=>'AL', +64887=>'AL', +64888=>'AL', +64889=>'AL', +64890=>'AL', +64891=>'AL', +64892=>'AL', +64893=>'AL', +64894=>'AL', +64895=>'AL', +64896=>'AL', +64897=>'AL', +64898=>'AL', +64899=>'AL', +64900=>'AL', +64901=>'AL', +64902=>'AL', +64903=>'AL', +64904=>'AL', +64905=>'AL', +64906=>'AL', +64907=>'AL', +64908=>'AL', +64909=>'AL', +64910=>'AL', +64911=>'AL', +64914=>'AL', +64915=>'AL', +64916=>'AL', +64917=>'AL', +64918=>'AL', +64919=>'AL', +64920=>'AL', +64921=>'AL', +64922=>'AL', +64923=>'AL', +64924=>'AL', +64925=>'AL', +64926=>'AL', +64927=>'AL', +64928=>'AL', +64929=>'AL', +64930=>'AL', +64931=>'AL', +64932=>'AL', +64933=>'AL', +64934=>'AL', +64935=>'AL', +64936=>'AL', +64937=>'AL', +64938=>'AL', +64939=>'AL', +64940=>'AL', +64941=>'AL', +64942=>'AL', +64943=>'AL', +64944=>'AL', +64945=>'AL', +64946=>'AL', +64947=>'AL', +64948=>'AL', +64949=>'AL', +64950=>'AL', +64951=>'AL', +64952=>'AL', +64953=>'AL', +64954=>'AL', +64955=>'AL', +64956=>'AL', +64957=>'AL', +64958=>'AL', +64959=>'AL', +64960=>'AL', +64961=>'AL', +64962=>'AL', +64963=>'AL', +64964=>'AL', +64965=>'AL', +64966=>'AL', +64967=>'AL', +65008=>'AL', +65009=>'AL', +65010=>'AL', +65011=>'AL', +65012=>'AL', +65013=>'AL', +65014=>'AL', +65015=>'AL', +65016=>'AL', +65017=>'AL', +65018=>'AL', +65019=>'AL', +65020=>'AL', +65021=>'ON', +65024=>'NSM', +65025=>'NSM', +65026=>'NSM', +65027=>'NSM', +65028=>'NSM', +65029=>'NSM', +65030=>'NSM', +65031=>'NSM', +65032=>'NSM', +65033=>'NSM', +65034=>'NSM', +65035=>'NSM', +65036=>'NSM', +65037=>'NSM', +65038=>'NSM', +65039=>'NSM', +65040=>'ON', +65041=>'ON', +65042=>'ON', +65043=>'ON', +65044=>'ON', +65045=>'ON', +65046=>'ON', +65047=>'ON', +65048=>'ON', +65049=>'ON', +65056=>'NSM', +65057=>'NSM', +65058=>'NSM', +65059=>'NSM', +65072=>'ON', +65073=>'ON', +65074=>'ON', +65075=>'ON', +65076=>'ON', +65077=>'ON', +65078=>'ON', +65079=>'ON', +65080=>'ON', +65081=>'ON', +65082=>'ON', +65083=>'ON', +65084=>'ON', +65085=>'ON', +65086=>'ON', +65087=>'ON', +65088=>'ON', +65089=>'ON', +65090=>'ON', +65091=>'ON', +65092=>'ON', +65093=>'ON', +65094=>'ON', +65095=>'ON', +65096=>'ON', +65097=>'ON', +65098=>'ON', +65099=>'ON', +65100=>'ON', +65101=>'ON', +65102=>'ON', +65103=>'ON', +65104=>'CS', +65105=>'ON', +65106=>'CS', +65108=>'ON', +65109=>'CS', +65110=>'ON', +65111=>'ON', +65112=>'ON', +65113=>'ON', +65114=>'ON', +65115=>'ON', +65116=>'ON', +65117=>'ON', +65118=>'ON', +65119=>'ET', +65120=>'ON', +65121=>'ON', +65122=>'ES', +65123=>'ES', +65124=>'ON', +65125=>'ON', +65126=>'ON', +65128=>'ON', +65129=>'ET', +65130=>'ET', +65131=>'ON', +65136=>'AL', +65137=>'AL', +65138=>'AL', +65139=>'AL', +65140=>'AL', +65142=>'AL', +65143=>'AL', +65144=>'AL', +65145=>'AL', +65146=>'AL', +65147=>'AL', +65148=>'AL', +65149=>'AL', +65150=>'AL', +65151=>'AL', +65152=>'AL', +65153=>'AL', +65154=>'AL', +65155=>'AL', +65156=>'AL', +65157=>'AL', +65158=>'AL', +65159=>'AL', +65160=>'AL', +65161=>'AL', +65162=>'AL', +65163=>'AL', +65164=>'AL', +65165=>'AL', +65166=>'AL', +65167=>'AL', +65168=>'AL', +65169=>'AL', +65170=>'AL', +65171=>'AL', +65172=>'AL', +65173=>'AL', +65174=>'AL', +65175=>'AL', +65176=>'AL', +65177=>'AL', +65178=>'AL', +65179=>'AL', +65180=>'AL', +65181=>'AL', +65182=>'AL', +65183=>'AL', +65184=>'AL', +65185=>'AL', +65186=>'AL', +65187=>'AL', +65188=>'AL', +65189=>'AL', +65190=>'AL', +65191=>'AL', +65192=>'AL', +65193=>'AL', +65194=>'AL', +65195=>'AL', +65196=>'AL', +65197=>'AL', +65198=>'AL', +65199=>'AL', +65200=>'AL', +65201=>'AL', +65202=>'AL', +65203=>'AL', +65204=>'AL', +65205=>'AL', +65206=>'AL', +65207=>'AL', +65208=>'AL', +65209=>'AL', +65210=>'AL', +65211=>'AL', +65212=>'AL', +65213=>'AL', +65214=>'AL', +65215=>'AL', +65216=>'AL', +65217=>'AL', +65218=>'AL', +65219=>'AL', +65220=>'AL', +65221=>'AL', +65222=>'AL', +65223=>'AL', +65224=>'AL', +65225=>'AL', +65226=>'AL', +65227=>'AL', +65228=>'AL', +65229=>'AL', +65230=>'AL', +65231=>'AL', +65232=>'AL', +65233=>'AL', +65234=>'AL', +65235=>'AL', +65236=>'AL', +65237=>'AL', +65238=>'AL', +65239=>'AL', +65240=>'AL', +65241=>'AL', +65242=>'AL', +65243=>'AL', +65244=>'AL', +65245=>'AL', +65246=>'AL', +65247=>'AL', +65248=>'AL', +65249=>'AL', +65250=>'AL', +65251=>'AL', +65252=>'AL', +65253=>'AL', +65254=>'AL', +65255=>'AL', +65256=>'AL', +65257=>'AL', +65258=>'AL', +65259=>'AL', +65260=>'AL', +65261=>'AL', +65262=>'AL', +65263=>'AL', +65264=>'AL', +65265=>'AL', +65266=>'AL', +65267=>'AL', +65268=>'AL', +65269=>'AL', +65270=>'AL', +65271=>'AL', +65272=>'AL', +65273=>'AL', +65274=>'AL', +65275=>'AL', +65276=>'AL', +65279=>'BN', +65281=>'ON', +65282=>'ON', +65283=>'ET', +65284=>'ET', +65285=>'ET', +65286=>'ON', +65287=>'ON', +65288=>'ON', +65289=>'ON', +65290=>'ON', +65291=>'ES', +65292=>'CS', +65293=>'ES', +65294=>'CS', +65295=>'CS', +65296=>'EN', +65297=>'EN', +65298=>'EN', +65299=>'EN', +65300=>'EN', +65301=>'EN', +65302=>'EN', +65303=>'EN', +65304=>'EN', +65305=>'EN', +65306=>'CS', +65307=>'ON', +65308=>'ON', +65309=>'ON', +65310=>'ON', +65311=>'ON', +65312=>'ON', +65313=>'L', +65314=>'L', +65315=>'L', +65316=>'L', +65317=>'L', +65318=>'L', +65319=>'L', +65320=>'L', +65321=>'L', +65322=>'L', +65323=>'L', +65324=>'L', +65325=>'L', +65326=>'L', +65327=>'L', +65328=>'L', +65329=>'L', +65330=>'L', +65331=>'L', +65332=>'L', +65333=>'L', +65334=>'L', +65335=>'L', +65336=>'L', +65337=>'L', +65338=>'L', +65339=>'ON', +65340=>'ON', +65341=>'ON', +65342=>'ON', +65343=>'ON', +65344=>'ON', +65345=>'L', +65346=>'L', +65347=>'L', +65348=>'L', +65349=>'L', +65350=>'L', +65351=>'L', +65352=>'L', +65353=>'L', +65354=>'L', +65355=>'L', +65356=>'L', +65357=>'L', +65358=>'L', +65359=>'L', +65360=>'L', +65361=>'L', +65362=>'L', +65363=>'L', +65364=>'L', +65365=>'L', +65366=>'L', +65367=>'L', +65368=>'L', +65369=>'L', +65370=>'L', +65371=>'ON', +65372=>'ON', +65373=>'ON', +65374=>'ON', +65375=>'ON', +65376=>'ON', +65377=>'ON', +65378=>'ON', +65379=>'ON', +65380=>'ON', +65381=>'ON', +65382=>'L', +65383=>'L', +65384=>'L', +65385=>'L', +65386=>'L', +65387=>'L', +65388=>'L', +65389=>'L', +65390=>'L', +65391=>'L', +65392=>'L', +65393=>'L', +65394=>'L', +65395=>'L', +65396=>'L', +65397=>'L', +65398=>'L', +65399=>'L', +65400=>'L', +65401=>'L', +65402=>'L', +65403=>'L', +65404=>'L', +65405=>'L', +65406=>'L', +65407=>'L', +65408=>'L', +65409=>'L', +65410=>'L', +65411=>'L', +65412=>'L', +65413=>'L', +65414=>'L', +65415=>'L', +65416=>'L', +65417=>'L', +65418=>'L', +65419=>'L', +65420=>'L', +65421=>'L', +65422=>'L', +65423=>'L', +65424=>'L', +65425=>'L', +65426=>'L', +65427=>'L', +65428=>'L', +65429=>'L', +65430=>'L', +65431=>'L', +65432=>'L', +65433=>'L', +65434=>'L', +65435=>'L', +65436=>'L', +65437=>'L', +65438=>'L', +65439=>'L', +65440=>'L', +65441=>'L', +65442=>'L', +65443=>'L', +65444=>'L', +65445=>'L', +65446=>'L', +65447=>'L', +65448=>'L', +65449=>'L', +65450=>'L', +65451=>'L', +65452=>'L', +65453=>'L', +65454=>'L', +65455=>'L', +65456=>'L', +65457=>'L', +65458=>'L', +65459=>'L', +65460=>'L', +65461=>'L', +65462=>'L', +65463=>'L', +65464=>'L', +65465=>'L', +65466=>'L', +65467=>'L', +65468=>'L', +65469=>'L', +65470=>'L', +65474=>'L', +65475=>'L', +65476=>'L', +65477=>'L', +65478=>'L', +65479=>'L', +65482=>'L', +65483=>'L', +65484=>'L', +65485=>'L', +65486=>'L', +65487=>'L', +65490=>'L', +65491=>'L', +65492=>'L', +65493=>'L', +65494=>'L', +65495=>'L', +65498=>'L', +65499=>'L', +65500=>'L', +65504=>'ET', +65505=>'ET', +65506=>'ON', +65507=>'ON', +65508=>'ON', +65509=>'ET', +65510=>'ET', +65512=>'ON', +65513=>'ON', +65514=>'ON', +65515=>'ON', +65516=>'ON', +65517=>'ON', +65518=>'ON', +65529=>'ON', +65530=>'ON', +65531=>'ON', +65532=>'ON', +65533=>'ON', +65536=>'L', +65537=>'L', +65538=>'L', +65539=>'L', +65540=>'L', +65541=>'L', +65542=>'L', +65543=>'L', +65544=>'L', +65545=>'L', +65546=>'L', +65547=>'L', +65549=>'L', +65550=>'L', +65551=>'L', +65552=>'L', +65553=>'L', +65554=>'L', +65555=>'L', +65556=>'L', +65557=>'L', +65558=>'L', +65559=>'L', +65560=>'L', +65561=>'L', +65562=>'L', +65563=>'L', +65564=>'L', +65565=>'L', +65566=>'L', +65567=>'L', +65568=>'L', +65569=>'L', +65570=>'L', +65571=>'L', +65572=>'L', +65573=>'L', +65574=>'L', +65576=>'L', +65577=>'L', +65578=>'L', +65579=>'L', +65580=>'L', +65581=>'L', +65582=>'L', +65583=>'L', +65584=>'L', +65585=>'L', +65586=>'L', +65587=>'L', +65588=>'L', +65589=>'L', +65590=>'L', +65591=>'L', +65592=>'L', +65593=>'L', +65594=>'L', +65596=>'L', +65597=>'L', +65599=>'L', +65600=>'L', +65601=>'L', +65602=>'L', +65603=>'L', +65604=>'L', +65605=>'L', +65606=>'L', +65607=>'L', +65608=>'L', +65609=>'L', +65610=>'L', +65611=>'L', +65612=>'L', +65613=>'L', +65616=>'L', +65617=>'L', +65618=>'L', +65619=>'L', +65620=>'L', +65621=>'L', +65622=>'L', +65623=>'L', +65624=>'L', +65625=>'L', +65626=>'L', +65627=>'L', +65628=>'L', +65629=>'L', +65664=>'L', +65665=>'L', +65666=>'L', +65667=>'L', +65668=>'L', +65669=>'L', +65670=>'L', +65671=>'L', +65672=>'L', +65673=>'L', +65674=>'L', +65675=>'L', +65676=>'L', +65677=>'L', +65678=>'L', +65679=>'L', +65680=>'L', +65681=>'L', +65682=>'L', +65683=>'L', +65684=>'L', +65685=>'L', +65686=>'L', +65687=>'L', +65688=>'L', +65689=>'L', +65690=>'L', +65691=>'L', +65692=>'L', +65693=>'L', +65694=>'L', +65695=>'L', +65696=>'L', +65697=>'L', +65698=>'L', +65699=>'L', +65700=>'L', +65701=>'L', +65702=>'L', +65703=>'L', +65704=>'L', +65705=>'L', +65706=>'L', +65707=>'L', +65708=>'L', +65709=>'L', +65710=>'L', +65711=>'L', +65712=>'L', +65713=>'L', +65714=>'L', +65715=>'L', +65716=>'L', +65717=>'L', +65718=>'L', +65719=>'L', +65720=>'L', +65721=>'L', +65722=>'L', +65723=>'L', +65724=>'L', +65725=>'L', +65726=>'L', +65727=>'L', +65728=>'L', +65729=>'L', +65730=>'L', +65731=>'L', +65732=>'L', +65733=>'L', +65734=>'L', +65735=>'L', +65736=>'L', +65737=>'L', +65738=>'L', +65739=>'L', +65740=>'L', +65741=>'L', +65742=>'L', +65743=>'L', +65744=>'L', +65745=>'L', +65746=>'L', +65747=>'L', +65748=>'L', +65749=>'L', +65750=>'L', +65751=>'L', +65752=>'L', +65753=>'L', +65754=>'L', +65755=>'L', +65756=>'L', +65757=>'L', +65758=>'L', +65759=>'L', +65760=>'L', +65761=>'L', +65762=>'L', +65763=>'L', +65764=>'L', +65765=>'L', +65766=>'L', +65767=>'L', +65768=>'L', +65769=>'L', +65770=>'L', +65771=>'L', +65772=>'L', +65773=>'L', +65774=>'L', +65775=>'L', +65776=>'L', +65777=>'L', +65778=>'L', +65779=>'L', +65780=>'L', +65781=>'L', +65782=>'L', +65783=>'L', +65784=>'L', +65785=>'L', +65786=>'L', +65792=>'L', +65793=>'ON', +65794=>'L', +65799=>'L', +65800=>'L', +65801=>'L', +65802=>'L', +65803=>'L', +65804=>'L', +65805=>'L', +65806=>'L', +65807=>'L', +65808=>'L', +65809=>'L', +65810=>'L', +65811=>'L', +65812=>'L', +65813=>'L', +65814=>'L', +65815=>'L', +65816=>'L', +65817=>'L', +65818=>'L', +65819=>'L', +65820=>'L', +65821=>'L', +65822=>'L', +65823=>'L', +65824=>'L', +65825=>'L', +65826=>'L', +65827=>'L', +65828=>'L', +65829=>'L', +65830=>'L', +65831=>'L', +65832=>'L', +65833=>'L', +65834=>'L', +65835=>'L', +65836=>'L', +65837=>'L', +65838=>'L', +65839=>'L', +65840=>'L', +65841=>'L', +65842=>'L', +65843=>'L', +65847=>'L', +65848=>'L', +65849=>'L', +65850=>'L', +65851=>'L', +65852=>'L', +65853=>'L', +65854=>'L', +65855=>'L', +65856=>'ON', +65857=>'ON', +65858=>'ON', +65859=>'ON', +65860=>'ON', +65861=>'ON', +65862=>'ON', +65863=>'ON', +65864=>'ON', +65865=>'ON', +65866=>'ON', +65867=>'ON', +65868=>'ON', +65869=>'ON', +65870=>'ON', +65871=>'ON', +65872=>'ON', +65873=>'ON', +65874=>'ON', +65875=>'ON', +65876=>'ON', +65877=>'ON', +65878=>'ON', +65879=>'ON', +65880=>'ON', +65881=>'ON', +65882=>'ON', +65883=>'ON', +65884=>'ON', +65885=>'ON', +65886=>'ON', +65887=>'ON', +65888=>'ON', +65889=>'ON', +65890=>'ON', +65891=>'ON', +65892=>'ON', +65893=>'ON', +65894=>'ON', +65895=>'ON', +65896=>'ON', +65897=>'ON', +65898=>'ON', +65899=>'ON', +65900=>'ON', +65901=>'ON', +65902=>'ON', +65903=>'ON', +65904=>'ON', +65905=>'ON', +65906=>'ON', +65907=>'ON', +65908=>'ON', +65909=>'ON', +65910=>'ON', +65911=>'ON', +65912=>'ON', +65913=>'ON', +65914=>'ON', +65915=>'ON', +65916=>'ON', +65917=>'ON', +65918=>'ON', +65919=>'ON', +65920=>'ON', +65921=>'ON', +65922=>'ON', +65923=>'ON', +65924=>'ON', +65925=>'ON', +65926=>'ON', +65927=>'ON', +65928=>'ON', +65929=>'ON', +65930=>'ON', +66304=>'L', +66305=>'L', +66306=>'L', +66307=>'L', +66308=>'L', +66309=>'L', +66310=>'L', +66311=>'L', +66312=>'L', +66313=>'L', +66314=>'L', +66315=>'L', +66316=>'L', +66317=>'L', +66318=>'L', +66319=>'L', +66320=>'L', +66321=>'L', +66322=>'L', +66323=>'L', +66324=>'L', +66325=>'L', +66326=>'L', +66327=>'L', +66328=>'L', +66329=>'L', +66330=>'L', +66331=>'L', +66332=>'L', +66333=>'L', +66334=>'L', +66336=>'L', +66337=>'L', +66338=>'L', +66339=>'L', +66352=>'L', +66353=>'L', +66354=>'L', +66355=>'L', +66356=>'L', +66357=>'L', +66358=>'L', +66359=>'L', +66360=>'L', +66361=>'L', +66362=>'L', +66363=>'L', +66364=>'L', +66365=>'L', +66366=>'L', +66367=>'L', +66368=>'L', +66369=>'L', +66370=>'L', +66371=>'L', +66372=>'L', +66373=>'L', +66374=>'L', +66375=>'L', +66376=>'L', +66377=>'L', +66378=>'L', +66432=>'L', +66433=>'L', +66434=>'L', +66435=>'L', +66436=>'L', +66437=>'L', +66438=>'L', +66439=>'L', +66440=>'L', +66441=>'L', +66442=>'L', +66443=>'L', +66444=>'L', +66445=>'L', +66446=>'L', +66447=>'L', +66448=>'L', +66449=>'L', +66450=>'L', +66451=>'L', +66452=>'L', +66453=>'L', +66454=>'L', +66455=>'L', +66456=>'L', +66457=>'L', +66458=>'L', +66459=>'L', +66460=>'L', +66461=>'L', +66463=>'L', +66464=>'L', +66465=>'L', +66466=>'L', +66467=>'L', +66468=>'L', +66469=>'L', +66470=>'L', +66471=>'L', +66472=>'L', +66473=>'L', +66474=>'L', +66475=>'L', +66476=>'L', +66477=>'L', +66478=>'L', +66479=>'L', +66480=>'L', +66481=>'L', +66482=>'L', +66483=>'L', +66484=>'L', +66485=>'L', +66486=>'L', +66487=>'L', +66488=>'L', +66489=>'L', +66490=>'L', +66491=>'L', +66492=>'L', +66493=>'L', +66494=>'L', +66495=>'L', +66496=>'L', +66497=>'L', +66498=>'L', +66499=>'L', +66504=>'L', +66505=>'L', +66506=>'L', +66507=>'L', +66508=>'L', +66509=>'L', +66510=>'L', +66511=>'L', +66512=>'L', +66513=>'L', +66514=>'L', +66515=>'L', +66516=>'L', +66517=>'L', +66560=>'L', +66561=>'L', +66562=>'L', +66563=>'L', +66564=>'L', +66565=>'L', +66566=>'L', +66567=>'L', +66568=>'L', +66569=>'L', +66570=>'L', +66571=>'L', +66572=>'L', +66573=>'L', +66574=>'L', +66575=>'L', +66576=>'L', +66577=>'L', +66578=>'L', +66579=>'L', +66580=>'L', +66581=>'L', +66582=>'L', +66583=>'L', +66584=>'L', +66585=>'L', +66586=>'L', +66587=>'L', +66588=>'L', +66589=>'L', +66590=>'L', +66591=>'L', +66592=>'L', +66593=>'L', +66594=>'L', +66595=>'L', +66596=>'L', +66597=>'L', +66598=>'L', +66599=>'L', +66600=>'L', +66601=>'L', +66602=>'L', +66603=>'L', +66604=>'L', +66605=>'L', +66606=>'L', +66607=>'L', +66608=>'L', +66609=>'L', +66610=>'L', +66611=>'L', +66612=>'L', +66613=>'L', +66614=>'L', +66615=>'L', +66616=>'L', +66617=>'L', +66618=>'L', +66619=>'L', +66620=>'L', +66621=>'L', +66622=>'L', +66623=>'L', +66624=>'L', +66625=>'L', +66626=>'L', +66627=>'L', +66628=>'L', +66629=>'L', +66630=>'L', +66631=>'L', +66632=>'L', +66633=>'L', +66634=>'L', +66635=>'L', +66636=>'L', +66637=>'L', +66638=>'L', +66639=>'L', +66640=>'L', +66641=>'L', +66642=>'L', +66643=>'L', +66644=>'L', +66645=>'L', +66646=>'L', +66647=>'L', +66648=>'L', +66649=>'L', +66650=>'L', +66651=>'L', +66652=>'L', +66653=>'L', +66654=>'L', +66655=>'L', +66656=>'L', +66657=>'L', +66658=>'L', +66659=>'L', +66660=>'L', +66661=>'L', +66662=>'L', +66663=>'L', +66664=>'L', +66665=>'L', +66666=>'L', +66667=>'L', +66668=>'L', +66669=>'L', +66670=>'L', +66671=>'L', +66672=>'L', +66673=>'L', +66674=>'L', +66675=>'L', +66676=>'L', +66677=>'L', +66678=>'L', +66679=>'L', +66680=>'L', +66681=>'L', +66682=>'L', +66683=>'L', +66684=>'L', +66685=>'L', +66686=>'L', +66687=>'L', +66688=>'L', +66689=>'L', +66690=>'L', +66691=>'L', +66692=>'L', +66693=>'L', +66694=>'L', +66695=>'L', +66696=>'L', +66697=>'L', +66698=>'L', +66699=>'L', +66700=>'L', +66701=>'L', +66702=>'L', +66703=>'L', +66704=>'L', +66705=>'L', +66706=>'L', +66707=>'L', +66708=>'L', +66709=>'L', +66710=>'L', +66711=>'L', +66712=>'L', +66713=>'L', +66714=>'L', +66715=>'L', +66716=>'L', +66717=>'L', +66720=>'L', +66721=>'L', +66722=>'L', +66723=>'L', +66724=>'L', +66725=>'L', +66726=>'L', +66727=>'L', +66728=>'L', +66729=>'L', +67584=>'R', +67585=>'R', +67586=>'R', +67587=>'R', +67588=>'R', +67589=>'R', +67592=>'R', +67594=>'R', +67595=>'R', +67596=>'R', +67597=>'R', +67598=>'R', +67599=>'R', +67600=>'R', +67601=>'R', +67602=>'R', +67603=>'R', +67604=>'R', +67605=>'R', +67606=>'R', +67607=>'R', +67608=>'R', +67609=>'R', +67610=>'R', +67611=>'R', +67612=>'R', +67613=>'R', +67614=>'R', +67615=>'R', +67616=>'R', +67617=>'R', +67618=>'R', +67619=>'R', +67620=>'R', +67621=>'R', +67622=>'R', +67623=>'R', +67624=>'R', +67625=>'R', +67626=>'R', +67627=>'R', +67628=>'R', +67629=>'R', +67630=>'R', +67631=>'R', +67632=>'R', +67633=>'R', +67634=>'R', +67635=>'R', +67636=>'R', +67637=>'R', +67639=>'R', +67640=>'R', +67644=>'R', +67647=>'R', +67840=>'R', +67841=>'R', +67842=>'R', +67843=>'R', +67844=>'R', +67845=>'R', +67846=>'R', +67847=>'R', +67848=>'R', +67849=>'R', +67850=>'R', +67851=>'R', +67852=>'R', +67853=>'R', +67854=>'R', +67855=>'R', +67856=>'R', +67857=>'R', +67858=>'R', +67859=>'R', +67860=>'R', +67861=>'R', +67862=>'R', +67863=>'R', +67864=>'R', +67865=>'R', +67871=>'ON', +68096=>'R', +68097=>'NSM', +68098=>'NSM', +68099=>'NSM', +68101=>'NSM', +68102=>'NSM', +68108=>'NSM', +68109=>'NSM', +68110=>'NSM', +68111=>'NSM', +68112=>'R', +68113=>'R', +68114=>'R', +68115=>'R', +68117=>'R', +68118=>'R', +68119=>'R', +68121=>'R', +68122=>'R', +68123=>'R', +68124=>'R', +68125=>'R', +68126=>'R', +68127=>'R', +68128=>'R', +68129=>'R', +68130=>'R', +68131=>'R', +68132=>'R', +68133=>'R', +68134=>'R', +68135=>'R', +68136=>'R', +68137=>'R', +68138=>'R', +68139=>'R', +68140=>'R', +68141=>'R', +68142=>'R', +68143=>'R', +68144=>'R', +68145=>'R', +68146=>'R', +68147=>'R', +68152=>'NSM', +68153=>'NSM', +68154=>'NSM', +68159=>'NSM', +68160=>'R', +68161=>'R', +68162=>'R', +68163=>'R', +68164=>'R', +68165=>'R', +68166=>'R', +68167=>'R', +68176=>'R', +68177=>'R', +68178=>'R', +68179=>'R', +68180=>'R', +68181=>'R', +68182=>'R', +68183=>'R', +68184=>'R', +73728=>'L', +73729=>'L', +73730=>'L', +73731=>'L', +73732=>'L', +73733=>'L', +73734=>'L', +73735=>'L', +73736=>'L', +73737=>'L', +73738=>'L', +73739=>'L', +73740=>'L', +73741=>'L', +73742=>'L', +73743=>'L', +73744=>'L', +73745=>'L', +73746=>'L', +73747=>'L', +73748=>'L', +73749=>'L', +73750=>'L', +73751=>'L', +73752=>'L', +73753=>'L', +73754=>'L', +73755=>'L', +73756=>'L', +73757=>'L', +73758=>'L', +73759=>'L', +73760=>'L', +73761=>'L', +73762=>'L', +73763=>'L', +73764=>'L', +73765=>'L', +73766=>'L', +73767=>'L', +73768=>'L', +73769=>'L', +73770=>'L', +73771=>'L', +73772=>'L', +73773=>'L', +73774=>'L', +73775=>'L', +73776=>'L', +73777=>'L', +73778=>'L', +73779=>'L', +73780=>'L', +73781=>'L', +73782=>'L', +73783=>'L', +73784=>'L', +73785=>'L', +73786=>'L', +73787=>'L', +73788=>'L', +73789=>'L', +73790=>'L', +73791=>'L', +73792=>'L', +73793=>'L', +73794=>'L', +73795=>'L', +73796=>'L', +73797=>'L', +73798=>'L', +73799=>'L', +73800=>'L', +73801=>'L', +73802=>'L', +73803=>'L', +73804=>'L', +73805=>'L', +73806=>'L', +73807=>'L', +73808=>'L', +73809=>'L', +73810=>'L', +73811=>'L', +73812=>'L', +73813=>'L', +73814=>'L', +73815=>'L', +73816=>'L', +73817=>'L', +73818=>'L', +73819=>'L', +73820=>'L', +73821=>'L', +73822=>'L', +73823=>'L', +73824=>'L', +73825=>'L', +73826=>'L', +73827=>'L', +73828=>'L', +73829=>'L', +73830=>'L', +73831=>'L', +73832=>'L', +73833=>'L', +73834=>'L', +73835=>'L', +73836=>'L', +73837=>'L', +73838=>'L', +73839=>'L', +73840=>'L', +73841=>'L', +73842=>'L', +73843=>'L', +73844=>'L', +73845=>'L', +73846=>'L', +73847=>'L', +73848=>'L', +73849=>'L', +73850=>'L', +73851=>'L', +73852=>'L', +73853=>'L', +73854=>'L', +73855=>'L', +73856=>'L', +73857=>'L', +73858=>'L', +73859=>'L', +73860=>'L', +73861=>'L', +73862=>'L', +73863=>'L', +73864=>'L', +73865=>'L', +73866=>'L', +73867=>'L', +73868=>'L', +73869=>'L', +73870=>'L', +73871=>'L', +73872=>'L', +73873=>'L', +73874=>'L', +73875=>'L', +73876=>'L', +73877=>'L', +73878=>'L', +73879=>'L', +73880=>'L', +73881=>'L', +73882=>'L', +73883=>'L', +73884=>'L', +73885=>'L', +73886=>'L', +73887=>'L', +73888=>'L', +73889=>'L', +73890=>'L', +73891=>'L', +73892=>'L', +73893=>'L', +73894=>'L', +73895=>'L', +73896=>'L', +73897=>'L', +73898=>'L', +73899=>'L', +73900=>'L', +73901=>'L', +73902=>'L', +73903=>'L', +73904=>'L', +73905=>'L', +73906=>'L', +73907=>'L', +73908=>'L', +73909=>'L', +73910=>'L', +73911=>'L', +73912=>'L', +73913=>'L', +73914=>'L', +73915=>'L', +73916=>'L', +73917=>'L', +73918=>'L', +73919=>'L', +73920=>'L', +73921=>'L', +73922=>'L', +73923=>'L', +73924=>'L', +73925=>'L', +73926=>'L', +73927=>'L', +73928=>'L', +73929=>'L', +73930=>'L', +73931=>'L', +73932=>'L', +73933=>'L', +73934=>'L', +73935=>'L', +73936=>'L', +73937=>'L', +73938=>'L', +73939=>'L', +73940=>'L', +73941=>'L', +73942=>'L', +73943=>'L', +73944=>'L', +73945=>'L', +73946=>'L', +73947=>'L', +73948=>'L', +73949=>'L', +73950=>'L', +73951=>'L', +73952=>'L', +73953=>'L', +73954=>'L', +73955=>'L', +73956=>'L', +73957=>'L', +73958=>'L', +73959=>'L', +73960=>'L', +73961=>'L', +73962=>'L', +73963=>'L', +73964=>'L', +73965=>'L', +73966=>'L', +73967=>'L', +73968=>'L', +73969=>'L', +73970=>'L', +73971=>'L', +73972=>'L', +73973=>'L', +73974=>'L', +73975=>'L', +73976=>'L', +73977=>'L', +73978=>'L', +73979=>'L', +73980=>'L', +73981=>'L', +73982=>'L', +73983=>'L', +73984=>'L', +73985=>'L', +73986=>'L', +73987=>'L', +73988=>'L', +73989=>'L', +73990=>'L', +73991=>'L', +73992=>'L', +73993=>'L', +73994=>'L', +73995=>'L', +73996=>'L', +73997=>'L', +73998=>'L', +73999=>'L', +74000=>'L', +74001=>'L', +74002=>'L', +74003=>'L', +74004=>'L', +74005=>'L', +74006=>'L', +74007=>'L', +74008=>'L', +74009=>'L', +74010=>'L', +74011=>'L', +74012=>'L', +74013=>'L', +74014=>'L', +74015=>'L', +74016=>'L', +74017=>'L', +74018=>'L', +74019=>'L', +74020=>'L', +74021=>'L', +74022=>'L', +74023=>'L', +74024=>'L', +74025=>'L', +74026=>'L', +74027=>'L', +74028=>'L', +74029=>'L', +74030=>'L', +74031=>'L', +74032=>'L', +74033=>'L', +74034=>'L', +74035=>'L', +74036=>'L', +74037=>'L', +74038=>'L', +74039=>'L', +74040=>'L', +74041=>'L', +74042=>'L', +74043=>'L', +74044=>'L', +74045=>'L', +74046=>'L', +74047=>'L', +74048=>'L', +74049=>'L', +74050=>'L', +74051=>'L', +74052=>'L', +74053=>'L', +74054=>'L', +74055=>'L', +74056=>'L', +74057=>'L', +74058=>'L', +74059=>'L', +74060=>'L', +74061=>'L', +74062=>'L', +74063=>'L', +74064=>'L', +74065=>'L', +74066=>'L', +74067=>'L', +74068=>'L', +74069=>'L', +74070=>'L', +74071=>'L', +74072=>'L', +74073=>'L', +74074=>'L', +74075=>'L', +74076=>'L', +74077=>'L', +74078=>'L', +74079=>'L', +74080=>'L', +74081=>'L', +74082=>'L', +74083=>'L', +74084=>'L', +74085=>'L', +74086=>'L', +74087=>'L', +74088=>'L', +74089=>'L', +74090=>'L', +74091=>'L', +74092=>'L', +74093=>'L', +74094=>'L', +74095=>'L', +74096=>'L', +74097=>'L', +74098=>'L', +74099=>'L', +74100=>'L', +74101=>'L', +74102=>'L', +74103=>'L', +74104=>'L', +74105=>'L', +74106=>'L', +74107=>'L', +74108=>'L', +74109=>'L', +74110=>'L', +74111=>'L', +74112=>'L', +74113=>'L', +74114=>'L', +74115=>'L', +74116=>'L', +74117=>'L', +74118=>'L', +74119=>'L', +74120=>'L', +74121=>'L', +74122=>'L', +74123=>'L', +74124=>'L', +74125=>'L', +74126=>'L', +74127=>'L', +74128=>'L', +74129=>'L', +74130=>'L', +74131=>'L', +74132=>'L', +74133=>'L', +74134=>'L', +74135=>'L', +74136=>'L', +74137=>'L', +74138=>'L', +74139=>'L', +74140=>'L', +74141=>'L', +74142=>'L', +74143=>'L', +74144=>'L', +74145=>'L', +74146=>'L', +74147=>'L', +74148=>'L', +74149=>'L', +74150=>'L', +74151=>'L', +74152=>'L', +74153=>'L', +74154=>'L', +74155=>'L', +74156=>'L', +74157=>'L', +74158=>'L', +74159=>'L', +74160=>'L', +74161=>'L', +74162=>'L', +74163=>'L', +74164=>'L', +74165=>'L', +74166=>'L', +74167=>'L', +74168=>'L', +74169=>'L', +74170=>'L', +74171=>'L', +74172=>'L', +74173=>'L', +74174=>'L', +74175=>'L', +74176=>'L', +74177=>'L', +74178=>'L', +74179=>'L', +74180=>'L', +74181=>'L', +74182=>'L', +74183=>'L', +74184=>'L', +74185=>'L', +74186=>'L', +74187=>'L', +74188=>'L', +74189=>'L', +74190=>'L', +74191=>'L', +74192=>'L', +74193=>'L', +74194=>'L', +74195=>'L', +74196=>'L', +74197=>'L', +74198=>'L', +74199=>'L', +74200=>'L', +74201=>'L', +74202=>'L', +74203=>'L', +74204=>'L', +74205=>'L', +74206=>'L', +74207=>'L', +74208=>'L', +74209=>'L', +74210=>'L', +74211=>'L', +74212=>'L', +74213=>'L', +74214=>'L', +74215=>'L', +74216=>'L', +74217=>'L', +74218=>'L', +74219=>'L', +74220=>'L', +74221=>'L', +74222=>'L', +74223=>'L', +74224=>'L', +74225=>'L', +74226=>'L', +74227=>'L', +74228=>'L', +74229=>'L', +74230=>'L', +74231=>'L', +74232=>'L', +74233=>'L', +74234=>'L', +74235=>'L', +74236=>'L', +74237=>'L', +74238=>'L', +74239=>'L', +74240=>'L', +74241=>'L', +74242=>'L', +74243=>'L', +74244=>'L', +74245=>'L', +74246=>'L', +74247=>'L', +74248=>'L', +74249=>'L', +74250=>'L', +74251=>'L', +74252=>'L', +74253=>'L', +74254=>'L', +74255=>'L', +74256=>'L', +74257=>'L', +74258=>'L', +74259=>'L', +74260=>'L', +74261=>'L', +74262=>'L', +74263=>'L', +74264=>'L', +74265=>'L', +74266=>'L', +74267=>'L', +74268=>'L', +74269=>'L', +74270=>'L', +74271=>'L', +74272=>'L', +74273=>'L', +74274=>'L', +74275=>'L', +74276=>'L', +74277=>'L', +74278=>'L', +74279=>'L', +74280=>'L', +74281=>'L', +74282=>'L', +74283=>'L', +74284=>'L', +74285=>'L', +74286=>'L', +74287=>'L', +74288=>'L', +74289=>'L', +74290=>'L', +74291=>'L', +74292=>'L', +74293=>'L', +74294=>'L', +74295=>'L', +74296=>'L', +74297=>'L', +74298=>'L', +74299=>'L', +74300=>'L', +74301=>'L', +74302=>'L', +74303=>'L', +74304=>'L', +74305=>'L', +74306=>'L', +74307=>'L', +74308=>'L', +74309=>'L', +74310=>'L', +74311=>'L', +74312=>'L', +74313=>'L', +74314=>'L', +74315=>'L', +74316=>'L', +74317=>'L', +74318=>'L', +74319=>'L', +74320=>'L', +74321=>'L', +74322=>'L', +74323=>'L', +74324=>'L', +74325=>'L', +74326=>'L', +74327=>'L', +74328=>'L', +74329=>'L', +74330=>'L', +74331=>'L', +74332=>'L', +74333=>'L', +74334=>'L', +74335=>'L', +74336=>'L', +74337=>'L', +74338=>'L', +74339=>'L', +74340=>'L', +74341=>'L', +74342=>'L', +74343=>'L', +74344=>'L', +74345=>'L', +74346=>'L', +74347=>'L', +74348=>'L', +74349=>'L', +74350=>'L', +74351=>'L', +74352=>'L', +74353=>'L', +74354=>'L', +74355=>'L', +74356=>'L', +74357=>'L', +74358=>'L', +74359=>'L', +74360=>'L', +74361=>'L', +74362=>'L', +74363=>'L', +74364=>'L', +74365=>'L', +74366=>'L', +74367=>'L', +74368=>'L', +74369=>'L', +74370=>'L', +74371=>'L', +74372=>'L', +74373=>'L', +74374=>'L', +74375=>'L', +74376=>'L', +74377=>'L', +74378=>'L', +74379=>'L', +74380=>'L', +74381=>'L', +74382=>'L', +74383=>'L', +74384=>'L', +74385=>'L', +74386=>'L', +74387=>'L', +74388=>'L', +74389=>'L', +74390=>'L', +74391=>'L', +74392=>'L', +74393=>'L', +74394=>'L', +74395=>'L', +74396=>'L', +74397=>'L', +74398=>'L', +74399=>'L', +74400=>'L', +74401=>'L', +74402=>'L', +74403=>'L', +74404=>'L', +74405=>'L', +74406=>'L', +74407=>'L', +74408=>'L', +74409=>'L', +74410=>'L', +74411=>'L', +74412=>'L', +74413=>'L', +74414=>'L', +74415=>'L', +74416=>'L', +74417=>'L', +74418=>'L', +74419=>'L', +74420=>'L', +74421=>'L', +74422=>'L', +74423=>'L', +74424=>'L', +74425=>'L', +74426=>'L', +74427=>'L', +74428=>'L', +74429=>'L', +74430=>'L', +74431=>'L', +74432=>'L', +74433=>'L', +74434=>'L', +74435=>'L', +74436=>'L', +74437=>'L', +74438=>'L', +74439=>'L', +74440=>'L', +74441=>'L', +74442=>'L', +74443=>'L', +74444=>'L', +74445=>'L', +74446=>'L', +74447=>'L', +74448=>'L', +74449=>'L', +74450=>'L', +74451=>'L', +74452=>'L', +74453=>'L', +74454=>'L', +74455=>'L', +74456=>'L', +74457=>'L', +74458=>'L', +74459=>'L', +74460=>'L', +74461=>'L', +74462=>'L', +74463=>'L', +74464=>'L', +74465=>'L', +74466=>'L', +74467=>'L', +74468=>'L', +74469=>'L', +74470=>'L', +74471=>'L', +74472=>'L', +74473=>'L', +74474=>'L', +74475=>'L', +74476=>'L', +74477=>'L', +74478=>'L', +74479=>'L', +74480=>'L', +74481=>'L', +74482=>'L', +74483=>'L', +74484=>'L', +74485=>'L', +74486=>'L', +74487=>'L', +74488=>'L', +74489=>'L', +74490=>'L', +74491=>'L', +74492=>'L', +74493=>'L', +74494=>'L', +74495=>'L', +74496=>'L', +74497=>'L', +74498=>'L', +74499=>'L', +74500=>'L', +74501=>'L', +74502=>'L', +74503=>'L', +74504=>'L', +74505=>'L', +74506=>'L', +74507=>'L', +74508=>'L', +74509=>'L', +74510=>'L', +74511=>'L', +74512=>'L', +74513=>'L', +74514=>'L', +74515=>'L', +74516=>'L', +74517=>'L', +74518=>'L', +74519=>'L', +74520=>'L', +74521=>'L', +74522=>'L', +74523=>'L', +74524=>'L', +74525=>'L', +74526=>'L', +74527=>'L', +74528=>'L', +74529=>'L', +74530=>'L', +74531=>'L', +74532=>'L', +74533=>'L', +74534=>'L', +74535=>'L', +74536=>'L', +74537=>'L', +74538=>'L', +74539=>'L', +74540=>'L', +74541=>'L', +74542=>'L', +74543=>'L', +74544=>'L', +74545=>'L', +74546=>'L', +74547=>'L', +74548=>'L', +74549=>'L', +74550=>'L', +74551=>'L', +74552=>'L', +74553=>'L', +74554=>'L', +74555=>'L', +74556=>'L', +74557=>'L', +74558=>'L', +74559=>'L', +74560=>'L', +74561=>'L', +74562=>'L', +74563=>'L', +74564=>'L', +74565=>'L', +74566=>'L', +74567=>'L', +74568=>'L', +74569=>'L', +74570=>'L', +74571=>'L', +74572=>'L', +74573=>'L', +74574=>'L', +74575=>'L', +74576=>'L', +74577=>'L', +74578=>'L', +74579=>'L', +74580=>'L', +74581=>'L', +74582=>'L', +74583=>'L', +74584=>'L', +74585=>'L', +74586=>'L', +74587=>'L', +74588=>'L', +74589=>'L', +74590=>'L', +74591=>'L', +74592=>'L', +74593=>'L', +74594=>'L', +74595=>'L', +74596=>'L', +74597=>'L', +74598=>'L', +74599=>'L', +74600=>'L', +74601=>'L', +74602=>'L', +74603=>'L', +74604=>'L', +74605=>'L', +74606=>'L', +74752=>'L', +74753=>'L', +74754=>'L', +74755=>'L', +74756=>'L', +74757=>'L', +74758=>'L', +74759=>'L', +74760=>'L', +74761=>'L', +74762=>'L', +74763=>'L', +74764=>'L', +74765=>'L', +74766=>'L', +74767=>'L', +74768=>'L', +74769=>'L', +74770=>'L', +74771=>'L', +74772=>'L', +74773=>'L', +74774=>'L', +74775=>'L', +74776=>'L', +74777=>'L', +74778=>'L', +74779=>'L', +74780=>'L', +74781=>'L', +74782=>'L', +74783=>'L', +74784=>'L', +74785=>'L', +74786=>'L', +74787=>'L', +74788=>'L', +74789=>'L', +74790=>'L', +74791=>'L', +74792=>'L', +74793=>'L', +74794=>'L', +74795=>'L', +74796=>'L', +74797=>'L', +74798=>'L', +74799=>'L', +74800=>'L', +74801=>'L', +74802=>'L', +74803=>'L', +74804=>'L', +74805=>'L', +74806=>'L', +74807=>'L', +74808=>'L', +74809=>'L', +74810=>'L', +74811=>'L', +74812=>'L', +74813=>'L', +74814=>'L', +74815=>'L', +74816=>'L', +74817=>'L', +74818=>'L', +74819=>'L', +74820=>'L', +74821=>'L', +74822=>'L', +74823=>'L', +74824=>'L', +74825=>'L', +74826=>'L', +74827=>'L', +74828=>'L', +74829=>'L', +74830=>'L', +74831=>'L', +74832=>'L', +74833=>'L', +74834=>'L', +74835=>'L', +74836=>'L', +74837=>'L', +74838=>'L', +74839=>'L', +74840=>'L', +74841=>'L', +74842=>'L', +74843=>'L', +74844=>'L', +74845=>'L', +74846=>'L', +74847=>'L', +74848=>'L', +74849=>'L', +74850=>'L', +74864=>'L', +74865=>'L', +74866=>'L', +74867=>'L', +118784=>'L', +118785=>'L', +118786=>'L', +118787=>'L', +118788=>'L', +118789=>'L', +118790=>'L', +118791=>'L', +118792=>'L', +118793=>'L', +118794=>'L', +118795=>'L', +118796=>'L', +118797=>'L', +118798=>'L', +118799=>'L', +118800=>'L', +118801=>'L', +118802=>'L', +118803=>'L', +118804=>'L', +118805=>'L', +118806=>'L', +118807=>'L', +118808=>'L', +118809=>'L', +118810=>'L', +118811=>'L', +118812=>'L', +118813=>'L', +118814=>'L', +118815=>'L', +118816=>'L', +118817=>'L', +118818=>'L', +118819=>'L', +118820=>'L', +118821=>'L', +118822=>'L', +118823=>'L', +118824=>'L', +118825=>'L', +118826=>'L', +118827=>'L', +118828=>'L', +118829=>'L', +118830=>'L', +118831=>'L', +118832=>'L', +118833=>'L', +118834=>'L', +118835=>'L', +118836=>'L', +118837=>'L', +118838=>'L', +118839=>'L', +118840=>'L', +118841=>'L', +118842=>'L', +118843=>'L', +118844=>'L', +118845=>'L', +118846=>'L', +118847=>'L', +118848=>'L', +118849=>'L', +118850=>'L', +118851=>'L', +118852=>'L', +118853=>'L', +118854=>'L', +118855=>'L', +118856=>'L', +118857=>'L', +118858=>'L', +118859=>'L', +118860=>'L', +118861=>'L', +118862=>'L', +118863=>'L', +118864=>'L', +118865=>'L', +118866=>'L', +118867=>'L', +118868=>'L', +118869=>'L', +118870=>'L', +118871=>'L', +118872=>'L', +118873=>'L', +118874=>'L', +118875=>'L', +118876=>'L', +118877=>'L', +118878=>'L', +118879=>'L', +118880=>'L', +118881=>'L', +118882=>'L', +118883=>'L', +118884=>'L', +118885=>'L', +118886=>'L', +118887=>'L', +118888=>'L', +118889=>'L', +118890=>'L', +118891=>'L', +118892=>'L', +118893=>'L', +118894=>'L', +118895=>'L', +118896=>'L', +118897=>'L', +118898=>'L', +118899=>'L', +118900=>'L', +118901=>'L', +118902=>'L', +118903=>'L', +118904=>'L', +118905=>'L', +118906=>'L', +118907=>'L', +118908=>'L', +118909=>'L', +118910=>'L', +118911=>'L', +118912=>'L', +118913=>'L', +118914=>'L', +118915=>'L', +118916=>'L', +118917=>'L', +118918=>'L', +118919=>'L', +118920=>'L', +118921=>'L', +118922=>'L', +118923=>'L', +118924=>'L', +118925=>'L', +118926=>'L', +118927=>'L', +118928=>'L', +118929=>'L', +118930=>'L', +118931=>'L', +118932=>'L', +118933=>'L', +118934=>'L', +118935=>'L', +118936=>'L', +118937=>'L', +118938=>'L', +118939=>'L', +118940=>'L', +118941=>'L', +118942=>'L', +118943=>'L', +118944=>'L', +118945=>'L', +118946=>'L', +118947=>'L', +118948=>'L', +118949=>'L', +118950=>'L', +118951=>'L', +118952=>'L', +118953=>'L', +118954=>'L', +118955=>'L', +118956=>'L', +118957=>'L', +118958=>'L', +118959=>'L', +118960=>'L', +118961=>'L', +118962=>'L', +118963=>'L', +118964=>'L', +118965=>'L', +118966=>'L', +118967=>'L', +118968=>'L', +118969=>'L', +118970=>'L', +118971=>'L', +118972=>'L', +118973=>'L', +118974=>'L', +118975=>'L', +118976=>'L', +118977=>'L', +118978=>'L', +118979=>'L', +118980=>'L', +118981=>'L', +118982=>'L', +118983=>'L', +118984=>'L', +118985=>'L', +118986=>'L', +118987=>'L', +118988=>'L', +118989=>'L', +118990=>'L', +118991=>'L', +118992=>'L', +118993=>'L', +118994=>'L', +118995=>'L', +118996=>'L', +118997=>'L', +118998=>'L', +118999=>'L', +119000=>'L', +119001=>'L', +119002=>'L', +119003=>'L', +119004=>'L', +119005=>'L', +119006=>'L', +119007=>'L', +119008=>'L', +119009=>'L', +119010=>'L', +119011=>'L', +119012=>'L', +119013=>'L', +119014=>'L', +119015=>'L', +119016=>'L', +119017=>'L', +119018=>'L', +119019=>'L', +119020=>'L', +119021=>'L', +119022=>'L', +119023=>'L', +119024=>'L', +119025=>'L', +119026=>'L', +119027=>'L', +119028=>'L', +119029=>'L', +119040=>'L', +119041=>'L', +119042=>'L', +119043=>'L', +119044=>'L', +119045=>'L', +119046=>'L', +119047=>'L', +119048=>'L', +119049=>'L', +119050=>'L', +119051=>'L', +119052=>'L', +119053=>'L', +119054=>'L', +119055=>'L', +119056=>'L', +119057=>'L', +119058=>'L', +119059=>'L', +119060=>'L', +119061=>'L', +119062=>'L', +119063=>'L', +119064=>'L', +119065=>'L', +119066=>'L', +119067=>'L', +119068=>'L', +119069=>'L', +119070=>'L', +119071=>'L', +119072=>'L', +119073=>'L', +119074=>'L', +119075=>'L', +119076=>'L', +119077=>'L', +119078=>'L', +119082=>'L', +119083=>'L', +119084=>'L', +119085=>'L', +119086=>'L', +119087=>'L', +119088=>'L', +119089=>'L', +119090=>'L', +119091=>'L', +119092=>'L', +119093=>'L', +119094=>'L', +119095=>'L', +119096=>'L', +119097=>'L', +119098=>'L', +119099=>'L', +119100=>'L', +119101=>'L', +119102=>'L', +119103=>'L', +119104=>'L', +119105=>'L', +119106=>'L', +119107=>'L', +119108=>'L', +119109=>'L', +119110=>'L', +119111=>'L', +119112=>'L', +119113=>'L', +119114=>'L', +119115=>'L', +119116=>'L', +119117=>'L', +119118=>'L', +119119=>'L', +119120=>'L', +119121=>'L', +119122=>'L', +119123=>'L', +119124=>'L', +119125=>'L', +119126=>'L', +119127=>'L', +119128=>'L', +119129=>'L', +119130=>'L', +119131=>'L', +119132=>'L', +119133=>'L', +119134=>'L', +119135=>'L', +119136=>'L', +119137=>'L', +119138=>'L', +119139=>'L', +119140=>'L', +119141=>'L', +119142=>'L', +119143=>'NSM', +119144=>'NSM', +119145=>'NSM', +119146=>'L', +119147=>'L', +119148=>'L', +119149=>'L', +119150=>'L', +119151=>'L', +119152=>'L', +119153=>'L', +119154=>'L', +119155=>'BN', +119156=>'BN', +119157=>'BN', +119158=>'BN', +119159=>'BN', +119160=>'BN', +119161=>'BN', +119162=>'BN', +119163=>'NSM', +119164=>'NSM', +119165=>'NSM', +119166=>'NSM', +119167=>'NSM', +119168=>'NSM', +119169=>'NSM', +119170=>'NSM', +119171=>'L', +119172=>'L', +119173=>'NSM', +119174=>'NSM', +119175=>'NSM', +119176=>'NSM', +119177=>'NSM', +119178=>'NSM', +119179=>'NSM', +119180=>'L', +119181=>'L', +119182=>'L', +119183=>'L', +119184=>'L', +119185=>'L', +119186=>'L', +119187=>'L', +119188=>'L', +119189=>'L', +119190=>'L', +119191=>'L', +119192=>'L', +119193=>'L', +119194=>'L', +119195=>'L', +119196=>'L', +119197=>'L', +119198=>'L', +119199=>'L', +119200=>'L', +119201=>'L', +119202=>'L', +119203=>'L', +119204=>'L', +119205=>'L', +119206=>'L', +119207=>'L', +119208=>'L', +119209=>'L', +119210=>'NSM', +119211=>'NSM', +119212=>'NSM', +119213=>'NSM', +119214=>'L', +119215=>'L', +119216=>'L', +119217=>'L', +119218=>'L', +119219=>'L', +119220=>'L', +119221=>'L', +119222=>'L', +119223=>'L', +119224=>'L', +119225=>'L', +119226=>'L', +119227=>'L', +119228=>'L', +119229=>'L', +119230=>'L', +119231=>'L', +119232=>'L', +119233=>'L', +119234=>'L', +119235=>'L', +119236=>'L', +119237=>'L', +119238=>'L', +119239=>'L', +119240=>'L', +119241=>'L', +119242=>'L', +119243=>'L', +119244=>'L', +119245=>'L', +119246=>'L', +119247=>'L', +119248=>'L', +119249=>'L', +119250=>'L', +119251=>'L', +119252=>'L', +119253=>'L', +119254=>'L', +119255=>'L', +119256=>'L', +119257=>'L', +119258=>'L', +119259=>'L', +119260=>'L', +119261=>'L', +119296=>'ON', +119297=>'ON', +119298=>'ON', +119299=>'ON', +119300=>'ON', +119301=>'ON', +119302=>'ON', +119303=>'ON', +119304=>'ON', +119305=>'ON', +119306=>'ON', +119307=>'ON', +119308=>'ON', +119309=>'ON', +119310=>'ON', +119311=>'ON', +119312=>'ON', +119313=>'ON', +119314=>'ON', +119315=>'ON', +119316=>'ON', +119317=>'ON', +119318=>'ON', +119319=>'ON', +119320=>'ON', +119321=>'ON', +119322=>'ON', +119323=>'ON', +119324=>'ON', +119325=>'ON', +119326=>'ON', +119327=>'ON', +119328=>'ON', +119329=>'ON', +119330=>'ON', +119331=>'ON', +119332=>'ON', +119333=>'ON', +119334=>'ON', +119335=>'ON', +119336=>'ON', +119337=>'ON', +119338=>'ON', +119339=>'ON', +119340=>'ON', +119341=>'ON', +119342=>'ON', +119343=>'ON', +119344=>'ON', +119345=>'ON', +119346=>'ON', +119347=>'ON', +119348=>'ON', +119349=>'ON', +119350=>'ON', +119351=>'ON', +119352=>'ON', +119353=>'ON', +119354=>'ON', +119355=>'ON', +119356=>'ON', +119357=>'ON', +119358=>'ON', +119359=>'ON', +119360=>'ON', +119361=>'ON', +119362=>'NSM', +119363=>'NSM', +119364=>'NSM', +119365=>'ON', +119552=>'ON', +119553=>'ON', +119554=>'ON', +119555=>'ON', +119556=>'ON', +119557=>'ON', +119558=>'ON', +119559=>'ON', +119560=>'ON', +119561=>'ON', +119562=>'ON', +119563=>'ON', +119564=>'ON', +119565=>'ON', +119566=>'ON', +119567=>'ON', +119568=>'ON', +119569=>'ON', +119570=>'ON', +119571=>'ON', +119572=>'ON', +119573=>'ON', +119574=>'ON', +119575=>'ON', +119576=>'ON', +119577=>'ON', +119578=>'ON', +119579=>'ON', +119580=>'ON', +119581=>'ON', +119582=>'ON', +119583=>'ON', +119584=>'ON', +119585=>'ON', +119586=>'ON', +119587=>'ON', +119588=>'ON', +119589=>'ON', +119590=>'ON', +119591=>'ON', +119592=>'ON', +119593=>'ON', +119594=>'ON', +119595=>'ON', +119596=>'ON', +119597=>'ON', +119598=>'ON', +119599=>'ON', +119600=>'ON', +119601=>'ON', +119602=>'ON', +119603=>'ON', +119604=>'ON', +119605=>'ON', +119606=>'ON', +119607=>'ON', +119608=>'ON', +119609=>'ON', +119610=>'ON', +119611=>'ON', +119612=>'ON', +119613=>'ON', +119614=>'ON', +119615=>'ON', +119616=>'ON', +119617=>'ON', +119618=>'ON', +119619=>'ON', +119620=>'ON', +119621=>'ON', +119622=>'ON', +119623=>'ON', +119624=>'ON', +119625=>'ON', +119626=>'ON', +119627=>'ON', +119628=>'ON', +119629=>'ON', +119630=>'ON', +119631=>'ON', +119632=>'ON', +119633=>'ON', +119634=>'ON', +119635=>'ON', +119636=>'ON', +119637=>'ON', +119638=>'ON', +119648=>'L', +119649=>'L', +119650=>'L', +119651=>'L', +119652=>'L', +119653=>'L', +119654=>'L', +119655=>'L', +119656=>'L', +119657=>'L', +119658=>'L', +119659=>'L', +119660=>'L', +119661=>'L', +119662=>'L', +119663=>'L', +119664=>'L', +119665=>'L', +119808=>'L', +119809=>'L', +119810=>'L', +119811=>'L', +119812=>'L', +119813=>'L', +119814=>'L', +119815=>'L', +119816=>'L', +119817=>'L', +119818=>'L', +119819=>'L', +119820=>'L', +119821=>'L', +119822=>'L', +119823=>'L', +119824=>'L', +119825=>'L', +119826=>'L', +119827=>'L', +119828=>'L', +119829=>'L', +119830=>'L', +119831=>'L', +119832=>'L', +119833=>'L', +119834=>'L', +119835=>'L', +119836=>'L', +119837=>'L', +119838=>'L', +119839=>'L', +119840=>'L', +119841=>'L', +119842=>'L', +119843=>'L', +119844=>'L', +119845=>'L', +119846=>'L', +119847=>'L', +119848=>'L', +119849=>'L', +119850=>'L', +119851=>'L', +119852=>'L', +119853=>'L', +119854=>'L', +119855=>'L', +119856=>'L', +119857=>'L', +119858=>'L', +119859=>'L', +119860=>'L', +119861=>'L', +119862=>'L', +119863=>'L', +119864=>'L', +119865=>'L', +119866=>'L', +119867=>'L', +119868=>'L', +119869=>'L', +119870=>'L', +119871=>'L', +119872=>'L', +119873=>'L', +119874=>'L', +119875=>'L', +119876=>'L', +119877=>'L', +119878=>'L', +119879=>'L', +119880=>'L', +119881=>'L', +119882=>'L', +119883=>'L', +119884=>'L', +119885=>'L', +119886=>'L', +119887=>'L', +119888=>'L', +119889=>'L', +119890=>'L', +119891=>'L', +119892=>'L', +119894=>'L', +119895=>'L', +119896=>'L', +119897=>'L', +119898=>'L', +119899=>'L', +119900=>'L', +119901=>'L', +119902=>'L', +119903=>'L', +119904=>'L', +119905=>'L', +119906=>'L', +119907=>'L', +119908=>'L', +119909=>'L', +119910=>'L', +119911=>'L', +119912=>'L', +119913=>'L', +119914=>'L', +119915=>'L', +119916=>'L', +119917=>'L', +119918=>'L', +119919=>'L', +119920=>'L', +119921=>'L', +119922=>'L', +119923=>'L', +119924=>'L', +119925=>'L', +119926=>'L', +119927=>'L', +119928=>'L', +119929=>'L', +119930=>'L', +119931=>'L', +119932=>'L', +119933=>'L', +119934=>'L', +119935=>'L', +119936=>'L', +119937=>'L', +119938=>'L', +119939=>'L', +119940=>'L', +119941=>'L', +119942=>'L', +119943=>'L', +119944=>'L', +119945=>'L', +119946=>'L', +119947=>'L', +119948=>'L', +119949=>'L', +119950=>'L', +119951=>'L', +119952=>'L', +119953=>'L', +119954=>'L', +119955=>'L', +119956=>'L', +119957=>'L', +119958=>'L', +119959=>'L', +119960=>'L', +119961=>'L', +119962=>'L', +119963=>'L', +119964=>'L', +119966=>'L', +119967=>'L', +119970=>'L', +119973=>'L', +119974=>'L', +119977=>'L', +119978=>'L', +119979=>'L', +119980=>'L', +119982=>'L', +119983=>'L', +119984=>'L', +119985=>'L', +119986=>'L', +119987=>'L', +119988=>'L', +119989=>'L', +119990=>'L', +119991=>'L', +119992=>'L', +119993=>'L', +119995=>'L', +119997=>'L', +119998=>'L', +119999=>'L', +120000=>'L', +120001=>'L', +120002=>'L', +120003=>'L', +120005=>'L', +120006=>'L', +120007=>'L', +120008=>'L', +120009=>'L', +120010=>'L', +120011=>'L', +120012=>'L', +120013=>'L', +120014=>'L', +120015=>'L', +120016=>'L', +120017=>'L', +120018=>'L', +120019=>'L', +120020=>'L', +120021=>'L', +120022=>'L', +120023=>'L', +120024=>'L', +120025=>'L', +120026=>'L', +120027=>'L', +120028=>'L', +120029=>'L', +120030=>'L', +120031=>'L', +120032=>'L', +120033=>'L', +120034=>'L', +120035=>'L', +120036=>'L', +120037=>'L', +120038=>'L', +120039=>'L', +120040=>'L', +120041=>'L', +120042=>'L', +120043=>'L', +120044=>'L', +120045=>'L', +120046=>'L', +120047=>'L', +120048=>'L', +120049=>'L', +120050=>'L', +120051=>'L', +120052=>'L', +120053=>'L', +120054=>'L', +120055=>'L', +120056=>'L', +120057=>'L', +120058=>'L', +120059=>'L', +120060=>'L', +120061=>'L', +120062=>'L', +120063=>'L', +120064=>'L', +120065=>'L', +120066=>'L', +120067=>'L', +120068=>'L', +120069=>'L', +120071=>'L', +120072=>'L', +120073=>'L', +120074=>'L', +120077=>'L', +120078=>'L', +120079=>'L', +120080=>'L', +120081=>'L', +120082=>'L', +120083=>'L', +120084=>'L', +120086=>'L', +120087=>'L', +120088=>'L', +120089=>'L', +120090=>'L', +120091=>'L', +120092=>'L', +120094=>'L', +120095=>'L', +120096=>'L', +120097=>'L', +120098=>'L', +120099=>'L', +120100=>'L', +120101=>'L', +120102=>'L', +120103=>'L', +120104=>'L', +120105=>'L', +120106=>'L', +120107=>'L', +120108=>'L', +120109=>'L', +120110=>'L', +120111=>'L', +120112=>'L', +120113=>'L', +120114=>'L', +120115=>'L', +120116=>'L', +120117=>'L', +120118=>'L', +120119=>'L', +120120=>'L', +120121=>'L', +120123=>'L', +120124=>'L', +120125=>'L', +120126=>'L', +120128=>'L', +120129=>'L', +120130=>'L', +120131=>'L', +120132=>'L', +120134=>'L', +120138=>'L', +120139=>'L', +120140=>'L', +120141=>'L', +120142=>'L', +120143=>'L', +120144=>'L', +120146=>'L', +120147=>'L', +120148=>'L', +120149=>'L', +120150=>'L', +120151=>'L', +120152=>'L', +120153=>'L', +120154=>'L', +120155=>'L', +120156=>'L', +120157=>'L', +120158=>'L', +120159=>'L', +120160=>'L', +120161=>'L', +120162=>'L', +120163=>'L', +120164=>'L', +120165=>'L', +120166=>'L', +120167=>'L', +120168=>'L', +120169=>'L', +120170=>'L', +120171=>'L', +120172=>'L', +120173=>'L', +120174=>'L', +120175=>'L', +120176=>'L', +120177=>'L', +120178=>'L', +120179=>'L', +120180=>'L', +120181=>'L', +120182=>'L', +120183=>'L', +120184=>'L', +120185=>'L', +120186=>'L', +120187=>'L', +120188=>'L', +120189=>'L', +120190=>'L', +120191=>'L', +120192=>'L', +120193=>'L', +120194=>'L', +120195=>'L', +120196=>'L', +120197=>'L', +120198=>'L', +120199=>'L', +120200=>'L', +120201=>'L', +120202=>'L', +120203=>'L', +120204=>'L', +120205=>'L', +120206=>'L', +120207=>'L', +120208=>'L', +120209=>'L', +120210=>'L', +120211=>'L', +120212=>'L', +120213=>'L', +120214=>'L', +120215=>'L', +120216=>'L', +120217=>'L', +120218=>'L', +120219=>'L', +120220=>'L', +120221=>'L', +120222=>'L', +120223=>'L', +120224=>'L', +120225=>'L', +120226=>'L', +120227=>'L', +120228=>'L', +120229=>'L', +120230=>'L', +120231=>'L', +120232=>'L', +120233=>'L', +120234=>'L', +120235=>'L', +120236=>'L', +120237=>'L', +120238=>'L', +120239=>'L', +120240=>'L', +120241=>'L', +120242=>'L', +120243=>'L', +120244=>'L', +120245=>'L', +120246=>'L', +120247=>'L', +120248=>'L', +120249=>'L', +120250=>'L', +120251=>'L', +120252=>'L', +120253=>'L', +120254=>'L', +120255=>'L', +120256=>'L', +120257=>'L', +120258=>'L', +120259=>'L', +120260=>'L', +120261=>'L', +120262=>'L', +120263=>'L', +120264=>'L', +120265=>'L', +120266=>'L', +120267=>'L', +120268=>'L', +120269=>'L', +120270=>'L', +120271=>'L', +120272=>'L', +120273=>'L', +120274=>'L', +120275=>'L', +120276=>'L', +120277=>'L', +120278=>'L', +120279=>'L', +120280=>'L', +120281=>'L', +120282=>'L', +120283=>'L', +120284=>'L', +120285=>'L', +120286=>'L', +120287=>'L', +120288=>'L', +120289=>'L', +120290=>'L', +120291=>'L', +120292=>'L', +120293=>'L', +120294=>'L', +120295=>'L', +120296=>'L', +120297=>'L', +120298=>'L', +120299=>'L', +120300=>'L', +120301=>'L', +120302=>'L', +120303=>'L', +120304=>'L', +120305=>'L', +120306=>'L', +120307=>'L', +120308=>'L', +120309=>'L', +120310=>'L', +120311=>'L', +120312=>'L', +120313=>'L', +120314=>'L', +120315=>'L', +120316=>'L', +120317=>'L', +120318=>'L', +120319=>'L', +120320=>'L', +120321=>'L', +120322=>'L', +120323=>'L', +120324=>'L', +120325=>'L', +120326=>'L', +120327=>'L', +120328=>'L', +120329=>'L', +120330=>'L', +120331=>'L', +120332=>'L', +120333=>'L', +120334=>'L', +120335=>'L', +120336=>'L', +120337=>'L', +120338=>'L', +120339=>'L', +120340=>'L', +120341=>'L', +120342=>'L', +120343=>'L', +120344=>'L', +120345=>'L', +120346=>'L', +120347=>'L', +120348=>'L', +120349=>'L', +120350=>'L', +120351=>'L', +120352=>'L', +120353=>'L', +120354=>'L', +120355=>'L', +120356=>'L', +120357=>'L', +120358=>'L', +120359=>'L', +120360=>'L', +120361=>'L', +120362=>'L', +120363=>'L', +120364=>'L', +120365=>'L', +120366=>'L', +120367=>'L', +120368=>'L', +120369=>'L', +120370=>'L', +120371=>'L', +120372=>'L', +120373=>'L', +120374=>'L', +120375=>'L', +120376=>'L', +120377=>'L', +120378=>'L', +120379=>'L', +120380=>'L', +120381=>'L', +120382=>'L', +120383=>'L', +120384=>'L', +120385=>'L', +120386=>'L', +120387=>'L', +120388=>'L', +120389=>'L', +120390=>'L', +120391=>'L', +120392=>'L', +120393=>'L', +120394=>'L', +120395=>'L', +120396=>'L', +120397=>'L', +120398=>'L', +120399=>'L', +120400=>'L', +120401=>'L', +120402=>'L', +120403=>'L', +120404=>'L', +120405=>'L', +120406=>'L', +120407=>'L', +120408=>'L', +120409=>'L', +120410=>'L', +120411=>'L', +120412=>'L', +120413=>'L', +120414=>'L', +120415=>'L', +120416=>'L', +120417=>'L', +120418=>'L', +120419=>'L', +120420=>'L', +120421=>'L', +120422=>'L', +120423=>'L', +120424=>'L', +120425=>'L', +120426=>'L', +120427=>'L', +120428=>'L', +120429=>'L', +120430=>'L', +120431=>'L', +120432=>'L', +120433=>'L', +120434=>'L', +120435=>'L', +120436=>'L', +120437=>'L', +120438=>'L', +120439=>'L', +120440=>'L', +120441=>'L', +120442=>'L', +120443=>'L', +120444=>'L', +120445=>'L', +120446=>'L', +120447=>'L', +120448=>'L', +120449=>'L', +120450=>'L', +120451=>'L', +120452=>'L', +120453=>'L', +120454=>'L', +120455=>'L', +120456=>'L', +120457=>'L', +120458=>'L', +120459=>'L', +120460=>'L', +120461=>'L', +120462=>'L', +120463=>'L', +120464=>'L', +120465=>'L', +120466=>'L', +120467=>'L', +120468=>'L', +120469=>'L', +120470=>'L', +120471=>'L', +120472=>'L', +120473=>'L', +120474=>'L', +120475=>'L', +120476=>'L', +120477=>'L', +120478=>'L', +120479=>'L', +120480=>'L', +120481=>'L', +120482=>'L', +120483=>'L', +120484=>'L', +120485=>'L', +120488=>'L', +120489=>'L', +120490=>'L', +120491=>'L', +120492=>'L', +120493=>'L', +120494=>'L', +120495=>'L', +120496=>'L', +120497=>'L', +120498=>'L', +120499=>'L', +120500=>'L', +120501=>'L', +120502=>'L', +120503=>'L', +120504=>'L', +120505=>'L', +120506=>'L', +120507=>'L', +120508=>'L', +120509=>'L', +120510=>'L', +120511=>'L', +120512=>'L', +120513=>'L', +120514=>'L', +120515=>'L', +120516=>'L', +120517=>'L', +120518=>'L', +120519=>'L', +120520=>'L', +120521=>'L', +120522=>'L', +120523=>'L', +120524=>'L', +120525=>'L', +120526=>'L', +120527=>'L', +120528=>'L', +120529=>'L', +120530=>'L', +120531=>'L', +120532=>'L', +120533=>'L', +120534=>'L', +120535=>'L', +120536=>'L', +120537=>'L', +120538=>'L', +120539=>'L', +120540=>'L', +120541=>'L', +120542=>'L', +120543=>'L', +120544=>'L', +120545=>'L', +120546=>'L', +120547=>'L', +120548=>'L', +120549=>'L', +120550=>'L', +120551=>'L', +120552=>'L', +120553=>'L', +120554=>'L', +120555=>'L', +120556=>'L', +120557=>'L', +120558=>'L', +120559=>'L', +120560=>'L', +120561=>'L', +120562=>'L', +120563=>'L', +120564=>'L', +120565=>'L', +120566=>'L', +120567=>'L', +120568=>'L', +120569=>'L', +120570=>'L', +120571=>'L', +120572=>'L', +120573=>'L', +120574=>'L', +120575=>'L', +120576=>'L', +120577=>'L', +120578=>'L', +120579=>'L', +120580=>'L', +120581=>'L', +120582=>'L', +120583=>'L', +120584=>'L', +120585=>'L', +120586=>'L', +120587=>'L', +120588=>'L', +120589=>'L', +120590=>'L', +120591=>'L', +120592=>'L', +120593=>'L', +120594=>'L', +120595=>'L', +120596=>'L', +120597=>'L', +120598=>'L', +120599=>'L', +120600=>'L', +120601=>'L', +120602=>'L', +120603=>'L', +120604=>'L', +120605=>'L', +120606=>'L', +120607=>'L', +120608=>'L', +120609=>'L', +120610=>'L', +120611=>'L', +120612=>'L', +120613=>'L', +120614=>'L', +120615=>'L', +120616=>'L', +120617=>'L', +120618=>'L', +120619=>'L', +120620=>'L', +120621=>'L', +120622=>'L', +120623=>'L', +120624=>'L', +120625=>'L', +120626=>'L', +120627=>'L', +120628=>'L', +120629=>'L', +120630=>'L', +120631=>'L', +120632=>'L', +120633=>'L', +120634=>'L', +120635=>'L', +120636=>'L', +120637=>'L', +120638=>'L', +120639=>'L', +120640=>'L', +120641=>'L', +120642=>'L', +120643=>'L', +120644=>'L', +120645=>'L', +120646=>'L', +120647=>'L', +120648=>'L', +120649=>'L', +120650=>'L', +120651=>'L', +120652=>'L', +120653=>'L', +120654=>'L', +120655=>'L', +120656=>'L', +120657=>'L', +120658=>'L', +120659=>'L', +120660=>'L', +120661=>'L', +120662=>'L', +120663=>'L', +120664=>'L', +120665=>'L', +120666=>'L', +120667=>'L', +120668=>'L', +120669=>'L', +120670=>'L', +120671=>'L', +120672=>'L', +120673=>'L', +120674=>'L', +120675=>'L', +120676=>'L', +120677=>'L', +120678=>'L', +120679=>'L', +120680=>'L', +120681=>'L', +120682=>'L', +120683=>'L', +120684=>'L', +120685=>'L', +120686=>'L', +120687=>'L', +120688=>'L', +120689=>'L', +120690=>'L', +120691=>'L', +120692=>'L', +120693=>'L', +120694=>'L', +120695=>'L', +120696=>'L', +120697=>'L', +120698=>'L', +120699=>'L', +120700=>'L', +120701=>'L', +120702=>'L', +120703=>'L', +120704=>'L', +120705=>'L', +120706=>'L', +120707=>'L', +120708=>'L', +120709=>'L', +120710=>'L', +120711=>'L', +120712=>'L', +120713=>'L', +120714=>'L', +120715=>'L', +120716=>'L', +120717=>'L', +120718=>'L', +120719=>'L', +120720=>'L', +120721=>'L', +120722=>'L', +120723=>'L', +120724=>'L', +120725=>'L', +120726=>'L', +120727=>'L', +120728=>'L', +120729=>'L', +120730=>'L', +120731=>'L', +120732=>'L', +120733=>'L', +120734=>'L', +120735=>'L', +120736=>'L', +120737=>'L', +120738=>'L', +120739=>'L', +120740=>'L', +120741=>'L', +120742=>'L', +120743=>'L', +120744=>'L', +120745=>'L', +120746=>'L', +120747=>'L', +120748=>'L', +120749=>'L', +120750=>'L', +120751=>'L', +120752=>'L', +120753=>'L', +120754=>'L', +120755=>'L', +120756=>'L', +120757=>'L', +120758=>'L', +120759=>'L', +120760=>'L', +120761=>'L', +120762=>'L', +120763=>'L', +120764=>'L', +120765=>'L', +120766=>'L', +120767=>'L', +120768=>'L', +120769=>'L', +120770=>'L', +120771=>'L', +120772=>'L', +120773=>'L', +120774=>'L', +120775=>'L', +120776=>'L', +120777=>'L', +120778=>'L', +120779=>'L', +120782=>'EN', +120783=>'EN', +120784=>'EN', +120785=>'EN', +120786=>'EN', +120787=>'EN', +120788=>'EN', +120789=>'EN', +120790=>'EN', +120791=>'EN', +120792=>'EN', +120793=>'EN', +120794=>'EN', +120795=>'EN', +120796=>'EN', +120797=>'EN', +120798=>'EN', +120799=>'EN', +120800=>'EN', +120801=>'EN', +120802=>'EN', +120803=>'EN', +120804=>'EN', +120805=>'EN', +120806=>'EN', +120807=>'EN', +120808=>'EN', +120809=>'EN', +120810=>'EN', +120811=>'EN', +120812=>'EN', +120813=>'EN', +120814=>'EN', +120815=>'EN', +120816=>'EN', +120817=>'EN', +120818=>'EN', +120819=>'EN', +120820=>'EN', +120821=>'EN', +120822=>'EN', +120823=>'EN', +120824=>'EN', +120825=>'EN', +120826=>'EN', +120827=>'EN', +120828=>'EN', +120829=>'EN', +120830=>'EN', +120831=>'EN', +131072=>'L', +173782=>'L', +194560=>'L', +194561=>'L', +194562=>'L', +194563=>'L', +194564=>'L', +194565=>'L', +194566=>'L', +194567=>'L', +194568=>'L', +194569=>'L', +194570=>'L', +194571=>'L', +194572=>'L', +194573=>'L', +194574=>'L', +194575=>'L', +194576=>'L', +194577=>'L', +194578=>'L', +194579=>'L', +194580=>'L', +194581=>'L', +194582=>'L', +194583=>'L', +194584=>'L', +194585=>'L', +194586=>'L', +194587=>'L', +194588=>'L', +194589=>'L', +194590=>'L', +194591=>'L', +194592=>'L', +194593=>'L', +194594=>'L', +194595=>'L', +194596=>'L', +194597=>'L', +194598=>'L', +194599=>'L', +194600=>'L', +194601=>'L', +194602=>'L', +194603=>'L', +194604=>'L', +194605=>'L', +194606=>'L', +194607=>'L', +194608=>'L', +194609=>'L', +194610=>'L', +194611=>'L', +194612=>'L', +194613=>'L', +194614=>'L', +194615=>'L', +194616=>'L', +194617=>'L', +194618=>'L', +194619=>'L', +194620=>'L', +194621=>'L', +194622=>'L', +194623=>'L', +194624=>'L', +194625=>'L', +194626=>'L', +194627=>'L', +194628=>'L', +194629=>'L', +194630=>'L', +194631=>'L', +194632=>'L', +194633=>'L', +194634=>'L', +194635=>'L', +194636=>'L', +194637=>'L', +194638=>'L', +194639=>'L', +194640=>'L', +194641=>'L', +194642=>'L', +194643=>'L', +194644=>'L', +194645=>'L', +194646=>'L', +194647=>'L', +194648=>'L', +194649=>'L', +194650=>'L', +194651=>'L', +194652=>'L', +194653=>'L', +194654=>'L', +194655=>'L', +194656=>'L', +194657=>'L', +194658=>'L', +194659=>'L', +194660=>'L', +194661=>'L', +194662=>'L', +194663=>'L', +194664=>'L', +194665=>'L', +194666=>'L', +194667=>'L', +194668=>'L', +194669=>'L', +194670=>'L', +194671=>'L', +194672=>'L', +194673=>'L', +194674=>'L', +194675=>'L', +194676=>'L', +194677=>'L', +194678=>'L', +194679=>'L', +194680=>'L', +194681=>'L', +194682=>'L', +194683=>'L', +194684=>'L', +194685=>'L', +194686=>'L', +194687=>'L', +194688=>'L', +194689=>'L', +194690=>'L', +194691=>'L', +194692=>'L', +194693=>'L', +194694=>'L', +194695=>'L', +194696=>'L', +194697=>'L', +194698=>'L', +194699=>'L', +194700=>'L', +194701=>'L', +194702=>'L', +194703=>'L', +194704=>'L', +194705=>'L', +194706=>'L', +194707=>'L', +194708=>'L', +194709=>'L', +194710=>'L', +194711=>'L', +194712=>'L', +194713=>'L', +194714=>'L', +194715=>'L', +194716=>'L', +194717=>'L', +194718=>'L', +194719=>'L', +194720=>'L', +194721=>'L', +194722=>'L', +194723=>'L', +194724=>'L', +194725=>'L', +194726=>'L', +194727=>'L', +194728=>'L', +194729=>'L', +194730=>'L', +194731=>'L', +194732=>'L', +194733=>'L', +194734=>'L', +194735=>'L', +194736=>'L', +194737=>'L', +194738=>'L', +194739=>'L', +194740=>'L', +194741=>'L', +194742=>'L', +194743=>'L', +194744=>'L', +194745=>'L', +194746=>'L', +194747=>'L', +194748=>'L', +194749=>'L', +194750=>'L', +194751=>'L', +194752=>'L', +194753=>'L', +194754=>'L', +194755=>'L', +194756=>'L', +194757=>'L', +194758=>'L', +194759=>'L', +194760=>'L', +194761=>'L', +194762=>'L', +194763=>'L', +194764=>'L', +194765=>'L', +194766=>'L', +194767=>'L', +194768=>'L', +194769=>'L', +194770=>'L', +194771=>'L', +194772=>'L', +194773=>'L', +194774=>'L', +194775=>'L', +194776=>'L', +194777=>'L', +194778=>'L', +194779=>'L', +194780=>'L', +194781=>'L', +194782=>'L', +194783=>'L', +194784=>'L', +194785=>'L', +194786=>'L', +194787=>'L', +194788=>'L', +194789=>'L', +194790=>'L', +194791=>'L', +194792=>'L', +194793=>'L', +194794=>'L', +194795=>'L', +194796=>'L', +194797=>'L', +194798=>'L', +194799=>'L', +194800=>'L', +194801=>'L', +194802=>'L', +194803=>'L', +194804=>'L', +194805=>'L', +194806=>'L', +194807=>'L', +194808=>'L', +194809=>'L', +194810=>'L', +194811=>'L', +194812=>'L', +194813=>'L', +194814=>'L', +194815=>'L', +194816=>'L', +194817=>'L', +194818=>'L', +194819=>'L', +194820=>'L', +194821=>'L', +194822=>'L', +194823=>'L', +194824=>'L', +194825=>'L', +194826=>'L', +194827=>'L', +194828=>'L', +194829=>'L', +194830=>'L', +194831=>'L', +194832=>'L', +194833=>'L', +194834=>'L', +194835=>'L', +194836=>'L', +194837=>'L', +194838=>'L', +194839=>'L', +194840=>'L', +194841=>'L', +194842=>'L', +194843=>'L', +194844=>'L', +194845=>'L', +194846=>'L', +194847=>'L', +194848=>'L', +194849=>'L', +194850=>'L', +194851=>'L', +194852=>'L', +194853=>'L', +194854=>'L', +194855=>'L', +194856=>'L', +194857=>'L', +194858=>'L', +194859=>'L', +194860=>'L', +194861=>'L', +194862=>'L', +194863=>'L', +194864=>'L', +194865=>'L', +194866=>'L', +194867=>'L', +194868=>'L', +194869=>'L', +194870=>'L', +194871=>'L', +194872=>'L', +194873=>'L', +194874=>'L', +194875=>'L', +194876=>'L', +194877=>'L', +194878=>'L', +194879=>'L', +194880=>'L', +194881=>'L', +194882=>'L', +194883=>'L', +194884=>'L', +194885=>'L', +194886=>'L', +194887=>'L', +194888=>'L', +194889=>'L', +194890=>'L', +194891=>'L', +194892=>'L', +194893=>'L', +194894=>'L', +194895=>'L', +194896=>'L', +194897=>'L', +194898=>'L', +194899=>'L', +194900=>'L', +194901=>'L', +194902=>'L', +194903=>'L', +194904=>'L', +194905=>'L', +194906=>'L', +194907=>'L', +194908=>'L', +194909=>'L', +194910=>'L', +194911=>'L', +194912=>'L', +194913=>'L', +194914=>'L', +194915=>'L', +194916=>'L', +194917=>'L', +194918=>'L', +194919=>'L', +194920=>'L', +194921=>'L', +194922=>'L', +194923=>'L', +194924=>'L', +194925=>'L', +194926=>'L', +194927=>'L', +194928=>'L', +194929=>'L', +194930=>'L', +194931=>'L', +194932=>'L', +194933=>'L', +194934=>'L', +194935=>'L', +194936=>'L', +194937=>'L', +194938=>'L', +194939=>'L', +194940=>'L', +194941=>'L', +194942=>'L', +194943=>'L', +194944=>'L', +194945=>'L', +194946=>'L', +194947=>'L', +194948=>'L', +194949=>'L', +194950=>'L', +194951=>'L', +194952=>'L', +194953=>'L', +194954=>'L', +194955=>'L', +194956=>'L', +194957=>'L', +194958=>'L', +194959=>'L', +194960=>'L', +194961=>'L', +194962=>'L', +194963=>'L', +194964=>'L', +194965=>'L', +194966=>'L', +194967=>'L', +194968=>'L', +194969=>'L', +194970=>'L', +194971=>'L', +194972=>'L', +194973=>'L', +194974=>'L', +194975=>'L', +194976=>'L', +194977=>'L', +194978=>'L', +194979=>'L', +194980=>'L', +194981=>'L', +194982=>'L', +194983=>'L', +194984=>'L', +194985=>'L', +194986=>'L', +194987=>'L', +194988=>'L', +194989=>'L', +194990=>'L', +194991=>'L', +194992=>'L', +194993=>'L', +194994=>'L', +194995=>'L', +194996=>'L', +194997=>'L', +194998=>'L', +194999=>'L', +195000=>'L', +195001=>'L', +195002=>'L', +195003=>'L', +195004=>'L', +195005=>'L', +195006=>'L', +195007=>'L', +195008=>'L', +195009=>'L', +195010=>'L', +195011=>'L', +195012=>'L', +195013=>'L', +195014=>'L', +195015=>'L', +195016=>'L', +195017=>'L', +195018=>'L', +195019=>'L', +195020=>'L', +195021=>'L', +195022=>'L', +195023=>'L', +195024=>'L', +195025=>'L', +195026=>'L', +195027=>'L', +195028=>'L', +195029=>'L', +195030=>'L', +195031=>'L', +195032=>'L', +195033=>'L', +195034=>'L', +195035=>'L', +195036=>'L', +195037=>'L', +195038=>'L', +195039=>'L', +195040=>'L', +195041=>'L', +195042=>'L', +195043=>'L', +195044=>'L', +195045=>'L', +195046=>'L', +195047=>'L', +195048=>'L', +195049=>'L', +195050=>'L', +195051=>'L', +195052=>'L', +195053=>'L', +195054=>'L', +195055=>'L', +195056=>'L', +195057=>'L', +195058=>'L', +195059=>'L', +195060=>'L', +195061=>'L', +195062=>'L', +195063=>'L', +195064=>'L', +195065=>'L', +195066=>'L', +195067=>'L', +195068=>'L', +195069=>'L', +195070=>'L', +195071=>'L', +195072=>'L', +195073=>'L', +195074=>'L', +195075=>'L', +195076=>'L', +195077=>'L', +195078=>'L', +195079=>'L', +195080=>'L', +195081=>'L', +195082=>'L', +195083=>'L', +195084=>'L', +195085=>'L', +195086=>'L', +195087=>'L', +195088=>'L', +195089=>'L', +195090=>'L', +195091=>'L', +195092=>'L', +195093=>'L', +195094=>'L', +195095=>'L', +195096=>'L', +195097=>'L', +195098=>'L', +195099=>'L', +195100=>'L', +195101=>'L', +917505=>'BN', +917536=>'BN', +917537=>'BN', +917538=>'BN', +917539=>'BN', +917540=>'BN', +917541=>'BN', +917542=>'BN', +917543=>'BN', +917544=>'BN', +917545=>'BN', +917546=>'BN', +917547=>'BN', +917548=>'BN', +917549=>'BN', +917550=>'BN', +917551=>'BN', +917552=>'BN', +917553=>'BN', +917554=>'BN', +917555=>'BN', +917556=>'BN', +917557=>'BN', +917558=>'BN', +917559=>'BN', +917560=>'BN', +917561=>'BN', +917562=>'BN', +917563=>'BN', +917564=>'BN', +917565=>'BN', +917566=>'BN', +917567=>'BN', +917568=>'BN', +917569=>'BN', +917570=>'BN', +917571=>'BN', +917572=>'BN', +917573=>'BN', +917574=>'BN', +917575=>'BN', +917576=>'BN', +917577=>'BN', +917578=>'BN', +917579=>'BN', +917580=>'BN', +917581=>'BN', +917582=>'BN', +917583=>'BN', +917584=>'BN', +917585=>'BN', +917586=>'BN', +917587=>'BN', +917588=>'BN', +917589=>'BN', +917590=>'BN', +917591=>'BN', +917592=>'BN', +917593=>'BN', +917594=>'BN', +917595=>'BN', +917596=>'BN', +917597=>'BN', +917598=>'BN', +917599=>'BN', +917600=>'BN', +917601=>'BN', +917602=>'BN', +917603=>'BN', +917604=>'BN', +917605=>'BN', +917606=>'BN', +917607=>'BN', +917608=>'BN', +917609=>'BN', +917610=>'BN', +917611=>'BN', +917612=>'BN', +917613=>'BN', +917614=>'BN', +917615=>'BN', +917616=>'BN', +917617=>'BN', +917618=>'BN', +917619=>'BN', +917620=>'BN', +917621=>'BN', +917622=>'BN', +917623=>'BN', +917624=>'BN', +917625=>'BN', +917626=>'BN', +917627=>'BN', +917628=>'BN', +917629=>'BN', +917630=>'BN', +917631=>'BN', +917760=>'NSM', +917761=>'NSM', +917762=>'NSM', +917763=>'NSM', +917764=>'NSM', +917765=>'NSM', +917766=>'NSM', +917767=>'NSM', +917768=>'NSM', +917769=>'NSM', +917770=>'NSM', +917771=>'NSM', +917772=>'NSM', +917773=>'NSM', +917774=>'NSM', +917775=>'NSM', +917776=>'NSM', +917777=>'NSM', +917778=>'NSM', +917779=>'NSM', +917780=>'NSM', +917781=>'NSM', +917782=>'NSM', +917783=>'NSM', +917784=>'NSM', +917785=>'NSM', +917786=>'NSM', +917787=>'NSM', +917788=>'NSM', +917789=>'NSM', +917790=>'NSM', +917791=>'NSM', +917792=>'NSM', +917793=>'NSM', +917794=>'NSM', +917795=>'NSM', +917796=>'NSM', +917797=>'NSM', +917798=>'NSM', +917799=>'NSM', +917800=>'NSM', +917801=>'NSM', +917802=>'NSM', +917803=>'NSM', +917804=>'NSM', +917805=>'NSM', +917806=>'NSM', +917807=>'NSM', +917808=>'NSM', +917809=>'NSM', +917810=>'NSM', +917811=>'NSM', +917812=>'NSM', +917813=>'NSM', +917814=>'NSM', +917815=>'NSM', +917816=>'NSM', +917817=>'NSM', +917818=>'NSM', +917819=>'NSM', +917820=>'NSM', +917821=>'NSM', +917822=>'NSM', +917823=>'NSM', +917824=>'NSM', +917825=>'NSM', +917826=>'NSM', +917827=>'NSM', +917828=>'NSM', +917829=>'NSM', +917830=>'NSM', +917831=>'NSM', +917832=>'NSM', +917833=>'NSM', +917834=>'NSM', +917835=>'NSM', +917836=>'NSM', +917837=>'NSM', +917838=>'NSM', +917839=>'NSM', +917840=>'NSM', +917841=>'NSM', +917842=>'NSM', +917843=>'NSM', +917844=>'NSM', +917845=>'NSM', +917846=>'NSM', +917847=>'NSM', +917848=>'NSM', +917849=>'NSM', +917850=>'NSM', +917851=>'NSM', +917852=>'NSM', +917853=>'NSM', +917854=>'NSM', +917855=>'NSM', +917856=>'NSM', +917857=>'NSM', +917858=>'NSM', +917859=>'NSM', +917860=>'NSM', +917861=>'NSM', +917862=>'NSM', +917863=>'NSM', +917864=>'NSM', +917865=>'NSM', +917866=>'NSM', +917867=>'NSM', +917868=>'NSM', +917869=>'NSM', +917870=>'NSM', +917871=>'NSM', +917872=>'NSM', +917873=>'NSM', +917874=>'NSM', +917875=>'NSM', +917876=>'NSM', +917877=>'NSM', +917878=>'NSM', +917879=>'NSM', +917880=>'NSM', +917881=>'NSM', +917882=>'NSM', +917883=>'NSM', +917884=>'NSM', +917885=>'NSM', +917886=>'NSM', +917887=>'NSM', +917888=>'NSM', +917889=>'NSM', +917890=>'NSM', +917891=>'NSM', +917892=>'NSM', +917893=>'NSM', +917894=>'NSM', +917895=>'NSM', +917896=>'NSM', +917897=>'NSM', +917898=>'NSM', +917899=>'NSM', +917900=>'NSM', +917901=>'NSM', +917902=>'NSM', +917903=>'NSM', +917904=>'NSM', +917905=>'NSM', +917906=>'NSM', +917907=>'NSM', +917908=>'NSM', +917909=>'NSM', +917910=>'NSM', +917911=>'NSM', +917912=>'NSM', +917913=>'NSM', +917914=>'NSM', +917915=>'NSM', +917916=>'NSM', +917917=>'NSM', +917918=>'NSM', +917919=>'NSM', +917920=>'NSM', +917921=>'NSM', +917922=>'NSM', +917923=>'NSM', +917924=>'NSM', +917925=>'NSM', +917926=>'NSM', +917927=>'NSM', +917928=>'NSM', +917929=>'NSM', +917930=>'NSM', +917931=>'NSM', +917932=>'NSM', +917933=>'NSM', +917934=>'NSM', +917935=>'NSM', +917936=>'NSM', +917937=>'NSM', +917938=>'NSM', +917939=>'NSM', +917940=>'NSM', +917941=>'NSM', +917942=>'NSM', +917943=>'NSM', +917944=>'NSM', +917945=>'NSM', +917946=>'NSM', +917947=>'NSM', +917948=>'NSM', +917949=>'NSM', +917950=>'NSM', +917951=>'NSM', +917952=>'NSM', +917953=>'NSM', +917954=>'NSM', +917955=>'NSM', +917956=>'NSM', +917957=>'NSM', +917958=>'NSM', +917959=>'NSM', +917960=>'NSM', +917961=>'NSM', +917962=>'NSM', +917963=>'NSM', +917964=>'NSM', +917965=>'NSM', +917966=>'NSM', +917967=>'NSM', +917968=>'NSM', +917969=>'NSM', +917970=>'NSM', +917971=>'NSM', +917972=>'NSM', +917973=>'NSM', +917974=>'NSM', +917975=>'NSM', +917976=>'NSM', +917977=>'NSM', +917978=>'NSM', +917979=>'NSM', +917980=>'NSM', +917981=>'NSM', +917982=>'NSM', +917983=>'NSM', +917984=>'NSM', +917985=>'NSM', +917986=>'NSM', +917987=>'NSM', +917988=>'NSM', +917989=>'NSM', +917990=>'NSM', +917991=>'NSM', +917992=>'NSM', +917993=>'NSM', +917994=>'NSM', +917995=>'NSM', +917996=>'NSM', +917997=>'NSM', +917998=>'NSM', +917999=>'NSM', +983040=>'L', +1048573=>'L', +1048576=>'L', +1114109=>'L' ); /** -* Mirror unicode characters. -* For information on bidi mirroring, see UAX #9: Bidirectional Algorithm, at http://www.unicode.org/unicode/reports/tr9/ -*/ -$unicode_mirror = array( -0x0028 => 0x0029, -0x0029 => 0x0028, -0x003C => 0x003E, -0x003E => 0x003C, -0x005B => 0x005D, -0x005D => 0x005B, -0x007B => 0x007D, -0x007D => 0x007B, -0x00AB => 0x00BB, -0x00BB => 0x00AB, -0x0F3A => 0x0F3B, -0x0F3B => 0x0F3A, -0x0F3C => 0x0F3D, -0x0F3D => 0x0F3C, -0x169B => 0x169C, -0x169C => 0x169B, -0x2018 => 0x2019, -0x2019 => 0x2018, -0x201C => 0x201D, -0x201D => 0x201C, -0x2039 => 0x203A, -0x203A => 0x2039, -0x2045 => 0x2046, -0x2046 => 0x2045, -0x207D => 0x207E, -0x207E => 0x207D, -0x208D => 0x208E, -0x208E => 0x208D, -0x2208 => 0x220B, -0x2209 => 0x220C, -0x220A => 0x220D, -0x220B => 0x2208, -0x220C => 0x2209, -0x220D => 0x220A, -0x2215 => 0x29F5, -0x223C => 0x223D, -0x223D => 0x223C, -0x2243 => 0x22CD, -0x2252 => 0x2253, -0x2253 => 0x2252, -0x2254 => 0x2255, -0x2255 => 0x2254, -0x2264 => 0x2265, -0x2265 => 0x2264, -0x2266 => 0x2267, -0x2267 => 0x2266, -0x2268 => 0x2269, -0x2269 => 0x2268, -0x226A => 0x226B, -0x226B => 0x226A, -0x226E => 0x226F, -0x226F => 0x226E, -0x2270 => 0x2271, -0x2271 => 0x2270, -0x2272 => 0x2273, -0x2273 => 0x2272, -0x2274 => 0x2275, -0x2275 => 0x2274, -0x2276 => 0x2277, -0x2277 => 0x2276, -0x2278 => 0x2279, -0x2279 => 0x2278, -0x227A => 0x227B, -0x227B => 0x227A, -0x227C => 0x227D, -0x227D => 0x227C, -0x227E => 0x227F, -0x227F => 0x227E, -0x2280 => 0x2281, -0x2281 => 0x2280, -0x2282 => 0x2283, -0x2283 => 0x2282, -0x2284 => 0x2285, -0x2285 => 0x2284, -0x2286 => 0x2287, -0x2287 => 0x2286, -0x2288 => 0x2289, -0x2289 => 0x2288, -0x228A => 0x228B, -0x228B => 0x228A, -0x228F => 0x2290, -0x2290 => 0x228F, -0x2291 => 0x2292, -0x2292 => 0x2291, -0x2298 => 0x29B8, -0x22A2 => 0x22A3, -0x22A3 => 0x22A2, -0x22A6 => 0x2ADE, -0x22A8 => 0x2AE4, -0x22A9 => 0x2AE3, -0x22AB => 0x2AE5, -0x22B0 => 0x22B1, -0x22B1 => 0x22B0, -0x22B2 => 0x22B3, -0x22B3 => 0x22B2, -0x22B4 => 0x22B5, -0x22B5 => 0x22B4, -0x22B6 => 0x22B7, -0x22B7 => 0x22B6, -0x22C9 => 0x22CA, -0x22CA => 0x22C9, -0x22CB => 0x22CC, -0x22CC => 0x22CB, -0x22CD => 0x2243, -0x22D0 => 0x22D1, -0x22D1 => 0x22D0, -0x22D6 => 0x22D7, -0x22D7 => 0x22D6, -0x22D8 => 0x22D9, -0x22D9 => 0x22D8, -0x22DA => 0x22DB, -0x22DB => 0x22DA, -0x22DC => 0x22DD, -0x22DD => 0x22DC, -0x22DE => 0x22DF, -0x22DF => 0x22DE, -0x22E0 => 0x22E1, -0x22E1 => 0x22E0, -0x22E2 => 0x22E3, -0x22E3 => 0x22E2, -0x22E4 => 0x22E5, -0x22E5 => 0x22E4, -0x22E6 => 0x22E7, -0x22E7 => 0x22E6, -0x22E8 => 0x22E9, -0x22E9 => 0x22E8, -0x22EA => 0x22EB, -0x22EB => 0x22EA, -0x22EC => 0x22ED, -0x22ED => 0x22EC, -0x22F0 => 0x22F1, -0x22F1 => 0x22F0, -0x22F2 => 0x22FA, -0x22F3 => 0x22FB, -0x22F4 => 0x22FC, -0x22F6 => 0x22FD, -0x22F7 => 0x22FE, -0x22FA => 0x22F2, -0x22FB => 0x22F3, -0x22FC => 0x22F4, -0x22FD => 0x22F6, -0x22FE => 0x22F7, -0x2308 => 0x2309, -0x2309 => 0x2308, -0x230A => 0x230B, -0x230B => 0x230A, -0x2329 => 0x232A, -0x232A => 0x2329, -0x2768 => 0x2769, -0x2769 => 0x2768, -0x276A => 0x276B, -0x276B => 0x276A, -0x276C => 0x276D, -0x276D => 0x276C, -0x276E => 0x276F, -0x276F => 0x276E, -0x2770 => 0x2771, -0x2771 => 0x2770, -0x2772 => 0x2773, -0x2773 => 0x2772, -0x2774 => 0x2775, -0x2775 => 0x2774, -0x27C3 => 0x27C4, -0x27C4 => 0x27C3, -0x27C5 => 0x27C6, -0x27C6 => 0x27C5, -0x27D5 => 0x27D6, -0x27D6 => 0x27D5, -0x27DD => 0x27DE, -0x27DE => 0x27DD, -0x27E2 => 0x27E3, -0x27E3 => 0x27E2, -0x27E4 => 0x27E5, -0x27E5 => 0x27E4, -0x27E6 => 0x27E7, -0x27E7 => 0x27E6, -0x27E8 => 0x27E9, -0x27E9 => 0x27E8, -0x27EA => 0x27EB, -0x27EB => 0x27EA, -0x2983 => 0x2984, -0x2984 => 0x2983, -0x2985 => 0x2986, -0x2986 => 0x2985, -0x2987 => 0x2988, -0x2988 => 0x2987, -0x2989 => 0x298A, -0x298A => 0x2989, -0x298B => 0x298C, -0x298C => 0x298B, -0x298D => 0x2990, -0x298E => 0x298F, -0x298F => 0x298E, -0x2990 => 0x298D, -0x2991 => 0x2992, -0x2992 => 0x2991, -0x2993 => 0x2994, -0x2994 => 0x2993, -0x2995 => 0x2996, -0x2996 => 0x2995, -0x2997 => 0x2998, -0x2998 => 0x2997, -0x29B8 => 0x2298, -0x29C0 => 0x29C1, -0x29C1 => 0x29C0, -0x29C4 => 0x29C5, -0x29C5 => 0x29C4, -0x29CF => 0x29D0, -0x29D0 => 0x29CF, -0x29D1 => 0x29D2, -0x29D2 => 0x29D1, -0x29D4 => 0x29D5, -0x29D5 => 0x29D4, -0x29D8 => 0x29D9, -0x29D9 => 0x29D8, -0x29DA => 0x29DB, -0x29DB => 0x29DA, -0x29F5 => 0x2215, -0x29F8 => 0x29F9, -0x29F9 => 0x29F8, -0x29FC => 0x29FD, -0x29FD => 0x29FC, -0x2A2B => 0x2A2C, -0x2A2C => 0x2A2B, -0x2A2D => 0x2A2E, -0x2A2E => 0x2A2D, -0x2A34 => 0x2A35, -0x2A35 => 0x2A34, -0x2A3C => 0x2A3D, -0x2A3D => 0x2A3C, -0x2A64 => 0x2A65, -0x2A65 => 0x2A64, -0x2A79 => 0x2A7A, -0x2A7A => 0x2A79, -0x2A7D => 0x2A7E, -0x2A7E => 0x2A7D, -0x2A7F => 0x2A80, -0x2A80 => 0x2A7F, -0x2A81 => 0x2A82, -0x2A82 => 0x2A81, -0x2A83 => 0x2A84, -0x2A84 => 0x2A83, -0x2A8B => 0x2A8C, -0x2A8C => 0x2A8B, -0x2A91 => 0x2A92, -0x2A92 => 0x2A91, -0x2A93 => 0x2A94, -0x2A94 => 0x2A93, -0x2A95 => 0x2A96, -0x2A96 => 0x2A95, -0x2A97 => 0x2A98, -0x2A98 => 0x2A97, -0x2A99 => 0x2A9A, -0x2A9A => 0x2A99, -0x2A9B => 0x2A9C, -0x2A9C => 0x2A9B, -0x2AA1 => 0x2AA2, -0x2AA2 => 0x2AA1, -0x2AA6 => 0x2AA7, -0x2AA7 => 0x2AA6, -0x2AA8 => 0x2AA9, -0x2AA9 => 0x2AA8, -0x2AAA => 0x2AAB, -0x2AAB => 0x2AAA, -0x2AAC => 0x2AAD, -0x2AAD => 0x2AAC, -0x2AAF => 0x2AB0, -0x2AB0 => 0x2AAF, -0x2AB3 => 0x2AB4, -0x2AB4 => 0x2AB3, -0x2ABB => 0x2ABC, -0x2ABC => 0x2ABB, -0x2ABD => 0x2ABE, -0x2ABE => 0x2ABD, -0x2ABF => 0x2AC0, -0x2AC0 => 0x2ABF, -0x2AC1 => 0x2AC2, -0x2AC2 => 0x2AC1, -0x2AC3 => 0x2AC4, -0x2AC4 => 0x2AC3, -0x2AC5 => 0x2AC6, -0x2AC6 => 0x2AC5, -0x2ACD => 0x2ACE, -0x2ACE => 0x2ACD, -0x2ACF => 0x2AD0, -0x2AD0 => 0x2ACF, -0x2AD1 => 0x2AD2, -0x2AD2 => 0x2AD1, -0x2AD3 => 0x2AD4, -0x2AD4 => 0x2AD3, -0x2AD5 => 0x2AD6, -0x2AD6 => 0x2AD5, -0x2ADE => 0x22A6, -0x2AE3 => 0x22A9, -0x2AE4 => 0x22A8, -0x2AE5 => 0x22AB, -0x2AEC => 0x2AED, -0x2AED => 0x2AEC, -0x2AF7 => 0x2AF8, -0x2AF8 => 0x2AF7, -0x2AF9 => 0x2AFA, -0x2AFA => 0x2AF9, -0x2E02 => 0x2E03, -0x2E03 => 0x2E02, -0x2E04 => 0x2E05, -0x2E05 => 0x2E04, -0x2E09 => 0x2E0A, -0x2E0A => 0x2E09, -0x2E0C => 0x2E0D, -0x2E0D => 0x2E0C, -0x2E1C => 0x2E1D, -0x2E1D => 0x2E1C, -0x3008 => 0x3009, -0x3009 => 0x3008, -0x300A => 0x300B, -0x300B => 0x300A, -0x300C => 0x300D, -0x300D => 0x300C, -0x300E => 0x300F, -0x300F => 0x300E, -0x3010 => 0x3011, -0x3011 => 0x3010, -0x3014 => 0x3015, -0x3015 => 0x3014, -0x3016 => 0x3017, -0x3017 => 0x3016, -0x3018 => 0x3019, -0x3019 => 0x3018, -0x301A => 0x301B, -0x301B => 0x301A, -0x301D => 0x301E, -0x301E => 0x301D, -0xFE59 => 0xFE5A, -0xFE5A => 0xFE59, -0xFE5B => 0xFE5C, -0xFE5C => 0xFE5B, -0xFE5D => 0xFE5E, -0xFE5E => 0xFE5D, -0xFE64 => 0xFE65, -0xFE65 => 0xFE64, -0xFF08 => 0xFF09, -0xFF09 => 0xFF08, -0xFF1C => 0xFF1E, -0xFF1E => 0xFF1C, -0xFF3B => 0xFF3D, -0xFF3D => 0xFF3B, -0xFF5B => 0xFF5D, -0xFF5D => 0xFF5B, -0xFF5F => 0xFF60, -0xFF60 => 0xFF5F, -0xFF62 => 0xFF63, -0xFF63 => 0xFF62); + * Mirror unicode characters. For information on bidi mirroring, see UAX #9: Bidirectional Algorithm, at http://www.unicode.org/unicode/reports/tr9/ + * @public + */ +public $uni_mirror = array ( +0x0028=>0x0029, +0x0029=>0x0028, +0x003C=>0x003E, +0x003E=>0x003C, +0x005B=>0x005D, +0x005D=>0x005B, +0x007B=>0x007D, +0x007D=>0x007B, +0x00AB=>0x00BB, +0x00BB=>0x00AB, +0x0F3A=>0x0F3B, +0x0F3B=>0x0F3A, +0x0F3C=>0x0F3D, +0x0F3D=>0x0F3C, +0x169B=>0x169C, +0x169C=>0x169B, +0x2018=>0x2019, +0x2019=>0x2018, +0x201C=>0x201D, +0x201D=>0x201C, +0x2039=>0x203A, +0x203A=>0x2039, +0x2045=>0x2046, +0x2046=>0x2045, +0x207D=>0x207E, +0x207E=>0x207D, +0x208D=>0x208E, +0x208E=>0x208D, +0x2208=>0x220B, +0x2209=>0x220C, +0x220A=>0x220D, +0x220B=>0x2208, +0x220C=>0x2209, +0x220D=>0x220A, +0x2215=>0x29F5, +0x223C=>0x223D, +0x223D=>0x223C, +0x2243=>0x22CD, +0x2252=>0x2253, +0x2253=>0x2252, +0x2254=>0x2255, +0x2255=>0x2254, +0x2264=>0x2265, +0x2265=>0x2264, +0x2266=>0x2267, +0x2267=>0x2266, +0x2268=>0x2269, +0x2269=>0x2268, +0x226A=>0x226B, +0x226B=>0x226A, +0x226E=>0x226F, +0x226F=>0x226E, +0x2270=>0x2271, +0x2271=>0x2270, +0x2272=>0x2273, +0x2273=>0x2272, +0x2274=>0x2275, +0x2275=>0x2274, +0x2276=>0x2277, +0x2277=>0x2276, +0x2278=>0x2279, +0x2279=>0x2278, +0x227A=>0x227B, +0x227B=>0x227A, +0x227C=>0x227D, +0x227D=>0x227C, +0x227E=>0x227F, +0x227F=>0x227E, +0x2280=>0x2281, +0x2281=>0x2280, +0x2282=>0x2283, +0x2283=>0x2282, +0x2284=>0x2285, +0x2285=>0x2284, +0x2286=>0x2287, +0x2287=>0x2286, +0x2288=>0x2289, +0x2289=>0x2288, +0x228A=>0x228B, +0x228B=>0x228A, +0x228F=>0x2290, +0x2290=>0x228F, +0x2291=>0x2292, +0x2292=>0x2291, +0x2298=>0x29B8, +0x22A2=>0x22A3, +0x22A3=>0x22A2, +0x22A6=>0x2ADE, +0x22A8=>0x2AE4, +0x22A9=>0x2AE3, +0x22AB=>0x2AE5, +0x22B0=>0x22B1, +0x22B1=>0x22B0, +0x22B2=>0x22B3, +0x22B3=>0x22B2, +0x22B4=>0x22B5, +0x22B5=>0x22B4, +0x22B6=>0x22B7, +0x22B7=>0x22B6, +0x22C9=>0x22CA, +0x22CA=>0x22C9, +0x22CB=>0x22CC, +0x22CC=>0x22CB, +0x22CD=>0x2243, +0x22D0=>0x22D1, +0x22D1=>0x22D0, +0x22D6=>0x22D7, +0x22D7=>0x22D6, +0x22D8=>0x22D9, +0x22D9=>0x22D8, +0x22DA=>0x22DB, +0x22DB=>0x22DA, +0x22DC=>0x22DD, +0x22DD=>0x22DC, +0x22DE=>0x22DF, +0x22DF=>0x22DE, +0x22E0=>0x22E1, +0x22E1=>0x22E0, +0x22E2=>0x22E3, +0x22E3=>0x22E2, +0x22E4=>0x22E5, +0x22E5=>0x22E4, +0x22E6=>0x22E7, +0x22E7=>0x22E6, +0x22E8=>0x22E9, +0x22E9=>0x22E8, +0x22EA=>0x22EB, +0x22EB=>0x22EA, +0x22EC=>0x22ED, +0x22ED=>0x22EC, +0x22F0=>0x22F1, +0x22F1=>0x22F0, +0x22F2=>0x22FA, +0x22F3=>0x22FB, +0x22F4=>0x22FC, +0x22F6=>0x22FD, +0x22F7=>0x22FE, +0x22FA=>0x22F2, +0x22FB=>0x22F3, +0x22FC=>0x22F4, +0x22FD=>0x22F6, +0x22FE=>0x22F7, +0x2308=>0x2309, +0x2309=>0x2308, +0x230A=>0x230B, +0x230B=>0x230A, +0x2329=>0x232A, +0x232A=>0x2329, +0x2768=>0x2769, +0x2769=>0x2768, +0x276A=>0x276B, +0x276B=>0x276A, +0x276C=>0x276D, +0x276D=>0x276C, +0x276E=>0x276F, +0x276F=>0x276E, +0x2770=>0x2771, +0x2771=>0x2770, +0x2772=>0x2773, +0x2773=>0x2772, +0x2774=>0x2775, +0x2775=>0x2774, +0x27C3=>0x27C4, +0x27C4=>0x27C3, +0x27C5=>0x27C6, +0x27C6=>0x27C5, +0x27D5=>0x27D6, +0x27D6=>0x27D5, +0x27DD=>0x27DE, +0x27DE=>0x27DD, +0x27E2=>0x27E3, +0x27E3=>0x27E2, +0x27E4=>0x27E5, +0x27E5=>0x27E4, +0x27E6=>0x27E7, +0x27E7=>0x27E6, +0x27E8=>0x27E9, +0x27E9=>0x27E8, +0x27EA=>0x27EB, +0x27EB=>0x27EA, +0x2983=>0x2984, +0x2984=>0x2983, +0x2985=>0x2986, +0x2986=>0x2985, +0x2987=>0x2988, +0x2988=>0x2987, +0x2989=>0x298A, +0x298A=>0x2989, +0x298B=>0x298C, +0x298C=>0x298B, +0x298D=>0x2990, +0x298E=>0x298F, +0x298F=>0x298E, +0x2990=>0x298D, +0x2991=>0x2992, +0x2992=>0x2991, +0x2993=>0x2994, +0x2994=>0x2993, +0x2995=>0x2996, +0x2996=>0x2995, +0x2997=>0x2998, +0x2998=>0x2997, +0x29B8=>0x2298, +0x29C0=>0x29C1, +0x29C1=>0x29C0, +0x29C4=>0x29C5, +0x29C5=>0x29C4, +0x29CF=>0x29D0, +0x29D0=>0x29CF, +0x29D1=>0x29D2, +0x29D2=>0x29D1, +0x29D4=>0x29D5, +0x29D5=>0x29D4, +0x29D8=>0x29D9, +0x29D9=>0x29D8, +0x29DA=>0x29DB, +0x29DB=>0x29DA, +0x29F5=>0x2215, +0x29F8=>0x29F9, +0x29F9=>0x29F8, +0x29FC=>0x29FD, +0x29FD=>0x29FC, +0x2A2B=>0x2A2C, +0x2A2C=>0x2A2B, +0x2A2D=>0x2A2E, +0x2A2E=>0x2A2D, +0x2A34=>0x2A35, +0x2A35=>0x2A34, +0x2A3C=>0x2A3D, +0x2A3D=>0x2A3C, +0x2A64=>0x2A65, +0x2A65=>0x2A64, +0x2A79=>0x2A7A, +0x2A7A=>0x2A79, +0x2A7D=>0x2A7E, +0x2A7E=>0x2A7D, +0x2A7F=>0x2A80, +0x2A80=>0x2A7F, +0x2A81=>0x2A82, +0x2A82=>0x2A81, +0x2A83=>0x2A84, +0x2A84=>0x2A83, +0x2A8B=>0x2A8C, +0x2A8C=>0x2A8B, +0x2A91=>0x2A92, +0x2A92=>0x2A91, +0x2A93=>0x2A94, +0x2A94=>0x2A93, +0x2A95=>0x2A96, +0x2A96=>0x2A95, +0x2A97=>0x2A98, +0x2A98=>0x2A97, +0x2A99=>0x2A9A, +0x2A9A=>0x2A99, +0x2A9B=>0x2A9C, +0x2A9C=>0x2A9B, +0x2AA1=>0x2AA2, +0x2AA2=>0x2AA1, +0x2AA6=>0x2AA7, +0x2AA7=>0x2AA6, +0x2AA8=>0x2AA9, +0x2AA9=>0x2AA8, +0x2AAA=>0x2AAB, +0x2AAB=>0x2AAA, +0x2AAC=>0x2AAD, +0x2AAD=>0x2AAC, +0x2AAF=>0x2AB0, +0x2AB0=>0x2AAF, +0x2AB3=>0x2AB4, +0x2AB4=>0x2AB3, +0x2ABB=>0x2ABC, +0x2ABC=>0x2ABB, +0x2ABD=>0x2ABE, +0x2ABE=>0x2ABD, +0x2ABF=>0x2AC0, +0x2AC0=>0x2ABF, +0x2AC1=>0x2AC2, +0x2AC2=>0x2AC1, +0x2AC3=>0x2AC4, +0x2AC4=>0x2AC3, +0x2AC5=>0x2AC6, +0x2AC6=>0x2AC5, +0x2ACD=>0x2ACE, +0x2ACE=>0x2ACD, +0x2ACF=>0x2AD0, +0x2AD0=>0x2ACF, +0x2AD1=>0x2AD2, +0x2AD2=>0x2AD1, +0x2AD3=>0x2AD4, +0x2AD4=>0x2AD3, +0x2AD5=>0x2AD6, +0x2AD6=>0x2AD5, +0x2ADE=>0x22A6, +0x2AE3=>0x22A9, +0x2AE4=>0x22A8, +0x2AE5=>0x22AB, +0x2AEC=>0x2AED, +0x2AED=>0x2AEC, +0x2AF7=>0x2AF8, +0x2AF8=>0x2AF7, +0x2AF9=>0x2AFA, +0x2AFA=>0x2AF9, +0x2E02=>0x2E03, +0x2E03=>0x2E02, +0x2E04=>0x2E05, +0x2E05=>0x2E04, +0x2E09=>0x2E0A, +0x2E0A=>0x2E09, +0x2E0C=>0x2E0D, +0x2E0D=>0x2E0C, +0x2E1C=>0x2E1D, +0x2E1D=>0x2E1C, +0x3008=>0x3009, +0x3009=>0x3008, +0x300A=>0x300B, +0x300B=>0x300A, +0x300C=>0x300D, +0x300D=>0x300C, +0x300E=>0x300F, +0x300F=>0x300E, +0x3010=>0x3011, +0x3011=>0x3010, +0x3014=>0x3015, +0x3015=>0x3014, +0x3016=>0x3017, +0x3017=>0x3016, +0x3018=>0x3019, +0x3019=>0x3018, +0x301A=>0x301B, +0x301B=>0x301A, +0x301D=>0x301E, +0x301E=>0x301D, +0xFE59=>0xFE5A, +0xFE5A=>0xFE59, +0xFE5B=>0xFE5C, +0xFE5C=>0xFE5B, +0xFE5D=>0xFE5E, +0xFE5E=>0xFE5D, +0xFE64=>0xFE65, +0xFE65=>0xFE64, +0xFF08=>0xFF09, +0xFF09=>0xFF08, +0xFF1C=>0xFF1E, +0xFF1E=>0xFF1C, +0xFF3B=>0xFF3D, +0xFF3D=>0xFF3B, +0xFF5B=>0xFF5D, +0xFF5D=>0xFF5B, +0xFF5F=>0xFF60, +0xFF60=>0xFF5F, +0xFF62=>0xFF63, +0xFF63=>0xFF62); /** - * Arabic shape subtitutions - * char code => isolated, final, initial, medial + * Arabic shape substitutions: char code => (isolated, final, initial, medial). + * @public */ -$unicode_arlet = array( - 1569 => array(65152), - 1570 => array(65153, 65154), - 1571 => array(65155, 65156), - 1572 => array(65157, 65158), - 1573 => array(65159, 65160), - 1574 => array(65161, 65162, 65163, 65164), - 1575 => array(65165, 65166), - 1576 => array(65167, 65168, 65169, 65170), - 1577 => array(65171, 65172), - 1578 => array(65173, 65174, 65175, 65176), - 1579 => array(65177, 65178, 65179, 65180), - 1580 => array(65181, 65182, 65183, 65184), - 1581 => array(65185, 65186, 65187, 65188), - 1582 => array(65189, 65190, 65191, 65192), - 1583 => array(65193, 65194), - 1584 => array(65195, 65196), - 1585 => array(65197, 65198), - 1586 => array(65199, 65200), - 1587 => array(65201, 65202, 65203, 65204), - 1588 => array(65205, 65206, 65207, 65208), - 1589 => array(65209, 65210, 65211, 65212), - 1590 => array(65213, 65214, 65215, 65216), - 1591 => array(65217, 65218, 65219, 65220), - 1592 => array(65221, 65222, 65223, 65224), - 1593 => array(65225, 65226, 65227, 65228), - 1594 => array(65229, 65230, 65231, 65232), - 1601 => array(65233, 65234, 65235, 65236), - 1602 => array(65237, 65238, 65239, 65240), - 1603 => array(65241, 65242, 65243, 65244), - 1604 => array(65245, 65246, 65247, 65248), - 1605 => array(65249, 65250, 65251, 65252), - 1606 => array(65253, 65254, 65255, 65256), - 1607 => array(65257, 65258, 65259, 65260), - 1608 => array(65261, 65262), - 1609 => array(65263, 65264, 64488, 64489), - 1610 => array(65265, 65266, 65267, 65268), - 1649 => array(64336, 64337), - 1655 => array(64477), - 1657 => array(64358, 64359, 64360, 64361), - 1658 => array(64350, 64351, 64352, 64353), - 1659 => array(64338, 64339, 64340, 64341), - 1662 => array(64342, 64343, 64344, 64345), - 1663 => array(64354, 64355, 64356, 64357), - 1664 => array(64346, 64347, 64348, 64349), - 1667 => array(64374, 64375, 64376, 64377), - 1668 => array(64370, 64371, 64372, 64373), - 1670 => array(64378, 64379, 64380, 64381), - 1671 => array(64382, 64383, 64384, 64385), - 1672 => array(64392, 64393), - 1676 => array(64388, 64389), - 1677 => array(64386, 64387), - 1678 => array(64390, 64391), - 1681 => array(64396, 64397), - 1688 => array(64394, 64395), - 1700 => array(64362, 64363, 64364, 64365), - 1702 => array(64366, 64367, 64368, 64369), - 1705 => array(64398, 64399, 64400, 64401), - 1709 => array(64467, 64468, 64469, 64470), - 1711 => array(64402, 64403, 64404, 64405), - 1713 => array(64410, 64411, 64412, 64413), - 1715 => array(64406, 64407, 64408, 64409), - 1722 => array(64414, 64415), - 1723 => array(64416, 64417, 64418, 64419), - 1726 => array(64426, 64427, 64428, 64429), - 1728 => array(64420, 64421), - 1729 => array(64422, 64423, 64424, 64425), - 1733 => array(64480, 64481), - 1734 => array(64473, 64474), - 1735 => array(64471, 64472), - 1736 => array(64475, 64476), - 1737 => array(64482, 64483), - 1739 => array(64478, 64479), - 1740 => array(64508, 64509, 64510, 64511), - 1744 => array(64484, 64485, 64486, 64487), - 1746 => array(64430, 64431), - 1747 => array(64432, 64433), - 8204 => array(00000), - 8205 => array(00000, 00000, 00000, 00000) +public $uni_arabicsubst = array( +1569=>array(65152), +1570=>array(65153, 65154, 65153, 65154), +1571=>array(65155, 65156, 65155, 65156), +1572=>array(65157, 65158), +1573=>array(65159, 65160, 65159, 65160), +1574=>array(65161, 65162, 65163, 65164), +1575=>array(65165, 65166, 65165, 65166), +1576=>array(65167, 65168, 65169, 65170), +1577=>array(65171, 65172), +1578=>array(65173, 65174, 65175, 65176), +1579=>array(65177, 65178, 65179, 65180), +1580=>array(65181, 65182, 65183, 65184), +1581=>array(65185, 65186, 65187, 65188), +1582=>array(65189, 65190, 65191, 65192), +1583=>array(65193, 65194, 65193, 65194), +1584=>array(65195, 65196, 65195, 65196), +1585=>array(65197, 65198, 65197, 65198), +1586=>array(65199, 65200, 65199, 65200), +1587=>array(65201, 65202, 65203, 65204), +1588=>array(65205, 65206, 65207, 65208), +1589=>array(65209, 65210, 65211, 65212), +1590=>array(65213, 65214, 65215, 65216), +1591=>array(65217, 65218, 65219, 65220), +1592=>array(65221, 65222, 65223, 65224), +1593=>array(65225, 65226, 65227, 65228), +1594=>array(65229, 65230, 65231, 65232), +1601=>array(65233, 65234, 65235, 65236), +1602=>array(65237, 65238, 65239, 65240), +1603=>array(65241, 65242, 65243, 65244), +1604=>array(65245, 65246, 65247, 65248), +1605=>array(65249, 65250, 65251, 65252), +1606=>array(65253, 65254, 65255, 65256), +1607=>array(65257, 65258, 65259, 65260), +1608=>array(65261, 65262, 65261, 65262), +1609=>array(65263, 65264, 64488, 64489), +1610=>array(65265, 65266, 65267, 65268), +1649=>array(64336, 64337), +1655=>array(64477), +1657=>array(64358, 64359, 64360, 64361), +1658=>array(64350, 64351, 64352, 64353), +1659=>array(64338, 64339, 64340, 64341), +1662=>array(64342, 64343, 64344, 64345), +1663=>array(64354, 64355, 64356, 64357), +1664=>array(64346, 64347, 64348, 64349), +1667=>array(64374, 64375, 64376, 64377), +1668=>array(64370, 64371, 64372, 64373), +1670=>array(64378, 64379, 64380, 64381), +1671=>array(64382, 64383, 64384, 64385), +1672=>array(64392, 64393), +1676=>array(64388, 64389), +1677=>array(64386, 64387), +1678=>array(64390, 64391), +1681=>array(64396, 64397), +1688=>array(64394, 64395, 64394, 64395), +1700=>array(64362, 64363, 64364, 64365), +1702=>array(64366, 64367, 64368, 64369), +1705=>array(64398, 64399, 64400, 64401), +1709=>array(64467, 64468, 64469, 64470), +1711=>array(64402, 64403, 64404, 64405), +1713=>array(64410, 64411, 64412, 64413), +1715=>array(64406, 64407, 64408, 64409), +1722=>array(64414, 64415), +1723=>array(64416, 64417, 64418, 64419), +1726=>array(64426, 64427, 64428, 64429), +1728=>array(64420, 64421), +1729=>array(64422, 64423, 64424, 64425), +1733=>array(64480, 64481), +1734=>array(64473, 64474), +1735=>array(64471, 64472), +1736=>array(64475, 64476), +1737=>array(64482, 64483), +1739=>array(64478, 64479), +1740=>array(64508, 64509, 64510, 64511), +1744=>array(64484, 64485, 64486, 64487), +1746=>array(64430, 64431), +1747=>array(64432, 64433) ); +/** + * Arabic laa letter: (char code => isolated, final, initial, medial). + * @public + */ +public $uni_laa_array = array ( +1570 =>array(65269, 65270, 65269, 65270), +1571 =>array(65271, 65272, 65271, 65272), +1573 =>array(65273, 65274, 65273, 65274), +1575 =>array(65275, 65276, 65275, 65276) +); + +/** + * Array of character substitutions for sequences of two diacritics symbols. + * Putting the combining mark and character in the same glyph allows us to avoid the two marks overlapping each other in an illegible manner. + * second NSM char code => substitution char + * @public + */ +public $uni_diacritics = array ( +1612=>64606, # Shadda + Dammatan +1613=>64607, # Shadda + Kasratan +1614=>64608, # Shadda + Fatha +1615=>64609, # Shadda + Damma +1616=>64610 # Shadda + Kasra +); + +/** + * Array of character substitutions from UTF-8 Unicode to Latin1. + * @public + */ +public $uni_utf8tolatin = array ( +8364=>128, # Euro1 +338=>140, # OE +352=>138, # Scaron +376=>159, # Ydieresis +381=>142, # Zcaron2 +8226=>149, # bullet3 +710=>136, # circumflex +8224=>134, # dagger +8225=>135, # daggerdbl +8230=>133, # ellipsis +8212=>151, # emdash +8211=>150, # endash +402=>131, # florin +8249=>139, # guilsinglleft +8250=>155, # guilsinglright +339=>156, # oe +8240=>137, # perthousand +8222=>132, # quotedblbase +8220=>147, # quotedblleft +8221=>148, # quotedblright +8216=>145, # quoteleft +8217=>146, # quoteright +8218=>130, # quotesinglbase +353=>154, # scaron +732=>152, # tilde +8482=>153, # trademark +382=>158 # zcaron2 +); + +} // --- END OF CLASS --- + //============================================================+ // END OF FILE //============================================================+ -?> \ No newline at end of file
    • - *
    • supports all ISO page formats;
    • - *
    • supports UTF-8 Unicode and Right-To-Left languages;
    • - *
    • supports document encryption;
    • - *
    • includes methods to publish some xhtml code, supporting the following elements: h1, h2, h3, h4, h5, h6, b, u, i, a, img, p, br, strong, em, font, blockquote, li, ul, ol, hr, td, th, tr, table, sup, sub, small;
    • - *
    • includes a method to print various barcode formats using an improved version of "Generic Barcode Render Class" by Karim Mribti (http://www.mribti.com/barcode/) (require GD library: http://www.boutell.com/gd/)
    • - *
    • supports TrueTypeUnicode, TrueType, Type1 and encoding;
    • - *
    • supports custom page formats, margins and units of measure;
    • - *
    • includes methods for page header and footer management;
    • - *
    • supports automatic page break;
    • - *
    • supports automatic page numbering;
    • - *
    • supports automatic line break and text justification;
    • - *
    • supports JPEG, PNG anf GIF images;
    • - *
    • supports colors;
    • - *
    • supports links;
    • - *
    • support page compression (require zlib extension: http://www.gzip.org/zlib/);
    • - *
    • the source code is full documented in PhpDocumentor Style (http://www.phpdoc.org).
    • + *
    • no external libraries are required for the basic functions;
    • + *
    • all standard page formats, custom page formats, custom margins and units of measure;
    • + *
    • UTF-8 Unicode and Right-To-Left languages;
    • + *
    • TrueTypeUnicode, OpenTypeUnicode, TrueType, OpenType, Type1 and CID-0 fonts;
    • + *
    • font subsetting;
    • + *
    • methods to publish some XHTML + CSS code, Javascript and Forms;
    • + *
    • images, graphic (geometric figures) and transformation methods; + *
    • supports JPEG, PNG and SVG images natively, all images supported by GD (GD, GD2, GD2PART, GIF, JPEG, PNG, BMP, XBM, XPM) and all images supported via ImagMagick (http://www.imagemagick.org/www/formats.html)
    • + *
    • 1D and 2D barcodes: CODE 39, ANSI MH10.8M-1983, USD-3, 3 of 9, CODE 93, USS-93, Standard 2 of 5, Interleaved 2 of 5, CODE 128 A/B/C, 2 and 5 Digits UPC-Based Extention, EAN 8, EAN 13, UPC-A, UPC-E, MSI, POSTNET, PLANET, RMS4CC (Royal Mail 4-state Customer Code), CBC (Customer Bar Code), KIX (Klant index - Customer index), Intelligent Mail Barcode, Onecode, USPS-B-3200, CODABAR, CODE 11, PHARMACODE, PHARMACODE TWO-TRACKS, QR-Code, PDF417;
    • + *
    • Grayscale, RGB, CMYK, Spot Colors and Transparencies;
    • + *
    • automatic page header and footer management;
    • + *
    • document encryption up to 256 bit and digital signature certifications;
    • + *
    • transactions to UNDO commands;
    • + *
    • PDF annotations, including links, text and file attachments;
    • + *
    • text rendering modes (fill, stroke and clipping);
    • + *
    • multiple columns mode;
    • + *
    • no-write page regions;
    • + *
    • bookmarks and table of content;
    • + *
    • text hyphenation;
    • + *
    • text stretching and spacing (tracking/kerning);
    • + *
    • automatic page break, line break and text alignments including justification;
    • + *
    • automatic page numbering and page groups;
    • + *
    • move and delete pages;
    • + *
    • page compression (requires php-zlib extension);
    • + *
    • XOBject Templates;
    • *

    4H7`L#peY-sjKE3%_f`QStvS>+`Jl@Aa~t6}^i2 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⁣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 SzaRT2pXw9-C%#GR>0AIGN0F)k literal 0 HcmV?d00001 diff --git a/libraries/tcpdf/fonts/helvetica.php b/libraries/tcpdf/fonts/helvetica.php new file mode 100644 index 000000000..c5eba6d68 --- /dev/null +++ b/libraries/tcpdf/fonts/helvetica.php @@ -0,0 +1,33 @@ +278,1=>278,2=>278,3=>278,4=>278,5=>278,6=>278,7=>278,8=>278,9=>278, +10=>278,11=>278,12=>278,13=>278,14=>278,15=>278,16=>278,17=>278,18=>278,19=>278, +20=>278,21=>278,22=>278,23=>278,24=>278,25=>278,26=>278,27=>278,28=>278,29=>278, +30=>278,31=>278,32=>278,33=>278,34=>355,35=>556,36=>556,37=>889,38=>667,39=>191, +40=>333,41=>333,42=>389,43=>584,44=>278,45=>333,46=>278,47=>278,48=>556,49=>556, +50=>556,51=>556,52=>556,53=>556,54=>556,55=>556,56=>556,57=>556,58=>278,59=>278, +60=>584,61=>584,62=>584,63=>556,64=>1015,65=>667,66=>667,67=>722,68=>722,69=>667, +70=>611,71=>778,72=>722,73=>278,74=>500,75=>667,76=>556,77=>833,78=>722,79=>778, +80=>667,81=>778,82=>722,83=>667,84=>611,85=>722,86=>667,87=>944,88=>667,89=>667, +90=>611,91=>278,92=>278,93=>278,94=>469,95=>556,96=>333,97=>556,98=>556,99=>500, +100=>556,101=>556,102=>278,103=>556,104=>556,105=>222,106=>222,107=>500,108=>222, +109=>833,110=>556,111=>556,112=>556,113=>556,114=>333,115=>500,116=>278,117=>556, +118=>500,119=>722,120=>500,121=>500,122=>500,123=>334,124=>260,125=>334,126=>584, +127=>350,128=>556,129=>350,130=>222,131=>556,132=>333,133=>1000,134=>556,135=>556, +136=>333,137=>1000,138=>667,139=>333,140=>1000,141=>350,142=>611,143=>350,144=>350, +145=>222,146=>222,147=>333,148=>333,149=>350,150=>556,151=>1000,152=>333,153=>1000, +154=>500,155=>333,156=>944,157=>350,158=>500,159=>667,160=>278,161=>333,162=>556, +163=>556,164=>556,165=>556,166=>260,167=>556,168=>333,169=>737,170=>370,171=>556, +172=>584,173=>333,174=>737,175=>333,176=>400,177=>584,178=>333,179=>333,180=>333, +181=>556,182=>537,183=>278,184=>333,185=>333,186=>365,187=>556,188=>834,189=>834, +190=>834,191=>611,192=>667,193=>667,194=>667,195=>667,196=>667,197=>667,198=>1000, +199=>722,200=>667,201=>667,202=>667,203=>667,204=>278,205=>278,206=>278,207=>278, +208=>722,209=>722,210=>778,211=>778,212=>778,213=>778,214=>778,215=>584,216=>778, +217=>722,218=>722,219=>722,220=>722,221=>667,222=>667,223=>611,224=>556,225=>556, +226=>556,227=>556,228=>556,229=>556,230=>889,231=>500,232=>556,233=>556,234=>556, +235=>556,236=>278,237=>278,238=>278,239=>278,240=>556,241=>556,242=>556,243=>556, +244=>556,245=>556,246=>556,247=>584,248=>611,249=>556,250=>556,251=>556,252=>556, +253=>500,254=>556,255=>500); +// --- EOF --- diff --git a/libraries/tcpdf/fonts/helveticab.php b/libraries/tcpdf/fonts/helveticab.php new file mode 100644 index 000000000..8635a7274 --- /dev/null +++ b/libraries/tcpdf/fonts/helveticab.php @@ -0,0 +1,33 @@ +278,1=>278,2=>278,3=>278,4=>278,5=>278,6=>278,7=>278,8=>278,9=>278, +10=>278,11=>278,12=>278,13=>278,14=>278,15=>278,16=>278,17=>278,18=>278,19=>278, +20=>278,21=>278,22=>278,23=>278,24=>278,25=>278,26=>278,27=>278,28=>278,29=>278, +30=>278,31=>278,32=>278,33=>333,34=>474,35=>556,36=>556,37=>889,38=>722,39=>238, +40=>333,41=>333,42=>389,43=>584,44=>278,45=>333,46=>278,47=>278,48=>556,49=>556, +50=>556,51=>556,52=>556,53=>556,54=>556,55=>556,56=>556,57=>556,58=>333,59=>333, +60=>584,61=>584,62=>584,63=>611,64=>975,65=>722,66=>722,67=>722,68=>722,69=>667, +70=>611,71=>778,72=>722,73=>278,74=>556,75=>722,76=>611,77=>833,78=>722,79=>778, +80=>667,81=>778,82=>722,83=>667,84=>611,85=>722,86=>667,87=>944,88=>667,89=>667, +90=>611,91=>333,92=>278,93=>333,94=>584,95=>556,96=>333,97=>556,98=>611,99=>556, +100=>611,101=>556,102=>333,103=>611,104=>611,105=>278,106=>278,107=>556,108=>278, +109=>889,110=>611,111=>611,112=>611,113=>611,114=>389,115=>556,116=>333,117=>611, +118=>556,119=>778,120=>556,121=>556,122=>500,123=>389,124=>280,125=>389,126=>584, +127=>350,128=>556,129=>350,130=>278,131=>556,132=>500,133=>1000,134=>556,135=>556, +136=>333,137=>1000,138=>667,139=>333,140=>1000,141=>350,142=>611,143=>350,144=>350, +145=>278,146=>278,147=>500,148=>500,149=>350,150=>556,151=>1000,152=>333,153=>1000, +154=>556,155=>333,156=>944,157=>350,158=>500,159=>667,160=>278,161=>333,162=>556, +163=>556,164=>556,165=>556,166=>280,167=>556,168=>333,169=>737,170=>370,171=>556, +172=>584,173=>333,174=>737,175=>333,176=>400,177=>584,178=>333,179=>333,180=>333, +181=>611,182=>556,183=>278,184=>333,185=>333,186=>365,187=>556,188=>834,189=>834, +190=>834,191=>611,192=>722,193=>722,194=>722,195=>722,196=>722,197=>722,198=>1000, +199=>722,200=>667,201=>667,202=>667,203=>667,204=>278,205=>278,206=>278,207=>278, +208=>722,209=>722,210=>778,211=>778,212=>778,213=>778,214=>778,215=>584,216=>778, +217=>722,218=>722,219=>722,220=>722,221=>667,222=>667,223=>611,224=>556,225=>556, +226=>556,227=>556,228=>556,229=>556,230=>889,231=>556,232=>556,233=>556,234=>556, +235=>556,236=>278,237=>278,238=>278,239=>278,240=>611,241=>611,242=>611,243=>611, +244=>611,245=>611,246=>611,247=>584,248=>611,249=>611,250=>611,251=>611,252=>611, +253=>556,254=>611,255=>556); +// --- EOF --- diff --git a/libraries/tcpdf/fonts/helveticabi.php b/libraries/tcpdf/fonts/helveticabi.php new file mode 100644 index 000000000..8635a7274 --- /dev/null +++ b/libraries/tcpdf/fonts/helveticabi.php @@ -0,0 +1,33 @@ +278,1=>278,2=>278,3=>278,4=>278,5=>278,6=>278,7=>278,8=>278,9=>278, +10=>278,11=>278,12=>278,13=>278,14=>278,15=>278,16=>278,17=>278,18=>278,19=>278, +20=>278,21=>278,22=>278,23=>278,24=>278,25=>278,26=>278,27=>278,28=>278,29=>278, +30=>278,31=>278,32=>278,33=>333,34=>474,35=>556,36=>556,37=>889,38=>722,39=>238, +40=>333,41=>333,42=>389,43=>584,44=>278,45=>333,46=>278,47=>278,48=>556,49=>556, +50=>556,51=>556,52=>556,53=>556,54=>556,55=>556,56=>556,57=>556,58=>333,59=>333, +60=>584,61=>584,62=>584,63=>611,64=>975,65=>722,66=>722,67=>722,68=>722,69=>667, +70=>611,71=>778,72=>722,73=>278,74=>556,75=>722,76=>611,77=>833,78=>722,79=>778, +80=>667,81=>778,82=>722,83=>667,84=>611,85=>722,86=>667,87=>944,88=>667,89=>667, +90=>611,91=>333,92=>278,93=>333,94=>584,95=>556,96=>333,97=>556,98=>611,99=>556, +100=>611,101=>556,102=>333,103=>611,104=>611,105=>278,106=>278,107=>556,108=>278, +109=>889,110=>611,111=>611,112=>611,113=>611,114=>389,115=>556,116=>333,117=>611, +118=>556,119=>778,120=>556,121=>556,122=>500,123=>389,124=>280,125=>389,126=>584, +127=>350,128=>556,129=>350,130=>278,131=>556,132=>500,133=>1000,134=>556,135=>556, +136=>333,137=>1000,138=>667,139=>333,140=>1000,141=>350,142=>611,143=>350,144=>350, +145=>278,146=>278,147=>500,148=>500,149=>350,150=>556,151=>1000,152=>333,153=>1000, +154=>556,155=>333,156=>944,157=>350,158=>500,159=>667,160=>278,161=>333,162=>556, +163=>556,164=>556,165=>556,166=>280,167=>556,168=>333,169=>737,170=>370,171=>556, +172=>584,173=>333,174=>737,175=>333,176=>400,177=>584,178=>333,179=>333,180=>333, +181=>611,182=>556,183=>278,184=>333,185=>333,186=>365,187=>556,188=>834,189=>834, +190=>834,191=>611,192=>722,193=>722,194=>722,195=>722,196=>722,197=>722,198=>1000, +199=>722,200=>667,201=>667,202=>667,203=>667,204=>278,205=>278,206=>278,207=>278, +208=>722,209=>722,210=>778,211=>778,212=>778,213=>778,214=>778,215=>584,216=>778, +217=>722,218=>722,219=>722,220=>722,221=>667,222=>667,223=>611,224=>556,225=>556, +226=>556,227=>556,228=>556,229=>556,230=>889,231=>556,232=>556,233=>556,234=>556, +235=>556,236=>278,237=>278,238=>278,239=>278,240=>611,241=>611,242=>611,243=>611, +244=>611,245=>611,246=>611,247=>584,248=>611,249=>611,250=>611,251=>611,252=>611, +253=>556,254=>611,255=>556); +// --- EOF --- diff --git a/libraries/tcpdf/fonts/helveticai.php b/libraries/tcpdf/fonts/helveticai.php new file mode 100644 index 000000000..c5eba6d68 --- /dev/null +++ b/libraries/tcpdf/fonts/helveticai.php @@ -0,0 +1,33 @@ +278,1=>278,2=>278,3=>278,4=>278,5=>278,6=>278,7=>278,8=>278,9=>278, +10=>278,11=>278,12=>278,13=>278,14=>278,15=>278,16=>278,17=>278,18=>278,19=>278, +20=>278,21=>278,22=>278,23=>278,24=>278,25=>278,26=>278,27=>278,28=>278,29=>278, +30=>278,31=>278,32=>278,33=>278,34=>355,35=>556,36=>556,37=>889,38=>667,39=>191, +40=>333,41=>333,42=>389,43=>584,44=>278,45=>333,46=>278,47=>278,48=>556,49=>556, +50=>556,51=>556,52=>556,53=>556,54=>556,55=>556,56=>556,57=>556,58=>278,59=>278, +60=>584,61=>584,62=>584,63=>556,64=>1015,65=>667,66=>667,67=>722,68=>722,69=>667, +70=>611,71=>778,72=>722,73=>278,74=>500,75=>667,76=>556,77=>833,78=>722,79=>778, +80=>667,81=>778,82=>722,83=>667,84=>611,85=>722,86=>667,87=>944,88=>667,89=>667, +90=>611,91=>278,92=>278,93=>278,94=>469,95=>556,96=>333,97=>556,98=>556,99=>500, +100=>556,101=>556,102=>278,103=>556,104=>556,105=>222,106=>222,107=>500,108=>222, +109=>833,110=>556,111=>556,112=>556,113=>556,114=>333,115=>500,116=>278,117=>556, +118=>500,119=>722,120=>500,121=>500,122=>500,123=>334,124=>260,125=>334,126=>584, +127=>350,128=>556,129=>350,130=>222,131=>556,132=>333,133=>1000,134=>556,135=>556, +136=>333,137=>1000,138=>667,139=>333,140=>1000,141=>350,142=>611,143=>350,144=>350, +145=>222,146=>222,147=>333,148=>333,149=>350,150=>556,151=>1000,152=>333,153=>1000, +154=>500,155=>333,156=>944,157=>350,158=>500,159=>667,160=>278,161=>333,162=>556, +163=>556,164=>556,165=>556,166=>260,167=>556,168=>333,169=>737,170=>370,171=>556, +172=>584,173=>333,174=>737,175=>333,176=>400,177=>584,178=>333,179=>333,180=>333, +181=>556,182=>537,183=>278,184=>333,185=>333,186=>365,187=>556,188=>834,189=>834, +190=>834,191=>611,192=>667,193=>667,194=>667,195=>667,196=>667,197=>667,198=>1000, +199=>722,200=>667,201=>667,202=>667,203=>667,204=>278,205=>278,206=>278,207=>278, +208=>722,209=>722,210=>778,211=>778,212=>778,213=>778,214=>778,215=>584,216=>778, +217=>722,218=>722,219=>722,220=>722,221=>667,222=>667,223=>611,224=>556,225=>556, +226=>556,227=>556,228=>556,229=>556,230=>889,231=>500,232=>556,233=>556,234=>556, +235=>556,236=>278,237=>278,238=>278,239=>278,240=>556,241=>556,242=>556,243=>556, +244=>556,245=>556,246=>556,247=>584,248=>611,249=>556,250=>556,251=>556,252=>556, +253=>500,254=>556,255=>500); +// --- EOF --- diff --git a/libraries/tcpdf/fonts/symbol.php b/libraries/tcpdf/fonts/symbol.php new file mode 100644 index 000000000..e315f5365 --- /dev/null +++ b/libraries/tcpdf/fonts/symbol.php @@ -0,0 +1,32 @@ +250,1=>250,2=>250,3=>250,4=>250,5=>250,6=>250,7=>250,8=>250,9=>250, +10=>250,11=>250,12=>250,13=>250,14=>250,15=>250,16=>250,17=>250,18=>250,19=>250, +20=>250,21=>250,22=>250,23=>250,24=>250,25=>250,26=>250,27=>250,28=>250,29=>250, +30=>250,31=>250,32=>250,33=>333,34=>713,35=>500,36=>549,37=>833,38=>778,39=>439, +40=>333,41=>333,42=>500,43=>549,44=>250,45=>549,46=>250,47=>278,48=>500,49=>500, +50=>500,51=>500,52=>500,53=>500,54=>500,55=>500,56=>500,57=>500,58=>278,59=>278, +60=>549,61=>549,62=>549,63=>444,64=>549,65=>722,66=>667,67=>722,68=>612,69=>611, +70=>763,71=>603,72=>722,73=>333,74=>631,75=>722,76=>686,77=>889,78=>722,79=>722, +80=>768,81=>741,82=>556,83=>592,84=>611,85=>690,86=>439,87=>768,88=>645,89=>795, +90=>611,91=>333,92=>863,93=>333,94=>658,95=>500,96=>500,97=>631,98=>549,99=>549, +100=>494,101=>439,102=>521,103=>411,104=>603,105=>329,106=>603,107=>549,108=>549, +109=>576,110=>521,111=>549,112=>549,113=>521,114=>549,115=>603,116=>439,117=>576, +118=>713,119=>686,120=>493,121=>686,122=>494,123=>480,124=>200,125=>480,126=>549, +127=>0,128=>0,129=>0,130=>0,131=>0,132=>0,133=>0,134=>0,135=>0,136=>0,137=>0, +138=>0,139=>0,140=>0,141=>0,142=>0,143=>0,144=>0,145=>0,146=>0,147=>0,148=>0, +149=>0,150=>0,151=>0,152=>0,153=>0,154=>0,155=>0,156=>0,157=>0,158=>0,159=>0, +160=>750,161=>620,162=>247,163=>549,164=>167,165=>713,166=>500,167=>753,168=>753, +169=>753,170=>753,171=>1042,172=>987,173=>603,174=>987,175=>603,176=>400,177=>549, +178=>411,179=>549,180=>549,181=>713,182=>494,183=>460,184=>549,185=>549,186=>549, +187=>549,188=>1000,189=>603,190=>1000,191=>658,192=>823,193=>686,194=>795,195=>987, +196=>768,197=>768,198=>823,199=>768,200=>768,201=>713,202=>713,203=>713,204=>713, +205=>713,206=>713,207=>713,208=>768,209=>713,210=>790,211=>790,212=>890,213=>823, +214=>549,215=>250,216=>713,217=>603,218=>603,219=>1042,220=>987,221=>603,222=>987, +223=>603,224=>494,225=>329,226=>790,227=>790,228=>786,229=>713,230=>384,231=>384, +232=>384,233=>384,234=>384,235=>384,236=>494,237=>494,238=>494,239=>494,240=>0, +241=>329,242=>274,243=>686,244=>686,245=>686,246=>384,247=>384,248=>384,249=>384, +250=>384,251=>384,252=>494,253=>494,254=>494,255=>0); +// --- EOF --- diff --git a/libraries/tcpdf/fonts/times.php b/libraries/tcpdf/fonts/times.php new file mode 100644 index 000000000..991438616 --- /dev/null +++ b/libraries/tcpdf/fonts/times.php @@ -0,0 +1,33 @@ +250,1=>250,2=>250,3=>250,4=>250,5=>250,6=>250,7=>250,8=>250,9=>250, +10=>250,11=>250,12=>250,13=>250,14=>250,15=>250,16=>250,17=>250,18=>250,19=>250, +20=>250,21=>250,22=>250,23=>250,24=>250,25=>250,26=>250,27=>250,28=>250,29=>250, +30=>250,31=>250,32=>250,33=>333,34=>408,35=>500,36=>500,37=>833,38=>778,39=>180, +40=>333,41=>333,42=>500,43=>564,44=>250,45=>333,46=>250,47=>278,48=>500,49=>500, +50=>500,51=>500,52=>500,53=>500,54=>500,55=>500,56=>500,57=>500,58=>278,59=>278, +60=>564,61=>564,62=>564,63=>444,64=>921,65=>722,66=>667,67=>667,68=>722,69=>611, +70=>556,71=>722,72=>722,73=>333,74=>389,75=>722,76=>611,77=>889,78=>722,79=>722, +80=>556,81=>722,82=>667,83=>556,84=>611,85=>722,86=>722,87=>944,88=>722,89=>722, +90=>611,91=>333,92=>278,93=>333,94=>469,95=>500,96=>333,97=>444,98=>500,99=>444, +100=>500,101=>444,102=>333,103=>500,104=>500,105=>278,106=>278,107=>500,108=>278, +109=>778,110=>500,111=>500,112=>500,113=>500,114=>333,115=>389,116=>278,117=>500, +118=>500,119=>722,120=>500,121=>500,122=>444,123=>480,124=>200,125=>480,126=>541, +127=>350,128=>500,129=>350,130=>333,131=>500,132=>444,133=>1000,134=>500,135=>500, +136=>333,137=>1000,138=>556,139=>333,140=>889,141=>350,142=>611,143=>350,144=>350, +145=>333,146=>333,147=>444,148=>444,149=>350,150=>500,151=>1000,152=>333,153=>980, +154=>389,155=>333,156=>722,157=>350,158=>444,159=>722,160=>250,161=>333,162=>500, +163=>500,164=>500,165=>500,166=>200,167=>500,168=>333,169=>760,170=>276,171=>500, +172=>564,173=>333,174=>760,175=>333,176=>400,177=>564,178=>300,179=>300,180=>333, +181=>500,182=>453,183=>250,184=>333,185=>300,186=>310,187=>500,188=>750,189=>750, +190=>750,191=>444,192=>722,193=>722,194=>722,195=>722,196=>722,197=>722,198=>889, +199=>667,200=>611,201=>611,202=>611,203=>611,204=>333,205=>333,206=>333,207=>333, +208=>722,209=>722,210=>722,211=>722,212=>722,213=>722,214=>722,215=>564,216=>722, +217=>722,218=>722,219=>722,220=>722,221=>722,222=>556,223=>500,224=>444,225=>444, +226=>444,227=>444,228=>444,229=>444,230=>667,231=>444,232=>444,233=>444,234=>444, +235=>444,236=>278,237=>278,238=>278,239=>278,240=>500,241=>500,242=>500,243=>500, +244=>500,245=>500,246=>500,247=>564,248=>500,249=>500,250=>500,251=>500,252=>500, +253=>500,254=>500,255=>500); +// --- EOF --- diff --git a/libraries/tcpdf/fonts/timesb.php b/libraries/tcpdf/fonts/timesb.php new file mode 100644 index 000000000..b6625be57 --- /dev/null +++ b/libraries/tcpdf/fonts/timesb.php @@ -0,0 +1,33 @@ +250,1=>250,2=>250,3=>250,4=>250,5=>250,6=>250,7=>250,8=>250,9=>250, +10=>250,11=>250,12=>250,13=>250,14=>250,15=>250,16=>250,17=>250,18=>250,19=>250, +20=>250,21=>250,22=>250,23=>250,24=>250,25=>250,26=>250,27=>250,28=>250,29=>250, +30=>250,31=>250,32=>250,33=>333,34=>555,35=>500,36=>500,37=>1000,38=>833,39=>278, +40=>333,41=>333,42=>500,43=>570,44=>250,45=>333,46=>250,47=>278,48=>500,49=>500, +50=>500,51=>500,52=>500,53=>500,54=>500,55=>500,56=>500,57=>500,58=>333,59=>333, +60=>570,61=>570,62=>570,63=>500,64=>930,65=>722,66=>667,67=>722,68=>722,69=>667, +70=>611,71=>778,72=>778,73=>389,74=>500,75=>778,76=>667,77=>944,78=>722,79=>778, +80=>611,81=>778,82=>722,83=>556,84=>667,85=>722,86=>722,87=>1000,88=>722,89=>722, +90=>667,91=>333,92=>278,93=>333,94=>581,95=>500,96=>333,97=>500,98=>556,99=>444, +100=>556,101=>444,102=>333,103=>500,104=>556,105=>278,106=>333,107=>556,108=>278, +109=>833,110=>556,111=>500,112=>556,113=>556,114=>444,115=>389,116=>333,117=>556, +118=>500,119=>722,120=>500,121=>500,122=>444,123=>394,124=>220,125=>394,126=>520, +127=>350,128=>500,129=>350,130=>333,131=>500,132=>500,133=>1000,134=>500,135=>500, +136=>333,137=>1000,138=>556,139=>333,140=>1000,141=>350,142=>667,143=>350,144=>350, +145=>333,146=>333,147=>500,148=>500,149=>350,150=>500,151=>1000,152=>333,153=>1000, +154=>389,155=>333,156=>722,157=>350,158=>444,159=>722,160=>250,161=>333,162=>500, +163=>500,164=>500,165=>500,166=>220,167=>500,168=>333,169=>747,170=>300,171=>500, +172=>570,173=>333,174=>747,175=>333,176=>400,177=>570,178=>300,179=>300,180=>333, +181=>556,182=>540,183=>250,184=>333,185=>300,186=>330,187=>500,188=>750,189=>750, +190=>750,191=>500,192=>722,193=>722,194=>722,195=>722,196=>722,197=>722,198=>1000, +199=>722,200=>667,201=>667,202=>667,203=>667,204=>389,205=>389,206=>389,207=>389, +208=>722,209=>722,210=>778,211=>778,212=>778,213=>778,214=>778,215=>570,216=>778, +217=>722,218=>722,219=>722,220=>722,221=>722,222=>611,223=>556,224=>500,225=>500, +226=>500,227=>500,228=>500,229=>500,230=>722,231=>444,232=>444,233=>444,234=>444, +235=>444,236=>278,237=>278,238=>278,239=>278,240=>500,241=>556,242=>500,243=>500, +244=>500,245=>500,246=>500,247=>570,248=>500,249=>556,250=>556,251=>556,252=>556, +253=>500,254=>556,255=>500); +// --- EOF --- diff --git a/libraries/tcpdf/fonts/timesbi.php b/libraries/tcpdf/fonts/timesbi.php new file mode 100644 index 000000000..ff18a4b8f --- /dev/null +++ b/libraries/tcpdf/fonts/timesbi.php @@ -0,0 +1,33 @@ +250,1=>250,2=>250,3=>250,4=>250,5=>250,6=>250,7=>250,8=>250,9=>250, +10=>250,11=>250,12=>250,13=>250,14=>250,15=>250,16=>250,17=>250,18=>250,19=>250, +20=>250,21=>250,22=>250,23=>250,24=>250,25=>250,26=>250,27=>250,28=>250,29=>250, +30=>250,31=>250,32=>250,33=>389,34=>555,35=>500,36=>500,37=>833,38=>778,39=>278, +40=>333,41=>333,42=>500,43=>570,44=>250,45=>333,46=>250,47=>278,48=>500,49=>500, +50=>500,51=>500,52=>500,53=>500,54=>500,55=>500,56=>500,57=>500,58=>333,59=>333, +60=>570,61=>570,62=>570,63=>500,64=>832,65=>667,66=>667,67=>667,68=>722,69=>667, +70=>667,71=>722,72=>778,73=>389,74=>500,75=>667,76=>611,77=>889,78=>722,79=>722, +80=>611,81=>722,82=>667,83=>556,84=>611,85=>722,86=>667,87=>889,88=>667,89=>611, +90=>611,91=>333,92=>278,93=>333,94=>570,95=>500,96=>333,97=>500,98=>500,99=>444, +100=>500,101=>444,102=>333,103=>500,104=>556,105=>278,106=>278,107=>500,108=>278, +109=>778,110=>556,111=>500,112=>500,113=>500,114=>389,115=>389,116=>278,117=>556, +118=>444,119=>667,120=>500,121=>444,122=>389,123=>348,124=>220,125=>348,126=>570, +127=>350,128=>500,129=>350,130=>333,131=>500,132=>500,133=>1000,134=>500,135=>500, +136=>333,137=>1000,138=>556,139=>333,140=>944,141=>350,142=>611,143=>350,144=>350, +145=>333,146=>333,147=>500,148=>500,149=>350,150=>500,151=>1000,152=>333,153=>1000, +154=>389,155=>333,156=>722,157=>350,158=>389,159=>611,160=>250,161=>389,162=>500, +163=>500,164=>500,165=>500,166=>220,167=>500,168=>333,169=>747,170=>266,171=>500, +172=>606,173=>333,174=>747,175=>333,176=>400,177=>570,178=>300,179=>300,180=>333, +181=>576,182=>500,183=>250,184=>333,185=>300,186=>300,187=>500,188=>750,189=>750, +190=>750,191=>500,192=>667,193=>667,194=>667,195=>667,196=>667,197=>667,198=>944, +199=>667,200=>667,201=>667,202=>667,203=>667,204=>389,205=>389,206=>389,207=>389, +208=>722,209=>722,210=>722,211=>722,212=>722,213=>722,214=>722,215=>570,216=>722, +217=>722,218=>722,219=>722,220=>722,221=>611,222=>611,223=>500,224=>500,225=>500, +226=>500,227=>500,228=>500,229=>500,230=>722,231=>444,232=>444,233=>444,234=>444, +235=>444,236=>278,237=>278,238=>278,239=>278,240=>500,241=>556,242=>500,243=>500, +244=>500,245=>500,246=>500,247=>570,248=>500,249=>556,250=>556,251=>556,252=>556, +253=>444,254=>500,255=>444); +// --- EOF --- diff --git a/libraries/tcpdf/fonts/timesi.php b/libraries/tcpdf/fonts/timesi.php new file mode 100644 index 000000000..c86d3ab6a --- /dev/null +++ b/libraries/tcpdf/fonts/timesi.php @@ -0,0 +1,33 @@ +250,1=>250,2=>250,3=>250,4=>250,5=>250,6=>250,7=>250,8=>250,9=>250, +10=>250,11=>250,12=>250,13=>250,14=>250,15=>250,16=>250,17=>250,18=>250,19=>250, +20=>250,21=>250,22=>250,23=>250,24=>250,25=>250,26=>250,27=>250,28=>250,29=>250, +30=>250,31=>250,32=>250,33=>333,34=>420,35=>500,36=>500,37=>833,38=>778,39=>214, +40=>333,41=>333,42=>500,43=>675,44=>250,45=>333,46=>250,47=>278,48=>500,49=>500, +50=>500,51=>500,52=>500,53=>500,54=>500,55=>500,56=>500,57=>500,58=>333,59=>333, +60=>675,61=>675,62=>675,63=>500,64=>920,65=>611,66=>611,67=>667,68=>722,69=>611, +70=>611,71=>722,72=>722,73=>333,74=>444,75=>667,76=>556,77=>833,78=>667,79=>722, +80=>611,81=>722,82=>611,83=>500,84=>556,85=>722,86=>611,87=>833,88=>611,89=>556, +90=>556,91=>389,92=>278,93=>389,94=>422,95=>500,96=>333,97=>500,98=>500,99=>444, +100=>500,101=>444,102=>278,103=>500,104=>500,105=>278,106=>278,107=>444,108=>278, +109=>722,110=>500,111=>500,112=>500,113=>500,114=>389,115=>389,116=>278,117=>500, +118=>444,119=>667,120=>444,121=>444,122=>389,123=>400,124=>275,125=>400,126=>541, +127=>350,128=>500,129=>350,130=>333,131=>500,132=>556,133=>889,134=>500,135=>500, +136=>333,137=>1000,138=>500,139=>333,140=>944,141=>350,142=>556,143=>350,144=>350, +145=>333,146=>333,147=>556,148=>556,149=>350,150=>500,151=>889,152=>333,153=>980, +154=>389,155=>333,156=>667,157=>350,158=>389,159=>556,160=>250,161=>389,162=>500, +163=>500,164=>500,165=>500,166=>275,167=>500,168=>333,169=>760,170=>276,171=>500, +172=>675,173=>333,174=>760,175=>333,176=>400,177=>675,178=>300,179=>300,180=>333, +181=>500,182=>523,183=>250,184=>333,185=>300,186=>310,187=>500,188=>750,189=>750, +190=>750,191=>500,192=>611,193=>611,194=>611,195=>611,196=>611,197=>611,198=>889, +199=>667,200=>611,201=>611,202=>611,203=>611,204=>333,205=>333,206=>333,207=>333, +208=>722,209=>667,210=>722,211=>722,212=>722,213=>722,214=>722,215=>675,216=>722, +217=>722,218=>722,219=>722,220=>722,221=>556,222=>611,223=>500,224=>500,225=>500, +226=>500,227=>500,228=>500,229=>500,230=>667,231=>444,232=>444,233=>444,234=>444, +235=>444,236=>278,237=>278,238=>278,239=>278,240=>500,241=>500,242=>500,243=>500, +244=>500,245=>500,246=>500,247=>675,248=>500,249=>500,250=>500,251=>500,252=>500, +253=>444,254=>500,255=>444); +// --- EOF --- diff --git a/libraries/tcpdf/fonts/zapfdingbats.php b/libraries/tcpdf/fonts/zapfdingbats.php new file mode 100644 index 000000000..99eda4d6b --- /dev/null +++ b/libraries/tcpdf/fonts/zapfdingbats.php @@ -0,0 +1,32 @@ +0,1=>0,2=>0,3=>0,4=>0,5=>0,6=>0,7=>0,8=>0,9=>0,10=>0,11=>0,12=>0, +13=>0,14=>0,15=>0,16=>0,17=>0,18=>0,19=>0,20=>0,21=>0,22=>0,23=>0,24=>0,25=>0, +26=>0,27=>0,28=>0,29=>0,30=>0,31=>0,32=>278,33=>974,34=>961,35=>974,36=>980, +37=>719,38=>789,39=>790,40=>791,41=>690,42=>960,43=>939,44=>549,45=>855,46=>911, +47=>933,48=>911,49=>945,50=>974,51=>755,52=>846,53=>762,54=>761,55=>571,56=>677, +57=>763,58=>760,59=>759,60=>754,61=>494,62=>552,63=>537,64=>577,65=>692,66=>786, +67=>788,68=>788,69=>790,70=>793,71=>794,72=>816,73=>823,74=>789,75=>841,76=>823, +77=>833,78=>816,79=>831,80=>923,81=>744,82=>723,83=>749,84=>790,85=>792,86=>695, +87=>776,88=>768,89=>792,90=>759,91=>707,92=>708,93=>682,94=>701,95=>826,96=>815, +97=>789,98=>789,99=>707,100=>687,101=>696,102=>689,103=>786,104=>787,105=>713, +106=>791,107=>785,108=>791,109=>873,110=>761,111=>762,112=>762,113=>759,114=>759, +115=>892,116=>892,117=>788,118=>784,119=>438,120=>138,121=>277,122=>415,123=>392, +124=>392,125=>668,126=>668,127=>0,128=>390,129=>390,130=>317,131=>317,132=>276, +133=>276,134=>509,135=>509,136=>410,137=>410,138=>234,139=>234,140=>334,141=>334, +142=>0,143=>0,144=>0,145=>0,146=>0,147=>0,148=>0,149=>0,150=>0,151=>0,152=>0, +153=>0,154=>0,155=>0,156=>0,157=>0,158=>0,159=>0,160=>0,161=>732,162=>544,163=>544, +164=>910,165=>667,166=>760,167=>760,168=>776,169=>595,170=>694,171=>626,172=>788, +173=>788,174=>788,175=>788,176=>788,177=>788,178=>788,179=>788,180=>788,181=>788, +182=>788,183=>788,184=>788,185=>788,186=>788,187=>788,188=>788,189=>788,190=>788, +191=>788,192=>788,193=>788,194=>788,195=>788,196=>788,197=>788,198=>788,199=>788, +200=>788,201=>788,202=>788,203=>788,204=>788,205=>788,206=>788,207=>788,208=>788, +209=>788,210=>788,211=>788,212=>894,213=>838,214=>1016,215=>458,216=>748,217=>924, +218=>748,219=>918,220=>927,221=>928,222=>928,223=>834,224=>873,225=>828,226=>924, +227=>924,228=>917,229=>930,230=>931,231=>463,232=>883,233=>836,234=>836,235=>867, +236=>867,237=>696,238=>696,239=>874,240=>0,241=>874,242=>760,243=>946,244=>771, +245=>865,246=>771,247=>888,248=>967,249=>888,250=>831,251=>873,252=>927,253=>970, +254=>918,255=>0); +// --- EOF --- diff --git a/libraries/tcpdf/htmlcolors.php b/libraries/tcpdf/htmlcolors.php new file mode 100644 index 000000000..d1075dd47 --- /dev/null +++ b/libraries/tcpdf/htmlcolors.php @@ -0,0 +1,199 @@ +. +// +// See LICENSE.TXT file for more information. +// ------------------------------------------------------------------- +// +// Description : Array of WEB safe colors +// +//============================================================+ + +/** + * @file + * Array of WEB safe colors + * @author Nicola Asuni + * @package com.tecnick.tcpdf + * @since 2.9.000 (2008-03-26) + */ + +/** + * Array of WEB safe colors + */ +$webcolor = array ( +'aliceblue' => 'f0f8ff', +'antiquewhite' => 'faebd7', +'aqua' => '00ffff', +'aquamarine' => '7fffd4', +'azure' => 'f0ffff', +'beige' => 'f5f5dc', +'bisque' => 'ffe4c4', +'black' => '000000', +'blanchedalmond' => 'ffebcd', +'blue' => '0000ff', +'blueviolet' => '8a2be2', +'brown' => 'a52a2a', +'burlywood' => 'deb887', +'cadetblue' => '5f9ea0', +'chartreuse' => '7fff00', +'chocolate' => 'd2691e', +'coral' => 'ff7f50', +'cornflowerblue' => '6495ed', +'cornsilk' => 'fff8dc', +'crimson' => 'dc143c', +'cyan' => '00ffff', +'darkblue' => '00008b', +'darkcyan' => '008b8b', +'darkgoldenrod' => 'b8860b', +'dkgray' => 'a9a9a9', +'darkgray' => 'a9a9a9', +'darkgrey' => 'a9a9a9', +'darkgreen' => '006400', +'darkkhaki' => 'bdb76b', +'darkmagenta' => '8b008b', +'darkolivegreen' => '556b2f', +'darkorange' => 'ff8c00', +'darkorchid' => '9932cc', +'darkred' => '8b0000', +'darksalmon' => 'e9967a', +'darkseagreen' => '8fbc8f', +'darkslateblue' => '483d8b', +'darkslategray' => '2f4f4f', +'darkslategrey' => '2f4f4f', +'darkturquoise' => '00ced1', +'darkviolet' => '9400d3', +'deeppink' => 'ff1493', +'deepskyblue' => '00bfff', +'dimgray' => '696969', +'dimgrey' => '696969', +'dodgerblue' => '1e90ff', +'firebrick' => 'b22222', +'floralwhite' => 'fffaf0', +'forestgreen' => '228b22', +'fuchsia' => 'ff00ff', +'gainsboro' => 'dcdcdc', +'ghostwhite' => 'f8f8ff', +'gold' => 'ffd700', +'goldenrod' => 'daa520', +'gray' => '808080', +'grey' => '808080', +'green' => '008000', +'greenyellow' => 'adff2f', +'honeydew' => 'f0fff0', +'hotpink' => 'ff69b4', +'indianred' => 'cd5c5c', +'indigo' => '4b0082', +'ivory' => 'fffff0', +'khaki' => 'f0e68c', +'lavender' => 'e6e6fa', +'lavenderblush' => 'fff0f5', +'lawngreen' => '7cfc00', +'lemonchiffon' => 'fffacd', +'lightblue' => 'add8e6', +'lightcoral' => 'f08080', +'lightcyan' => 'e0ffff', +'lightgoldenrodyellow' => 'fafad2', +'ltgray' => 'd3d3d3', +'lightgray' => 'd3d3d3', +'lightgrey' => 'd3d3d3', +'lightgreen' => '90ee90', +'lightpink' => 'ffb6c1', +'lightsalmon' => 'ffa07a', +'lightseagreen' => '20b2aa', +'lightskyblue' => '87cefa', +'lightslategray' => '778899', +'lightslategrey' => '778899', +'lightsteelblue' => 'b0c4de', +'lightyellow' => 'ffffe0', +'lime' => '00ff00', +'limegreen' => '32cd32', +'linen' => 'faf0e6', +'magenta' => 'ff00ff', +'maroon' => '800000', +'mediumaquamarine' => '66cdaa', +'mediumblue' => '0000cd', +'mediumorchid' => 'ba55d3', +'mediumpurple' => '9370d8', +'mediumseagreen' => '3cb371', +'mediumslateblue' => '7b68ee', +'mediumspringgreen' => '00fa9a', +'mediumturquoise' => '48d1cc', +'mediumvioletred' => 'c71585', +'midnightblue' => '191970', +'mintcream' => 'f5fffa', +'mistyrose' => 'ffe4e1', +'moccasin' => 'ffe4b5', +'navajowhite' => 'ffdead', +'navy' => '000080', +'oldlace' => 'fdf5e6', +'olive' => '808000', +'olivedrab' => '6b8e23', +'orange' => 'ffa500', +'orangered' => 'ff4500', +'orchid' => 'da70d6', +'palegoldenrod' => 'eee8aa', +'palegreen' => '98fb98', +'paleturquoise' => 'afeeee', +'palevioletred' => 'd87093', +'papayawhip' => 'ffefd5', +'peachpuff' => 'ffdab9', +'peru' => 'cd853f', +'pink' => 'ffc0cb', +'plum' => 'dda0dd', +'powderblue' => 'b0e0e6', +'purple' => '800080', +'red' => 'ff0000', +'rosybrown' => 'bc8f8f', +'royalblue' => '4169e1', +'saddlebrown' => '8b4513', +'salmon' => 'fa8072', +'sandybrown' => 'f4a460', +'seagreen' => '2e8b57', +'seashell' => 'fff5ee', +'sienna' => 'a0522d', +'silver' => 'c0c0c0', +'skyblue' => '87ceeb', +'slateblue' => '6a5acd', +'slategray' => '708090', +'slategrey' => '708090', +'snow' => 'fffafa', +'springgreen' => '00ff7f', +'steelblue' => '4682b4', +'tan' => 'd2b48c', +'teal' => '008080', +'thistle' => 'd8bfd8', +'tomato' => 'ff6347', +'turquoise' => '40e0d0', +'violet' => 'ee82ee', +'wheat' => 'f5deb3', +'white' => 'ffffff', +'whitesmoke' => 'f5f5f5', +'yellow' => 'ffff00', +'yellowgreen' => '9acd32' +); + +//============================================================+ +// END OF FILE +//============================================================+ diff --git a/libraries/tcpdf/images/_blank.png b/libraries/tcpdf/images/_blank.png new file mode 100644 index 0000000000000000000000000000000000000000..38f7b2fa56ab08499e0d6f848af9b91c14963aa1 GIT binary patch literal 137 zcmeAS@N?(olHy`uVBq!ia0y~yU|fuU2YmyLmefy>jy gF{ENnasmSb0}}(I$ND9O3=9kmp00i_>zopr07t?hGXMYp literal 0 HcmV?d00001 diff --git a/libraries/tcpdf/images/tcpdf_logo.jpg b/libraries/tcpdf/images/tcpdf_logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..257f8fb6d93386e014b4e2b3f7fdfb863f658ff8 GIT binary patch literal 17633 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 literal 0 HcmV?d00001 diff --git a/libraries/tcpdf/pdf417.php b/libraries/tcpdf/pdf417.php new file mode 100644 index 000000000..995daa261 --- /dev/null +++ b/libraries/tcpdf/pdf417.php @@ -0,0 +1,991 @@ +. +// +// See LICENSE.TXT file for more information. +// ------------------------------------------------------------------- +// +// DESCRIPTION : +// +// Class to create PDF417 barcode arrays for TCPDF class. +// PDF417 (ISO/IEC 15438:2006) is a 2-dimensional stacked bar code created by Symbol Technologies in 1991. +// It is one of the most popular 2D codes because of its ability to be read with slightly modified handheld laser or linear CCD scanners. +// TECHNICAL DATA / FEATURES OF PDF417: +// Encodable Character Set: All 128 ASCII Characters (including extended) +// Code Type: Continuous, Multi-Row +// Symbol Height: 3 - 90 Rows +// Symbol Width: 90X - 583X +// Bidirectional Decoding: Yes +// Error Correction Characters: 2 - 512 +// Maximum Data Characters: 1850 text, 2710 digits, 1108 bytes +// +//============================================================+ + +/** + * @file + * Class to create PDF417 barcode arrays for TCPDF class. + * PDF417 (ISO/IEC 15438:2006) is a 2-dimensional stacked bar code created by Symbol Technologies in 1991. + * (requires PHP bcmath extension) + * @package com.tecnick.tcpdf + * @author Nicola Asuni + * @version 1.0.003 + */ + +// definitions +if (!defined('PDF417DEFS')) { + + /** + * Indicate that definitions for this class are set + */ + define('PDF417DEFS', true); + + // ----------------------------------------------------- + + /** + * Row height respect X dimension of single module + */ + define('ROWHEIGHT', 4); + + /** + * Horizontal quiet zone in modules + */ + define('QUIETH', 2); + + /** + * Vertical quiet zone in modules + */ + define('QUIETV', 2); + +} // end of definitions + +// #*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*# + +/** + * @class PDF417 + * Class to create PDF417 barcode arrays for TCPDF class. + * PDF417 (ISO/IEC 15438:2006) is a 2-dimensional stacked bar code created by Symbol Technologies in 1991. + * @package com.tecnick.tcpdf + * @author Nicola Asuni + * @version 1.0.003 + */ +class PDF417 { + + /** + * Barcode array to be returned which is readable by TCPDF. + * @protected + */ + protected $barcode_array = array(); + + /** + * Start pattern. + * @protected + */ + protected $start_pattern = '11111111010101000'; + + /** + * Stop pattern. + * @protected + */ + protected $stop_pattern = '111111101000101001'; + + /** + * Array of text Compaction Sub-Modes (values 0xFB - 0xFF are used for submode changers). + * @protected + */ + protected $textsubmodes = array( + array(0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4a,0x4b,0x4c,0x4d,0x4e,0x4f,0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,0x58,0x59,0x5a,0x20,0xFD,0xFE,0xFF), // Alpha + array(0x61,0x62,0x63,0x64,0x65,0x66,0x67,0x68,0x69,0x6a,0x6b,0x6c,0x6d,0x6e,0x6f,0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,0x78,0x79,0x7a,0x20,0xFD,0xFE,0xFF), // Lower + array(0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x26,0x0d,0x09,0x2c,0x3a,0x23,0x2d,0x2e,0x24,0x2f,0x2b,0x25,0x2a,0x3d,0x5e,0xFB,0x20,0xFD,0xFE,0xFF), // Mixed + array(0x3b,0x3c,0x3e,0x40,0x5b,0x5c,0x5d,0x5f,0x60,0x7e,0x21,0x0d,0x09,0x2c,0x3a,0x0a,0x2d,0x2e,0x24,0x2f,0x22,0x7c,0x2a,0x28,0x29,0x3f,0x7b,0x7d,0x27,0xFF) // Puntuaction + ); + + /** + * Array of switching codes for Text Compaction Sub-Modes. + * @protected + */ + protected $textlatch = array( + '01' => array(27), '02' => array(28), '03' => array(28,25), // + '10' => array(28,28), '12' => array(28), '13' => array(28,25), // + '20' => array(28), '21' => array(27), '23' => array(25), // + '30' => array(29), '31' => array(29,27), '32' => array(29,28) // + ); + + /** + * Clusters of codewords (0, 3, 6)
    + * Values are hex equivalents of binary representation of bars (1 = bar, 0 = space).
    + * The codewords numbered from 900 to 928 have special meaning, some enable to switch between modes in order to optimise the code:

    n(b2yrr%C+&YdGx* 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 literal 0 HcmV?d00001 diff --git a/libraries/tcpdf/fonts/dejavuserif.ctg.z b/libraries/tcpdf/fonts/dejavuserif.ctg.z new file mode 100644 index 0000000000000000000000000000000000000000..8dfe1003e5cf05721bd50735086f63c403d17a6d GIT binary patch literal 5973 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 literal 0 HcmV?d00001 diff --git a/libraries/tcpdf/fonts/dejavuserif.php b/libraries/tcpdf/fonts/dejavuserif.php new file mode 100644 index 000000000..830a0d420 --- /dev/null +++ b/libraries/tcpdf/fonts/dejavuserif.php @@ -0,0 +1,323 @@ +928,'Descent'=>-236,'CapHeight'=>6,'Flags'=>32,'FontBBox'=>'[-770 -347 1679 1109]','ItalicAngle'=>0,'StemV'=>70,'MissingWidth'=>600); +$up=-63; +$ut=44; +$dw=600; +$cw=array( +0=>600,32=>318,33=>402,34=>460,35=>838,36=>636,37=>950,38=>890,39=>275,40=>390, +41=>390,42=>500,43=>838,44=>318,45=>338,46=>318,47=>337,48=>636,49=>636,50=>636, +51=>636,52=>636,53=>636,54=>636,55=>636,56=>636,57=>636,58=>337,59=>337,60=>838, +61=>838,62=>838,63=>536,64=>1000,65=>722,66=>735,67=>765,68=>802,69=>730,70=>694, +71=>799,72=>872,73=>395,74=>401,75=>747,76=>664,77=>1024,78=>875,79=>820,80=>673, +81=>820,82=>753,83=>685,84=>667,85=>843,86=>722,87=>1028,88=>712,89=>660,90=>695, +91=>390,92=>337,93=>390,94=>838,95=>500,96=>500,97=>596,98=>640,99=>560,100=>640, +101=>592,102=>370,103=>640,104=>644,105=>320,106=>310,107=>606,108=>320,109=>948,110=>644, +111=>602,112=>640,113=>640,114=>478,115=>513,116=>402,117=>644,118=>565,119=>856,120=>564, +121=>565,122=>527,123=>636,124=>337,125=>636,126=>838,8364=>636,8218=>318,402=>370,8222=>518, +8230=>1000,8224=>500,8225=>500,710=>500,8240=>1342,352=>685,8249=>400,338=>1137,381=>695,8216=>318, +8217=>318,8220=>511,8221=>511,8226=>590,8211=>500,8212=>1000,732=>500,8482=>1000,353=>513,8250=>400, +339=>989,382=>527,376=>660,160=>318,161=>402,162=>636,163=>636,164=>636,165=>636,166=>337, +167=>500,168=>500,169=>1000,170=>475,171=>612,172=>838,173=>338,174=>1000,175=>500,176=>500, +177=>838,178=>401,179=>401,180=>500,181=>650,182=>636,183=>318,184=>500,185=>401,186=>470, +187=>612,188=>969,189=>969,190=>969,191=>536,192=>722,193=>722,194=>722,195=>722,196=>722, +197=>722,198=>1001,199=>765,200=>730,201=>730,202=>730,203=>730,204=>395,205=>395,206=>395, +207=>395,208=>807,209=>875,210=>820,211=>820,212=>820,213=>820,214=>820,215=>838,216=>820, +217=>843,218=>843,219=>843,220=>843,221=>660,222=>676,223=>668,224=>596,225=>596,226=>596, +227=>596,228=>596,229=>596,230=>940,231=>560,232=>592,233=>592,234=>592,235=>592,236=>320, +237=>320,238=>320,239=>320,240=>602,241=>644,242=>602,243=>602,244=>602,245=>602,246=>602, +247=>838,248=>602,249=>644,250=>644,251=>644,252=>644,253=>565,254=>640,255=>565,256=>722, +257=>596,258=>722,259=>596,260=>722,261=>596,262=>765,263=>560,264=>765,265=>560,266=>765, +267=>560,268=>765,269=>560,270=>802,271=>640,272=>807,273=>640,274=>730,275=>592,276=>730, +277=>592,278=>730,279=>592,280=>730,281=>592,282=>730,283=>592,284=>799,285=>640,286=>799, +287=>640,288=>799,289=>640,290=>799,291=>640,292=>872,293=>644,294=>872,295=>644,296=>395, +297=>320,298=>395,299=>320,300=>395,301=>320,302=>395,303=>320,304=>395,305=>320,306=>801, +307=>533,308=>401,309=>310,310=>747,311=>606,312=>606,313=>664,314=>320,315=>664,316=>320, +317=>664,318=>320,319=>664,320=>320,321=>669,322=>324,323=>875,324=>644,325=>875,326=>644, +327=>875,328=>644,329=>866,330=>843,331=>644,332=>820,333=>602,334=>820,335=>602,336=>820, +337=>602,340=>753,341=>478,342=>753,343=>478,344=>753,345=>478,346=>685,347=>513,348=>685, +349=>513,350=>685,351=>513,354=>667,355=>402,356=>667,357=>402,358=>667,359=>402,360=>843, +361=>644,362=>843,363=>644,364=>843,365=>644,366=>843,367=>644,368=>843,369=>644,370=>843, +371=>644,372=>1028,373=>856,374=>660,375=>565,377=>695,378=>527,379=>695,380=>527,383=>370, +384=>640,385=>735,386=>735,387=>640,388=>735,389=>640,390=>765,391=>765,392=>560,393=>807, +394=>802,395=>735,396=>640,397=>602,398=>730,399=>820,400=>623,401=>694,403=>799,404=>712, +405=>932,406=>395,407=>395,408=>747,409=>606,410=>320,411=>634,412=>948,413=>875,414=>644, +415=>820,416=>820,417=>602,418=>1040,419=>807,420=>673,421=>640,422=>753,423=>685,424=>513, +425=>707,426=>324,427=>402,428=>667,429=>402,430=>667,431=>843,432=>644,433=>829,434=>760, +435=>738,436=>663,437=>695,438=>527,439=>564,440=>564,441=>564,443=>636,444=>687,445=>564, +446=>536,447=>635,448=>295,449=>492,450=>459,451=>295,452=>1497,453=>1329,454=>1167,455=>1065, +456=>974,457=>630,458=>1276,459=>1185,460=>954,461=>722,462=>596,463=>395,464=>320,465=>820, +466=>602,467=>843,468=>644,469=>843,470=>644,471=>843,472=>644,473=>843,474=>644,475=>843, +476=>644,477=>592,478=>722,479=>596,480=>722,481=>596,482=>1001,483=>940,484=>848,485=>640, +486=>799,487=>640,488=>747,489=>606,490=>820,491=>602,492=>820,493=>602,494=>564,495=>564, +496=>320,497=>1497,498=>1329,499=>1167,500=>799,501=>640,502=>1154,503=>707,504=>875,505=>644, +506=>722,507=>596,508=>1001,509=>940,510=>820,511=>602,512=>722,513=>596,514=>722,515=>596, +516=>730,517=>592,518=>730,519=>592,520=>395,521=>320,522=>395,523=>320,524=>820,525=>602, +526=>820,527=>602,528=>753,529=>478,530=>753,531=>478,532=>843,533=>644,534=>843,535=>644, +536=>685,537=>513,538=>667,539=>402,540=>627,541=>521,542=>872,543=>644,544=>843,545=>814, +546=>586,547=>552,548=>695,549=>527,550=>722,551=>596,552=>730,553=>592,554=>820,555=>602, +556=>820,557=>602,558=>820,559=>602,560=>820,561=>602,562=>660,563=>565,564=>500,565=>832, +566=>494,567=>310,568=>960,569=>960,570=>722,571=>765,572=>560,573=>664,574=>667,575=>513, +576=>527,577=>583,578=>464,579=>735,580=>843,581=>722,582=>730,583=>592,584=>401,585=>315, +586=>782,587=>640,588=>753,589=>478,590=>660,591=>565,592=>596,593=>640,594=>640,595=>640, +596=>560,597=>560,598=>647,599=>683,600=>592,601=>592,602=>843,603=>518,604=>509,605=>773, +606=>613,607=>315,608=>683,609=>640,610=>544,611=>712,612=>564,613=>644,614=>644,615=>644, +616=>320,617=>392,618=>320,619=>380,620=>454,621=>363,622=>704,623=>948,624=>948,625=>948, +626=>644,627=>694,628=>646,629=>602,630=>790,631=>647,632=>602,633=>501,634=>501,635=>551, +636=>478,637=>478,638=>453,639=>453,640=>594,641=>594,642=>513,643=>271,644=>370,645=>487, +646=>324,647=>402,648=>402,649=>644,650=>620,651=>608,652=>565,653=>856,654=>565,655=>655, +656=>597,657=>560,658=>564,659=>560,660=>536,661=>536,662=>536,663=>513,664=>820,665=>563, +666=>613,667=>654,668=>667,669=>366,670=>606,671=>646,672=>683,673=>536,674=>536,675=>996, +676=>1033,677=>998,678=>809,679=>598,680=>782,681=>894,682=>646,683=>676,684=>598,685=>443, +686=>781,687=>767,688=>433,689=>430,690=>264,691=>347,692=>347,693=>430,694=>392,695=>585, +696=>423,697=>278,699=>318,700=>318,701=>318,702=>307,703=>307,704=>280,705=>281,711=>500, +712=>275,713=>500,716=>275,717=>500,720=>337,721=>337,722=>307,723=>307,726=>329,728=>500, +729=>500,730=>500,731=>500,733=>500,734=>417,736=>447,737=>243,738=>337,739=>424,740=>281, +741=>493,742=>493,743=>493,744=>493,745=>493,750=>484,768=>0,769=>0,770=>0,771=>0, +772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0, +782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0, +792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0, +802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0, +812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0, +822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0, +835=>0,847=>0,856=>0,865=>0,880=>740,881=>531,884=>278,885=>278,890=>500,891=>560, +892=>560,893=>560,894=>337,900=>500,901=>500,902=>722,903=>318,904=>900,905=>1039,906=>562, +908=>835,910=>897,911=>853,912=>392,913=>722,914=>735,915=>694,916=>722,917=>730,918=>695, +919=>872,920=>820,921=>395,922=>747,923=>722,924=>1024,925=>875,926=>704,927=>820,928=>872, +929=>673,931=>707,932=>667,933=>660,934=>820,935=>712,936=>877,937=>829,938=>395,939=>660, +940=>675,941=>518,942=>599,943=>392,944=>608,945=>675,946=>578,947=>598,948=>602,949=>518, +950=>542,951=>599,952=>602,953=>392,954=>625,955=>634,956=>650,957=>608,958=>551,959=>602, +960=>657,961=>588,962=>560,963=>683,964=>553,965=>608,966=>700,967=>606,968=>784,969=>815, +970=>392,971=>608,972=>602,973=>608,974=>815,976=>583,977=>715,978=>687,979=>874,980=>687, +981=>682,982=>815,983=>624,984=>820,985=>602,986=>765,987=>560,988=>694,989=>463,990=>590, +991=>660,992=>782,993=>577,1008=>624,1009=>588,1010=>560,1011=>310,1012=>820,1013=>560,1014=>560, +1015=>676,1016=>640,1017=>765,1018=>1024,1019=>708,1020=>588,1021=>765,1022=>765,1023=>765,1024=>730, +1025=>730,1026=>799,1027=>662,1028=>765,1029=>685,1030=>395,1031=>395,1032=>401,1033=>1084,1034=>1118, +1035=>872,1036=>774,1037=>872,1038=>723,1039=>872,1040=>757,1041=>735,1042=>735,1043=>662,1044=>813, +1045=>730,1046=>1124,1047=>623,1048=>872,1049=>872,1050=>774,1051=>834,1052=>1024,1053=>872,1054=>820, +1055=>872,1056=>673,1057=>765,1058=>667,1059=>723,1060=>830,1061=>712,1062=>872,1063=>773,1064=>1141, +1065=>1141,1066=>794,1067=>984,1068=>674,1069=>765,1070=>1193,1071=>808,1072=>596,1073=>602,1074=>563, +1075=>524,1076=>616,1077=>592,1078=>920,1079=>545,1080=>667,1081=>667,1082=>625,1083=>635,1084=>778, +1085=>667,1086=>602,1087=>667,1088=>640,1089=>560,1090=>553,1091=>588,1092=>783,1093=>564,1094=>643, +1095=>661,1096=>930,1097=>930,1098=>636,1099=>796,1100=>544,1101=>560,1102=>871,1103=>631,1104=>592, +1105=>592,1106=>624,1107=>524,1108=>560,1109=>513,1110=>320,1111=>320,1112=>310,1113=>843,1114=>860, +1115=>644,1116=>625,1117=>667,1118=>588,1119=>656,1122=>762,1123=>603,1124=>1129,1125=>834,1130=>1124, +1131=>920,1136=>944,1137=>902,1138=>820,1139=>552,1140=>859,1141=>678,1164=>707,1165=>544,1168=>672, +1169=>529,1170=>662,1171=>523,1172=>728,1173=>614,1174=>1124,1175=>920,1176=>636,1177=>537,1178=>774, +1179=>606,1182=>774,1183=>625,1184=>891,1185=>717,1186=>872,1187=>641,1188=>1139,1189=>852,1190=>1205, +1191=>941,1194=>765,1195=>560,1196=>667,1197=>553,1198=>660,1199=>565,1200=>660,1201=>565,1202=>712, +1203=>564,1204=>952,1205=>732,1206=>749,1207=>690,1210=>749,1211=>644,1216=>395,1217=>1124,1218=>920, +1219=>747,1220=>606,1223=>872,1224=>667,1227=>749,1228=>667,1231=>320,1232=>757,1233=>596,1234=>757, +1235=>596,1236=>1001,1237=>940,1238=>730,1239=>592,1240=>820,1241=>592,1242=>820,1243=>592,1244=>1124, +1245=>920,1246=>623,1247=>545,1248=>564,1249=>564,1250=>872,1251=>667,1252=>872,1253=>667,1254=>820, +1255=>602,1256=>820,1257=>602,1258=>820,1259=>602,1260=>765,1261=>560,1262=>723,1263=>588,1264=>723, +1265=>588,1266=>723,1267=>588,1268=>773,1269=>661,1270=>662,1271=>524,1272=>984,1273=>796,1296=>623, +1297=>545,1298=>834,1299=>635,1300=>1198,1301=>919,1306=>820,1307=>640,1308=>1028,1309=>856,4256=>723, +4257=>850,4258=>828,4259=>859,4260=>733,4261=>981,4262=>916,4263=>1101,4264=>566,4265=>750,4266=>962, +4267=>941,4268=>743,4269=>1075,4270=>896,4271=>829,4272=>1040,4273=>733,4274=>669,4275=>1015,4276=>937, +4277=>1020,4278=>731,4279=>733,4280=>732,4281=>733,4282=>879,4283=>937,4284=>714,4285=>755,4286=>733, +4287=>958,4288=>1000,4289=>702,4290=>864,4291=>734,4292=>837,4293=>951,4304=>541,4305=>571,4306=>589, +4307=>833,4308=>561,4309=>557,4310=>618,4311=>861,4312=>560,4313=>546,4314=>1066,4315=>586,4316=>586, +4317=>825,4318=>570,4319=>581,4320=>824,4321=>607,4322=>748,4323=>698,4324=>815,4325=>585,4326=>858, +4327=>568,4328=>594,4329=>586,4330=>675,4331=>587,4332=>582,4333=>576,4334=>612,4335=>683,4336=>572, +4337=>603,4338=>571,4339=>572,4340=>570,4341=>649,4342=>886,4343=>626,4344=>582,4345=>619,4346=>571, +4347=>437,4348=>354,7426=>940,7432=>509,7433=>320,7444=>989,7446=>602,7447=>602,7453=>737,7454=>948, +7455=>948,7468=>455,7469=>630,7470=>463,7472=>505,7473=>459,7474=>459,7475=>503,7476=>549,7477=>249, +7478=>252,7479=>470,7480=>418,7481=>645,7482=>551,7483=>551,7484=>516,7486=>424,7487=>474,7488=>420, +7489=>531,7490=>647,7491=>386,7492=>386,7493=>400,7494=>618,7495=>400,7496=>400,7497=>387,7498=>387, +7499=>340,7500=>340,7501=>400,7502=>175,7503=>365,7504=>613,7505=>399,7506=>385,7507=>346,7508=>385, +7509=>385,7510=>400,7511=>247,7512=>399,7513=>464,7514=>613,7515=>373,7522=>201,7523=>347,7524=>399, +7525=>373,7543=>640,7544=>549,7547=>372,7557=>320,7579=>400,7580=>346,7581=>346,7582=>385,7583=>340, +7584=>222,7585=>229,7586=>400,7587=>399,7588=>234,7589=>244,7590=>234,7591=>234,7592=>230,7593=>175, +7594=>175,7595=>367,7596=>613,7597=>613,7598=>407,7599=>404,7600=>399,7601=>385,7602=>385,7603=>328, +7604=>211,7605=>247,7606=>399,7607=>389,7609=>376,7610=>373,7611=>331,7612=>331,7613=>331,7614=>364, +7615=>385,7620=>0,7621=>0,7622=>0,7623=>0,7624=>0,7625=>0,7680=>722,7681=>596,7682=>735, +7683=>640,7684=>735,7685=>640,7686=>735,7687=>640,7688=>765,7689=>560,7690=>802,7691=>640,7692=>802, +7693=>640,7694=>802,7695=>640,7696=>802,7697=>640,7698=>802,7699=>640,7700=>730,7701=>592,7702=>730, +7703=>592,7704=>730,7705=>592,7706=>730,7707=>592,7708=>730,7709=>592,7710=>694,7711=>370,7712=>799, +7713=>640,7714=>872,7715=>644,7716=>872,7717=>644,7718=>872,7719=>644,7720=>872,7721=>644,7722=>872, +7723=>644,7724=>395,7725=>320,7726=>395,7727=>320,7728=>747,7729=>606,7730=>747,7731=>606,7732=>747, +7733=>606,7734=>664,7735=>320,7736=>664,7737=>320,7738=>664,7739=>320,7740=>664,7741=>320,7742=>1024, +7743=>948,7744=>1024,7745=>948,7746=>1024,7747=>948,7748=>875,7749=>644,7750=>875,7751=>644,7752=>875, +7753=>644,7754=>875,7755=>644,7756=>820,7757=>602,7758=>820,7759=>602,7760=>820,7761=>602,7762=>820, +7763=>602,7764=>673,7765=>640,7766=>673,7767=>640,7768=>753,7769=>478,7770=>753,7771=>478,7772=>753, +7773=>478,7774=>753,7775=>478,7776=>685,7777=>513,7778=>685,7779=>513,7780=>685,7781=>513,7782=>685, +7783=>521,7784=>685,7785=>513,7786=>667,7787=>402,7788=>667,7789=>402,7790=>667,7791=>402,7792=>667, +7793=>402,7794=>843,7795=>644,7796=>843,7797=>644,7798=>843,7799=>644,7800=>843,7801=>644,7802=>843, +7803=>644,7804=>722,7805=>565,7806=>722,7807=>565,7808=>1028,7809=>856,7810=>1028,7811=>856,7812=>1028, +7813=>856,7814=>1028,7815=>856,7816=>1028,7817=>856,7818=>712,7819=>564,7820=>712,7821=>564,7822=>660, +7823=>565,7824=>695,7825=>527,7826=>695,7827=>527,7828=>695,7829=>527,7830=>644,7831=>402,7832=>856, +7833=>565,7834=>903,7835=>370,7838=>829,7839=>602,7840=>722,7841=>596,7842=>722,7843=>596,7844=>722, +7845=>613,7846=>722,7847=>613,7848=>722,7849=>613,7850=>722,7851=>613,7852=>722,7853=>596,7854=>722, +7855=>596,7856=>722,7857=>596,7858=>722,7859=>596,7860=>722,7861=>596,7862=>722,7863=>596,7864=>730, +7865=>592,7866=>730,7867=>592,7868=>730,7869=>592,7870=>730,7871=>615,7872=>730,7873=>615,7874=>730, +7875=>615,7876=>730,7877=>615,7878=>730,7879=>592,7880=>395,7881=>320,7882=>395,7883=>320,7884=>820, +7885=>602,7886=>820,7887=>602,7888=>820,7889=>612,7890=>820,7891=>612,7892=>820,7893=>612,7894=>820, +7895=>612,7896=>820,7897=>602,7898=>820,7899=>602,7900=>820,7901=>602,7902=>820,7903=>602,7904=>820, +7905=>602,7906=>820,7907=>602,7908=>843,7909=>644,7910=>843,7911=>644,7912=>843,7913=>644,7914=>843, +7915=>644,7916=>843,7917=>644,7918=>843,7919=>644,7920=>843,7921=>644,7922=>660,7923=>565,7924=>660, +7925=>565,7926=>660,7927=>565,7928=>660,7929=>565,7936=>675,7937=>675,7938=>675,7939=>675,7940=>675, +7941=>675,7942=>675,7943=>675,7944=>722,7945=>722,7946=>869,7947=>869,7948=>734,7949=>763,7950=>722, +7951=>722,7952=>537,7953=>537,7954=>537,7955=>537,7956=>537,7957=>537,7960=>853,7961=>841,7962=>1067, +7963=>1077,7964=>1008,7965=>1035,7968=>599,7969=>599,7970=>599,7971=>599,7972=>599,7973=>599,7974=>599, +7975=>599,7976=>998,7977=>992,7978=>1212,7979=>1224,7980=>1159,7981=>1183,7982=>1098,7983=>1095,7984=>392, +7985=>392,7986=>392,7987=>392,7988=>392,7989=>392,7990=>392,7991=>392,7992=>521,7993=>512,7994=>735, +7995=>738,7996=>679,7997=>706,7998=>624,7999=>615,8000=>602,8001=>602,8002=>602,8003=>602,8004=>602, +8005=>602,8008=>820,8009=>859,8010=>1120,8011=>1127,8012=>937,8013=>964,8016=>608,8017=>608,8018=>608, +8019=>608,8020=>608,8021=>608,8022=>608,8023=>608,8025=>851,8027=>1079,8029=>1044,8031=>953,8032=>815, +8033=>815,8034=>815,8035=>815,8036=>815,8037=>815,8038=>815,8039=>815,8040=>829,8041=>870,8042=>1131, +8043=>1137,8044=>946,8045=>976,8046=>938,8047=>970,8048=>675,8049=>675,8050=>537,8051=>537,8052=>599, +8053=>599,8054=>392,8055=>392,8056=>602,8057=>602,8058=>608,8059=>608,8060=>815,8061=>815,8064=>675, +8065=>675,8066=>675,8067=>675,8068=>675,8069=>675,8070=>675,8071=>675,8072=>722,8073=>722,8074=>869, +8075=>869,8076=>734,8077=>763,8078=>722,8079=>722,8080=>599,8081=>599,8082=>599,8083=>599,8084=>599, +8085=>599,8086=>599,8087=>599,8088=>998,8089=>992,8090=>1212,8091=>1224,8092=>1159,8093=>1183,8094=>1098, +8095=>1095,8096=>815,8097=>815,8098=>815,8099=>815,8100=>815,8101=>815,8102=>815,8103=>815,8104=>829, +8105=>870,8106=>1131,8107=>1137,8108=>946,8109=>976,8110=>938,8111=>970,8112=>675,8113=>675,8114=>675, +8115=>675,8116=>675,8118=>675,8119=>675,8120=>722,8121=>722,8122=>722,8123=>722,8124=>722,8125=>500, +8126=>500,8127=>500,8128=>500,8129=>500,8130=>599,8131=>599,8132=>599,8134=>599,8135=>599,8136=>912, +8137=>900,8138=>1063,8139=>1039,8140=>872,8141=>500,8142=>500,8143=>500,8144=>392,8145=>392,8146=>392, +8147=>392,8150=>392,8151=>392,8152=>395,8153=>395,8154=>588,8155=>562,8157=>500,8158=>500,8159=>500, +8160=>608,8161=>608,8162=>608,8163=>608,8164=>588,8165=>588,8166=>608,8167=>608,8168=>660,8169=>660, +8170=>921,8171=>897,8172=>790,8173=>500,8174=>500,8175=>500,8178=>815,8179=>815,8180=>815,8182=>815, +8183=>815,8184=>961,8185=>835,8186=>984,8187=>853,8188=>829,8189=>500,8190=>500,8192=>500,8193=>1000, +8194=>500,8195=>1000,8196=>330,8197=>250,8198=>167,8199=>636,8200=>318,8201=>200,8202=>100,8203=>0, +8204=>0,8205=>0,8206=>0,8207=>0,8208=>338,8209=>338,8210=>636,8213=>1000,8214=>500,8215=>500, +8219=>318,8223=>511,8227=>590,8228=>334,8229=>667,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0, +8239=>200,8241=>1734,8242=>227,8243=>374,8244=>520,8245=>227,8246=>374,8247=>520,8248=>339,8252=>527, +8253=>536,8254=>500,8258=>1000,8260=>167,8261=>390,8262=>390,8263=>976,8264=>753,8265=>753,8267=>636, +8268=>500,8269=>500,8270=>500,8271=>337,8273=>500,8274=>450,8275=>1000,8279=>663,8287=>222,8288=>0, +8289=>0,8290=>0,8291=>0,8292=>0,8298=>0,8299=>0,8300=>0,8301=>0,8302=>0,8303=>0, +8304=>401,8305=>201,8308=>401,8309=>401,8310=>401,8311=>401,8312=>401,8313=>401,8314=>528,8315=>528, +8316=>528,8317=>246,8318=>246,8319=>433,8320=>401,8321=>401,8322=>401,8323=>401,8324=>401,8325=>401, +8326=>401,8327=>401,8328=>401,8329=>401,8330=>528,8331=>528,8332=>528,8333=>246,8334=>246,8336=>386, +8337=>387,8338=>385,8339=>424,8340=>387,8358=>660,8367=>1057,8369=>706,8372=>780,8373=>636,8377=>636, +8450=>796,8451=>1119,8457=>1047,8461=>945,8462=>644,8463=>644,8469=>914,8470=>946,8473=>752,8474=>871, +8477=>831,8484=>730,8486=>829,8487=>829,8490=>747,8491=>722,8508=>732,8509=>660,8510=>710,8511=>944, +8512=>714,8513=>775,8514=>557,8515=>557,8516=>611,8517=>867,8518=>699,8519=>636,8520=>380,8521=>362, +8523=>890,8528=>969,8529=>969,8530=>1370,8531=>969,8532=>969,8533=>969,8534=>969,8535=>969,8536=>969, +8537=>969,8538=>969,8539=>969,8540=>969,8541=>969,8542=>969,8543=>568,8544=>395,8545=>590,8546=>786, +8547=>966,8548=>722,8549=>981,8550=>1176,8551=>1372,8552=>932,8553=>712,8554=>932,8555=>1127,8556=>664, +8557=>765,8558=>802,8559=>1024,8560=>320,8561=>640,8562=>959,8563=>885,8564=>565,8565=>885,8566=>1205, +8567=>1524,8568=>884,8569=>564,8570=>884,8571=>1204,8572=>320,8573=>560,8574=>640,8575=>948,8576=>1206, +8577=>802,8578=>1206,8579=>765,8580=>560,8581=>765,8585=>969,8592=>838,8593=>838,8594=>838,8595=>838, +8596=>838,8597=>838,8598=>838,8599=>838,8600=>838,8601=>838,8602=>838,8603=>838,8604=>838,8605=>838, +8606=>838,8607=>838,8608=>838,8609=>838,8610=>838,8611=>838,8612=>838,8613=>838,8614=>838,8615=>838, +8616=>838,8617=>838,8618=>838,8619=>838,8620=>838,8621=>838,8622=>838,8623=>838,8624=>838,8625=>838, +8626=>838,8627=>838,8628=>838,8629=>838,8630=>838,8631=>838,8632=>838,8633=>838,8634=>838,8635=>838, +8636=>838,8637=>838,8638=>838,8639=>838,8640=>838,8641=>838,8642=>838,8643=>838,8644=>838,8645=>838, +8646=>838,8647=>838,8648=>838,8649=>838,8650=>838,8651=>838,8652=>838,8653=>838,8654=>838,8655=>838, +8656=>838,8657=>838,8658=>838,8659=>838,8660=>838,8661=>838,8662=>838,8663=>838,8664=>838,8665=>838, +8666=>838,8667=>838,8668=>838,8669=>838,8670=>838,8671=>838,8672=>838,8673=>838,8674=>838,8675=>838, +8676=>838,8677=>838,8678=>838,8679=>838,8680=>838,8681=>838,8682=>838,8683=>838,8684=>838,8685=>838, +8686=>838,8687=>838,8688=>838,8689=>838,8690=>838,8691=>838,8692=>838,8693=>838,8694=>838,8695=>838, +8696=>838,8697=>838,8698=>838,8699=>838,8700=>838,8701=>838,8702=>838,8703=>838,8704=>604,8706=>517, +8707=>542,8708=>542,8710=>698,8711=>698,8712=>740,8713=>740,8715=>740,8716=>740,8719=>796,8720=>796, +8721=>714,8722=>838,8723=>838,8724=>838,8725=>337,8727=>680,8728=>490,8729=>490,8730=>637,8731=>637, +8732=>637,8733=>677,8734=>833,8735=>838,8736=>838,8739=>291,8740=>479,8741=>462,8742=>634,8743=>732, +8744=>732,8745=>838,8746=>838,8747=>521,8748=>852,8749=>1182,8760=>838,8761=>838,8762=>838,8763=>838, +8764=>838,8765=>838,8770=>838,8771=>838,8776=>838,8784=>838,8785=>838,8786=>838,8787=>838,8788=>1033, +8789=>1033,8800=>838,8801=>838,8804=>838,8805=>838,8834=>838,8835=>838,8836=>838,8837=>838,8838=>838, +8839=>838,8844=>838,8845=>838,8846=>838,8847=>846,8848=>846,8849=>846,8850=>846,8851=>838,8852=>838, +8853=>838,8854=>838,8855=>838,8856=>838,8857=>838,8858=>838,8859=>838,8860=>838,8861=>838,8862=>838, +8863=>838,8864=>838,8865=>838,8866=>860,8867=>860,8868=>940,8869=>940,8870=>567,8871=>567,8872=>860, +8873=>860,8874=>860,8875=>1031,8876=>860,8877=>860,8878=>860,8879=>1031,8901=>342,8962=>764,8968=>390, +8969=>390,8970=>390,8971=>390,8976=>838,8977=>513,8984=>1000,8985=>838,8992=>521,8993=>521,8997=>1000, +9000=>1443,9085=>919,9115=>500,9116=>500,9117=>500,9118=>500,9119=>500,9120=>500,9121=>500,9122=>500, +9123=>500,9124=>500,9125=>500,9126=>500,9127=>750,9128=>750,9129=>750,9130=>750,9131=>750,9132=>750, +9133=>750,9134=>521,9167=>945,9251=>764,9472=>602,9473=>602,9474=>602,9475=>602,9476=>602,9477=>602, +9478=>602,9479=>602,9480=>602,9481=>602,9482=>602,9483=>602,9484=>602,9485=>602,9486=>602,9487=>602, +9488=>602,9489=>602,9490=>602,9491=>602,9492=>602,9493=>602,9494=>602,9495=>602,9496=>602,9497=>602, +9498=>602,9499=>602,9500=>602,9501=>602,9502=>602,9503=>602,9504=>602,9505=>602,9506=>602,9507=>602, +9508=>602,9509=>602,9510=>602,9511=>602,9512=>602,9513=>602,9514=>602,9515=>602,9516=>602,9517=>602, +9518=>602,9519=>602,9520=>602,9521=>602,9522=>602,9523=>602,9524=>602,9525=>602,9526=>602,9527=>602, +9528=>602,9529=>602,9530=>602,9531=>602,9532=>602,9533=>602,9534=>602,9535=>602,9536=>602,9537=>602, +9538=>602,9539=>602,9540=>602,9541=>602,9542=>602,9543=>602,9544=>602,9545=>602,9546=>602,9547=>602, +9548=>602,9549=>602,9550=>602,9551=>602,9552=>602,9553=>602,9554=>602,9555=>602,9556=>602,9557=>602, +9558=>602,9559=>602,9560=>602,9561=>602,9562=>602,9563=>602,9564=>602,9565=>602,9566=>602,9567=>602, +9568=>602,9569=>602,9570=>602,9571=>602,9572=>602,9573=>602,9574=>602,9575=>602,9576=>602,9577=>602, +9578=>602,9579=>602,9580=>602,9581=>602,9582=>602,9583=>602,9584=>602,9585=>602,9586=>602,9587=>602, +9588=>602,9589=>602,9590=>602,9591=>602,9592=>602,9593=>602,9594=>602,9595=>602,9596=>602,9597=>602, +9598=>602,9599=>602,9600=>769,9601=>769,9602=>769,9603=>769,9604=>769,9605=>769,9606=>769,9607=>769, +9608=>769,9609=>769,9610=>769,9611=>769,9612=>769,9613=>769,9614=>769,9615=>769,9616=>769,9617=>769, +9618=>769,9619=>769,9620=>769,9621=>769,9622=>769,9623=>769,9624=>769,9625=>769,9626=>769,9627=>769, +9628=>769,9629=>769,9630=>769,9631=>769,9632=>945,9633=>945,9634=>945,9635=>945,9636=>945,9637=>945, +9638=>945,9639=>945,9640=>945,9641=>945,9642=>678,9643=>678,9644=>945,9645=>945,9646=>550,9647=>550, +9648=>769,9649=>769,9650=>769,9651=>769,9652=>502,9653=>502,9654=>769,9655=>769,9656=>502,9657=>502, +9658=>769,9659=>769,9660=>769,9661=>769,9662=>502,9663=>502,9664=>769,9665=>769,9666=>502,9667=>502, +9668=>769,9669=>769,9670=>769,9671=>769,9672=>769,9673=>873,9674=>494,9675=>873,9676=>873,9677=>873, +9678=>873,9679=>873,9680=>873,9681=>873,9682=>873,9683=>873,9684=>873,9685=>873,9686=>527,9687=>527, +9688=>791,9689=>970,9690=>970,9691=>970,9692=>387,9693=>387,9694=>387,9695=>387,9696=>873,9697=>873, +9698=>769,9699=>769,9700=>769,9701=>769,9702=>590,9703=>945,9704=>945,9705=>945,9706=>945,9707=>945, +9708=>769,9709=>769,9710=>769,9711=>1119,9712=>945,9713=>945,9714=>945,9715=>945,9716=>873,9717=>873, +9718=>873,9719=>873,9720=>769,9721=>769,9722=>769,9723=>830,9724=>830,9725=>732,9726=>732,9727=>769, +9728=>896,9784=>896,9785=>896,9786=>896,9787=>896,9788=>896,9791=>614,9792=>731,9793=>731,9794=>896, +9795=>896,9796=>896,9797=>896,9798=>896,9799=>896,9824=>896,9825=>896,9826=>896,9827=>896,9828=>896, +9829=>896,9830=>896,9831=>896,9833=>472,9834=>638,9835=>896,9836=>896,9837=>472,9838=>357,9839=>484, +10145=>838,10181=>390,10182=>390,10208=>494,10216=>390,10217=>390,10224=>838,10225=>838,10226=>838,10227=>838, +10228=>1033,10229=>1434,10230=>1434,10231=>1434,10232=>1434,10233=>1434,10234=>1434,10235=>1434,10236=>1434,10237=>1434, +10238=>1434,10239=>1434,10240=>732,10241=>732,10242=>732,10243=>732,10244=>732,10245=>732,10246=>732,10247=>732, +10248=>732,10249=>732,10250=>732,10251=>732,10252=>732,10253=>732,10254=>732,10255=>732,10256=>732,10257=>732, +10258=>732,10259=>732,10260=>732,10261=>732,10262=>732,10263=>732,10264=>732,10265=>732,10266=>732,10267=>732, +10268=>732,10269=>732,10270=>732,10271=>732,10272=>732,10273=>732,10274=>732,10275=>732,10276=>732,10277=>732, +10278=>732,10279=>732,10280=>732,10281=>732,10282=>732,10283=>732,10284=>732,10285=>732,10286=>732,10287=>732, +10288=>732,10289=>732,10290=>732,10291=>732,10292=>732,10293=>732,10294=>732,10295=>732,10296=>732,10297=>732, +10298=>732,10299=>732,10300=>732,10301=>732,10302=>732,10303=>732,10304=>732,10305=>732,10306=>732,10307=>732, +10308=>732,10309=>732,10310=>732,10311=>732,10312=>732,10313=>732,10314=>732,10315=>732,10316=>732,10317=>732, +10318=>732,10319=>732,10320=>732,10321=>732,10322=>732,10323=>732,10324=>732,10325=>732,10326=>732,10327=>732, +10328=>732,10329=>732,10330=>732,10331=>732,10332=>732,10333=>732,10334=>732,10335=>732,10336=>732,10337=>732, +10338=>732,10339=>732,10340=>732,10341=>732,10342=>732,10343=>732,10344=>732,10345=>732,10346=>732,10347=>732, +10348=>732,10349=>732,10350=>732,10351=>732,10352=>732,10353=>732,10354=>732,10355=>732,10356=>732,10357=>732, +10358=>732,10359=>732,10360=>732,10361=>732,10362=>732,10363=>732,10364=>732,10365=>732,10366=>732,10367=>732, +10368=>732,10369=>732,10370=>732,10371=>732,10372=>732,10373=>732,10374=>732,10375=>732,10376=>732,10377=>732, +10378=>732,10379=>732,10380=>732,10381=>732,10382=>732,10383=>732,10384=>732,10385=>732,10386=>732,10387=>732, +10388=>732,10389=>732,10390=>732,10391=>732,10392=>732,10393=>732,10394=>732,10395=>732,10396=>732,10397=>732, +10398=>732,10399=>732,10400=>732,10401=>732,10402=>732,10403=>732,10404=>732,10405=>732,10406=>732,10407=>732, +10408=>732,10409=>732,10410=>732,10411=>732,10412=>732,10413=>732,10414=>732,10415=>732,10416=>732,10417=>732, +10418=>732,10419=>732,10420=>732,10421=>732,10422=>732,10423=>732,10424=>732,10425=>732,10426=>732,10427=>732, +10428=>732,10429=>732,10430=>732,10431=>732,10432=>732,10433=>732,10434=>732,10435=>732,10436=>732,10437=>732, +10438=>732,10439=>732,10440=>732,10441=>732,10442=>732,10443=>732,10444=>732,10445=>732,10446=>732,10447=>732, +10448=>732,10449=>732,10450=>732,10451=>732,10452=>732,10453=>732,10454=>732,10455=>732,10456=>732,10457=>732, +10458=>732,10459=>732,10460=>732,10461=>732,10462=>732,10463=>732,10464=>732,10465=>732,10466=>732,10467=>732, +10468=>732,10469=>732,10470=>732,10471=>732,10472=>732,10473=>732,10474=>732,10475=>732,10476=>732,10477=>732, +10478=>732,10479=>732,10480=>732,10481=>732,10482=>732,10483=>732,10484=>732,10485=>732,10486=>732,10487=>732, +10488=>732,10489=>732,10490=>732,10491=>732,10492=>732,10493=>732,10494=>732,10495=>732,10496=>838,10497=>838, +10498=>838,10499=>838,10500=>838,10501=>838,10502=>838,10503=>838,10504=>838,10505=>838,10506=>838,10507=>838, +10508=>838,10509=>838,10510=>838,10511=>838,10512=>838,10513=>838,10514=>838,10515=>838,10516=>838,10517=>838, +10518=>838,10519=>838,10520=>838,10521=>838,10522=>838,10523=>838,10524=>838,10525=>838,10526=>838,10527=>838, +10528=>838,10529=>838,10530=>838,10531=>838,10532=>838,10533=>838,10534=>838,10535=>838,10536=>838,10537=>838, +10538=>838,10539=>838,10540=>838,10541=>838,10542=>838,10543=>838,10544=>838,10545=>838,10546=>838,10547=>838, +10548=>838,10549=>838,10550=>838,10551=>838,10552=>838,10553=>838,10554=>838,10555=>838,10556=>838,10557=>838, +10558=>838,10559=>838,10560=>838,10561=>838,10562=>838,10563=>838,10564=>838,10565=>838,10566=>838,10567=>838, +10568=>838,10569=>838,10570=>838,10571=>838,10572=>838,10573=>838,10574=>838,10575=>838,10576=>838,10577=>838, +10578=>838,10579=>838,10580=>838,10581=>838,10582=>838,10583=>838,10584=>838,10585=>838,10586=>838,10587=>838, +10588=>838,10589=>838,10590=>838,10591=>838,10592=>838,10593=>838,10594=>838,10595=>838,10596=>838,10597=>838, +10598=>838,10599=>838,10600=>838,10601=>838,10602=>838,10603=>838,10604=>838,10605=>838,10606=>838,10607=>838, +10608=>838,10609=>838,10610=>838,10611=>838,10612=>838,10613=>838,10614=>838,10615=>981,10616=>838,10617=>838, +10618=>984,10619=>838,10620=>838,10621=>838,10622=>838,10623=>838,10731=>494,10764=>1513,10765=>521,10766=>521, +10799=>838,11008=>838,11009=>838,11010=>838,11011=>838,11012=>838,11013=>838,11014=>838,11015=>838,11016=>838, +11017=>838,11018=>838,11019=>838,11020=>838,11021=>838,11022=>838,11023=>838,11024=>838,11025=>838,11026=>945, +11027=>945,11028=>945,11029=>945,11030=>769,11031=>769,11032=>769,11033=>769,11034=>945,11364=>753,11367=>872, +11368=>644,11369=>747,11370=>606,11371=>695,11372=>527,11373=>782,11374=>1024,11375=>722,11376=>782,11377=>663, +11378=>1130,11379=>939,11381=>740,11382=>556,11383=>700,11385=>501,11386=>602,11388=>264,11389=>455,11390=>685, +11391=>695,11520=>773,11521=>635,11522=>633,11523=>658,11524=>631,11525=>962,11526=>756,11527=>960,11528=>617, +11529=>646,11530=>962,11531=>632,11532=>646,11533=>962,11534=>645,11535=>866,11536=>961,11537=>645,11538=>645, +11539=>959,11540=>945,11541=>863,11542=>644,11543=>646,11544=>645,11545=>649,11546=>688,11547=>634,11548=>982, +11549=>681,11550=>676,11551=>852,11552=>957,11553=>632,11554=>645,11555=>646,11556=>749,11557=>914,11800=>536, +11810=>390,11811=>390,11812=>390,11813=>390,11822=>536,42564=>685,42565=>513,42566=>395,42567=>392,42576=>1104, +42577=>888,42580=>1193,42581=>871,42582=>1140,42583=>899,42760=>493,42761=>493,42762=>493,42763=>493,42764=>493, +42765=>493,42766=>493,42767=>493,42768=>493,42769=>493,42770=>493,42771=>493,42772=>493,42773=>493,42774=>493, +42779=>369,42780=>369,42781=>253,42782=>253,42783=>253,42813=>819,42891=>402,42892=>275,42893=>773,62464=>654, +62465=>665,62466=>714,62467=>947,62468=>665,62469=>659,62470=>725,62471=>986,62472=>665,62473=>665,62474=>1257, +62475=>683,62476=>682,62477=>953,62478=>665,62479=>682,62480=>999,62481=>746,62482=>798,62483=>748,62484=>944, +62485=>681,62486=>936,62487=>680,62488=>688,62489=>682,62490=>729,62491=>682,62492=>688,62493=>666,62494=>729, +62495=>884,62496=>665,62497=>706,62498=>666,62499=>665,62500=>665,62501=>722,62502=>961,62504=>904,63173=>602, +63185=>500,63188=>500,64256=>710,64257=>667,64258=>667,64259=>1028,64260=>1030,64261=>771,64262=>933,65024=>0, +65025=>0,65026=>0,65027=>0,65028=>0,65029=>0,65030=>0,65031=>0,65032=>0,65033=>0,65034=>0, +65035=>0,65036=>0,65037=>0,65038=>0,65039=>0,65529=>0,65530=>0,65531=>0,65532=>0,65533=>1025); +$enc=''; +$diff=''; +$file='dejavuserif.z'; +$ctg='dejavuserif.ctg.z'; +$originalsize=337444; +// --- EOF --- \ No newline at end of file diff --git a/libraries/tcpdf/fonts/dejavuserif.z b/libraries/tcpdf/fonts/dejavuserif.z new file mode 100644 index 0000000000000000000000000000000000000000..d69714476910de75c9d0c5c0fefcd6ace889676e GIT binary patch literal 185864 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